If I use your SCC function, or if I take the marginal damages from the “marignal model” used for that SCC estimate and discount them, I get results that differ by ~ $2. In this case I’m just using what I think is the equation you use to calculate discount factors. Perhaps I’m missing something basic here, but shouldn’t these give the same results?
Here’s some replication code:
using MimiDICE2013
# DICE model years.
model_years = 2010:5:2305
# Emission pulse year and index.
year = 2020
year_index = findfirst(isequal(year), model_years)
# Last model year.
last_year = 2305
# Discounting stuff using Mimi discounting code.
eta = 0.0
prtp = 0.03
cpc = ones(60)
df = [zeros(year_index-1)..., ((cpc[year_index]/cpc[i])^eta * 1/(1+prtp)^(t-year) for (i,t) in enumerate(model_years) if year<=t<=last_year)...]
# SCC from function.
scc, marginal_model = MimiDICE2013.compute_scc_mm(year=pulse_year, last_year=2305, prtp=0.03, eta=0.0)
# Calculated marginal damages.
marginal_damages = marginal_model[:damages, :DAMAGES]
# SCC from these marginal damages.
other_scc = sum(marginal_damages .* df) * 5 * 1e12