The 47_regipol module includes region specific policies.
The regiCarbonPrice realization allows to determine region specific year or budget targets for CO2 or GHG emissions. It overwrites all other carbon prices for selected regions (for example those implemented by 45_carbonprice or 46_carbonpriceRegi).
Interface plot missing!
| Description | Unit | A | B | |
|---|---|---|---|---|
| cm_deuCDRmax | switch to limit maximum annual CDR amount in Germany in MtCO2 per y | x | x | |
| cm_emiMktTargetDelay | number of years for delayed price change in the emission tax convergence algorithm. Not applied to first target set. | x | ||
| cm_EnSecScen_limit | switch for limiting the gas demand from 2025 onward, currently only applied to Germany | x | ||
| cm_noPeFosCCDeu | switch to suppress Pe2Se Fossil Carbon Capture in Germany | x | x | |
| cm_postTargetIncrease | carbon price increase per year after regipol emission target is reached (euro per tCO2) | x | ||
| cm_startyear | first optimized modelling time step | \(year\) | x | |
| pm_cf (tall, all_regi, all_te) |
Installed capacity availability - capacity factor (fraction of the year that a plant is running) | x | x | |
| pm_conv_TWa_EJ | conversion from TWa to EJ | x | ||
| pm_data (all_regi, char, all_te) |
Large array for most technical parameters of technologies; more detail on the individual technical parameters can be found in the declaration of the set ‘char’ | x | ||
| pm_delta_histCap (tall, all_regi, all_te) |
parameter to store data of historic capacity additions | \(TW/yr\) | x | x |
| pm_emifac (tall, all_regi, all_enty, all_enty, all_te, all_enty) |
emission factor by technology for all types of emissions in emiTe | x | x | |
| pm_eta_conv (tall, all_regi, all_te) |
Time-dependent eta for technologies that do not have explicit time-dependant etas, still eta converges until 2050 to dataglob_values. | \(efficiency (0..1)\) | x | |
| pm_FEPrice_by_SE_Sector (ttot, all_regi, entySe, all_enty, sector) |
parameter to save FE marginal price per SE and sector (tr$2005/TWa) | x | ||
| pm_histCap (tall, all_regi, all_te) |
historical installed capacity | x | ||
| pm_inco0_t (ttot, all_regi, all_te) |
New inco0 that is time-dependent for some technologies. | \(T\$/TW\) | x | |
| pm_IndstCO2Captured (ttot, all_regi, all_enty, all_enty, secInd37, all_emiMkt) |
Captured CO2 in industry by energy carrier, subsector and emissions market | x | ||
| pm_macBaseMagpie (tall, all_regi, all_enty) |
baseline emissions from MAgPIE (type emiMacMagpie) | x | ||
| pm_PEPrice (ttot, all_regi, all_enty) |
parameter to capture all PE prices (tr$2005/TWa) | x | ||
| pm_share_CCS_CCO2 (ttot, all_regi) |
share of stored CO2 from total captured CO2 | x | ||
| pm_shareWindOff (ttot, all_regi) |
windoff rollout as a fraction of technical potential | x | ||
| pm_shareWindPotentialOff2On (all_regi) |
ratio of technical potential of windoff to windon | x | ||
| pm_tau_ces_tax (ttot, all_regi, all_in) |
ces production tax to implement CES mark-up cost in a budget-neutral way | x | ||
| pm_tau_pe_tax (ttot, all_regi, all_enty) |
pe tax path | x | ||
| pm_taxCO2eq (ttot, all_regi) |
CO2 tax path in T$/GtC = $/kgC. To get $/tCO2, multiply with 272 | \(T\$/GtC\) | x | |
| pm_taxCO2eqHist (ttot, all_regi) |
Historic CO2 tax path in 2010 and 2015 (also in BAU!) in T$/GtC = $/kgC. To get $/tCO2, multiply with 272 | \(T\$/GtC\) | x | |
| pm_taxCO2eqRegi (tall, all_regi) |
additional regional CO2 tax path in T$/GtC = $/kgC. To get $/tCO2, multiply with 272 | \(T\$/GtC\) | x | |
| pm_taxCO2eqSCC (ttot, all_regi) |
carbon tax component due to damages (social cost of carbon) | x | ||
| pm_taxCO2eqSum (tall, all_regi) |
sum of pm_taxCO2eq, pm_taxCO2eqRegi, pm_taxCO2eqHist, pm_taxCO2eqSCC in T$/GtC = $/kgC. To get $/tCO2, multiply with 272 | \(T\$/GtC\) | x | |
| pm_taxemiMkt (ttot, all_regi, all_emiMkt) |
CO2 or CO2eq region and emission market specific emission tax | x | ||
| pm_taxemiMkt_iteration (iteration, ttot, all_regi, all_emiMkt) |
CO2 or CO2eq region and emission market specific emission tax per iteration | x | ||
| pm_taxrevCO2LUC0 (ttot, all_regi) |
reference level value of co2luc emission tax | x | ||
| pm_taxrevCO2Sector0 (ttot, all_regi, emi_sectors) |
reference level value of CO2 sector markup tax | x | ||
| pm_taxrevGHG0 (ttot, all_regi) |
reference level value of GHG emission tax | x | ||
| pm_taxrevNetNegEmi0 (ttot, all_regi) |
reference level value of net-negative emissions tax | x | ||
| pm_ts (tall) |
(t_n+1 - t_n-1)/2 for a timestep t_n | x | ||
| pm_ttot_val (ttot) |
value of ttot set element | x | ||
| sm_c_2_co2 | conversion from c to co2 | x | x | |
| sm_DpGJ_2_TDpTWa | multipl. factor to convert (Dollar per GJoule) to (TerraDollar per TWyear) | x | ||
| sm_DptCO2_2_TDpGtC | Conversion multiplier to go from \(/tCO2 to T\)/GtC: 44/12/1000 | x | ||
| sm_tgch4_2_pgc | conversion factor 100-yr GWP from TgCH4 to PgCeq | x | ||
| sm_tgn_2_pgc | conversion factor 100-yr GWP from TgN to PgCeq | x | ||
| vm_cap (tall, all_regi, all_te, rlf) |
net total capacities | x | ||
| vm_capEarlyReti (tall, all_regi, all_te) |
fraction of early retired capital | x | x | |
| vm_capFac (ttot, all_regi, all_te) |
capacity factor of conversion technologies | x | ||
| vm_capTotal (ttot, all_regi, all_enty, all_enty) |
total capacity without technology differentation for technologies where there exists differentation | \(TW\) | x | |
| vm_cesIO (tall, all_regi, all_in) |
Production factor | x | ||
| vm_co2CCS (ttot, all_regi, all_enty, all_enty, all_te, rlf) |
all differenct ccs. | \(GtC/a\) | x | x |
| vm_co2eqMkt (ttot, all_regi, all_emiMkt) |
total emissions per market measured in co2 equivalents ATTENTION: content depends on multigasscen. | \(GtCeq\) | x | |
| vm_deltaCap (tall, all_regi, all_te, rlf) |
capacity additions | x | x | |
| vm_demFeSector (ttot, all_regi, all_enty, all_enty, emi_sectors, all_emiMkt) |
fe demand per sector and emission market. Taxes should be applied to this variable or variables closer to the supply side whenever possible so the marginal prices include the tax effects. | \(TWa\) | x | |
| vm_demPe (tall, all_regi, all_enty, all_enty, all_te) |
pe demand. | \(TWa, Uranium: Mt Ur\) | x | |
| vm_demSe (ttot, all_regi, all_enty, all_enty, all_te) |
se demand. | \(TWa\) | x | |
| vm_emiAllMkt (tall, all_regi, all_enty, all_emiMkt) |
total regional emissions for each emission market. | \(GtC, Mt CH4, Mt N\) | x | |
| vm_emiCdr (ttot, all_regi, all_enty) |
total (negative) emissions due to CDR technologies of each region. | \(GtC\) | x | |
| vm_emiCdrAll (ttot, all_regi) |
all CDR emissions | x | x | |
| vm_emiFgas (ttot, all_regi, all_enty) |
F-gas emissions by single gases from IMAGE | x | ||
| vm_emiMacSector (ttot, all_regi, all_enty) |
total non-energy-related emission of each region. | \(GtC, Mt CH4, Mt N\) | x | |
| vm_emiTeDetail (ttot, all_regi, all_enty, all_enty, all_te, all_enty) |
energy-related emissions per region and technology | x | x | |
| vm_emiTeDetailMkt (tall, all_regi, all_enty, all_enty, all_te, all_enty, all_emiMkt) |
emissions from fuel combustion per region, technology and emission market. | \(GtC, Mt CH4, Mt N\) | x | |
| vm_emiTeMkt (tall, all_regi, all_enty, all_emiMkt) |
total energy-emissions of each region and emission market. | \(GtC, Mt CH4, Mt N\) | x | |
| vm_prodPe (ttot, all_regi, all_enty) |
pe production. | \(TWa, Uranium: Mt Ur\) | x | |
| vm_shSeEl (ttot, all_regi, all_te) |
new share of electricity production in % | \(\%\) | x | |
| vm_taxrevimplicitPePriceTax (ttot, all_regi, all_enty) |
primary energy price target implemented through implict tax | x | ||
| vm_taxrevimplicitPriceTax (ttot, all_regi, entySe, all_enty, sector) |
final energy price target implemented through implict tax | x | ||
| vm_taxrevimplicitQttyTargetTax (ttot, all_regi) |
quantity target bound implemented through implict tax | x |
| Description | Unit | |
|---|---|---|
| pm_emiMktCurrent (ttot, ttot2, ext_regi, emiMktExt) |
previous iteration region emissions (from year ttot to ttot2 for budget) | \(GtCO2 or GtCO2eq\) |
| pm_emiMktRefYear (ttot, ttot2, ext_regi, emiMktExt) |
emissions in reference year 2015, used for calculating target deviation of year targets | \(GtCO2 or GtCO2eq\) |
| pm_emiMktTarget (ttot, ttot2, ext_regi, emiMktExt, target_type_47, emi_type_47) |
region emissions target | \(GtCO2 or GtCO2eq\) |
| pm_emiMktTarget_dev (ttot, ttot2, ext_regi, emiMktExt) |
target deviation across iterations in current emissions divided by target emissions | |
| pm_emiMktTarget_dev_iter (iteration, ttot, ttot2, ext_regi, emiMktExt) |
parameter to save pm_emiMktTarget_dev across iterations | \(\%\) |
| pm_exogDemScen (ttot, all_regi, exogDemScen, all_in) |
Exogenous demand trajectories to fix CES function to specific quantity trajectories | |
| pm_factorRescaleemiMktCO2Tax (ttot, ttot2, ext_regi, emiMktExt) |
multiplicative tax rescale factor that rescales emiMkt carbon price from iteration to iteration to reach regipol targets | \(\%\) |
| pm_implicitPePrice_ignConv (all_regi, all_enty, ttot) |
auxiliary parameter to store the price targets that were ignored in the convergence check (cases: 1 = non existent price, 2 = no change in prices for the last 3 iterations) | \(#\) |
| pm_implicitPePrice_NotConv (all_regi, all_enty, ttot) |
auxiliary parameter to store the price targets that did not converged | \(\%\) |
| pm_implicitPePriceTarget (ttot, all_regi, all_enty) |
price target for PE carrier per sector | \(2005 TerraDollar/TWyear\) |
| pm_implicitPrice_ignConv (all_regi, sector, all_enty, entySe, ttot) |
auxiliary parameter to store the price targets that were ignored in the convergence check (cases: 1 = non existent price, 2 = no change in prices for the last 3 iterations) | \(#\) |
| pm_implicitPrice_NotConv (all_regi, sector, all_enty, entySe, ttot) |
auxiliary parameter to store the price targets that did not converged | \(\%\) |
| pm_implicitPriceTarget (ttot, all_regi, all_enty, entySe, sector) |
price target for FE carrier per sector | \(2005 TerraDollar/TWyear\) |
| pm_implicitQttyTarget (ttot, ext_regi, taxType, targetType, qttyTarget, qttyTargetGroup) |
quantity target | \(absolute: TWa or GtC; or percentage: 0.1\) |
| pm_implicitQttyTarget_dev (ttot, ext_regi, qttyTarget, qttyTargetGroup) |
deviation of current iteration quantity target from target - relative for total targets, absolute (= share points) for share targets | |
| pm_implicitQttyTarget_isLimited (iteration, qttyTarget, qttyTargetGroup) |
1 (one) if there is a hard bound on the model that does not allow the tax to change further the quantity |
Limitations There are no known limitations.
The regiCarbonPrice realization allow to determine region specific year or budget targets for CO2 or GHG emissions.
This allows to determine regions with more (or less) stringent carbon policies than the World targets.
Ex.: EU emission targets are tipically more stringent than other World regions.
RP: improve formatting of output: always have the iteration separate to allow easy comparison over iterations. For non-iteration values show time and regi down, and the other two sets to the right RP: improve formatting of output: always have the iteration separate to allow easy comparison over iterations. For non-iteration values show time and regi down, and the other two sets to the right Emission quantity target
p47_VREminShare(ttot,ext_regi) "per region minimun share of variable renewables (wind and solar) in electricity. Applied to yaers greater or equal to ttot. Unit [0..1]" / %cm_VREminShare% /
;
RP: improve formatting of output: always have the iteration separate to allow easy comparison over iterations. For non-iteration values show time and regi down, and the other two sets to the right
Implicit tax/subsidy necessary to achieve quantity target for primary, secondary, final energy and/or CCS
\[\begin{multline*} vm\_taxrevimplicitQttyTargetTax(t,regi) = \sum_{\left(qttyTarget,qttyTargetGroup\right)\$p47\_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup)}\left( \left( p47\_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) \cdot \sum_{entyPe\$energyQttyTargetANDGroup2enty(qttyTarget,qttyTargetGroup,entyPe)}\left( \sum_{pe2se(entyPe,entySe,te)} vm\_demPe(t,regi,entyPe,entySe,te)\right) \right)\$sameas(qttyTarget,"PE") + \left( p47\_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) \cdot \sum_{entySe\$energyQttyTargetANDGroup2enty(qttyTarget,qttyTargetGroup,entySe)}\left( \sum_{se2fe(entySe,entyFe,te)} vm\_demSe(t,regi,entySe,entyFe,te)\right) \right)\$sameas(qttyTarget,"SE") + \left( p47\_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) \cdot \sum_{entySe\$energyQttyTargetANDGroup2enty("FE",qttyTargetGroup,entySe)}\left( \sum_{se2fe(entySe,entyFe,te)}\left( \sum_{\left(sector,emiMkt\right)\$\left(entyFe2Sector(entyFe,sector) \& sector2emiMkt(sector,emiMkt)\right)} vm\_demFeSector(t,regi,entySe,entyFe,sector,emiMkt)\right)\right) \right)\$\left(sameas(qttyTarget,"FE") or sameas(qttyTarget,"FE\_wo\_b") or sameas(qttyTarget,"FE\_wo\_n\_e") or sameas(qttyTarget,"FE\_wo\_b\_wo\_n\_e")\right) + \left( p47\_implicitQttyTargetTax(t,regi,qttyTarget,qttyTargetGroup) \cdot \sum_{ccs2te\left(ccsCO2(enty),enty2,te\right)}\left( \sum_{teCCS2rlf(te,rlf)}vm\_co2CCS(t,regi,enty,enty2,te,rlf)\right) \right)\$sameas(qttyTarget,"CCS") \right) - p47\_implicitQttyTargetTax0(t,regi) \end{multline*}\]
\[\begin{multline*} vm\_taxrevimplicitPriceTax(t,regi,entySe,entyFe,sector) = \left( p47\_implicitPriceTax(t,regi,entyFe,entySe,sector) \cdot \sum\left(emiMkt\$sector2emiMkt(sector,emiMkt), vm\_demFeSector(t,regi,entySe,entyFe,sector,emiMkt)\right) \right) - p47\_implicitPriceTax0(t,regi,entyFe,entySe,sector) \end{multline*}\]
\[\begin{multline*} vm\_taxrevimplicitPePriceTax(t,regi,entyPe) = \left( p47\_implicitPePriceTax(t,regi,entyPe) \cdot vm\_prodPe(t,regi,entyPe) \right) - p47\_implicitPePriceTax0(t,regi,entyPe) \end{multline*}\]
Emission quantity target
\[\begin{multline*} \sum_{emiMkt}\left( \sum_{emiMkt\$emiMktGroup(emiMktExt,emiMkt)} vm\_emiAllMkt(t,regi,"co2",emiMkt) - \left( \sum_{se2fe(enty,enty2,te)}\left( pm\_emifac(t,regi,enty,enty2,te,"co2") \cdot vm\_demFeSector(t,regi,enty,enty2,"trans","other") \right) \right)\$\left(sameas(emiMktExt,"other") or sameas(emiMktExt,"all")\right) \right) \leq \frac{ p47\_quantity\_regiCO2target(t,ext\_regi)}{sm\_c\_2\_co2 } \end{multline*}\]
\[\begin{multline*} v47\_VREshare(ttot,regi) \geq \sum_{teVRE} vm\_shSeEl(ttot,regi,teVRE) \end{multline*}\]
\[\begin{multline*} \sum_{ccs2te\left(ccsCO2(enty),enty2,te\right)}\left( \sum_{teCCS2rlf(te,rlf)}vm\_co2CCS(t,regi,enty,enty2,te,rlf)\right) \leq p47\_CCSmaxBound(regi) \end{multline*}\]
;
put_utility "msg" / "reducing p47_implicitQttyTargetTaxRescale due to oscillation in the previous 3 iterations:";
Limitations There are no known limitations.
| Description | Unit | A | |
|---|---|---|---|
| f47_implicitPePriceTarget (pePriceScenario, ext_regi, all_enty, ttot) |
exogenously defined Pe price targets | \(2005 Dollar/GJoule\) | |
| f47_implicitPriceTarget (fePriceScenario, ext_regi, all_enty, entySe, sector, ttot) |
exogenously defined FE price targets | \(2005 Dollar/GJoule\) | |
| p47_allTargetsConverged (ext_regi) |
boolean to store if all emission targets converged at least once | \(0 or 1\) | |
| p47_allTargetsConverged_iter (iteration, ext_regi) |
parameter to save p47_allTargetsConverged across iterations | \(0 or 1\) | |
| p47_averagetaxemiMkt (ttot, all_regi) |
auxiliar parameter to store the weighted average convergence price between the current target terminal year and the next target year. Only applied for target years different than p47_lastTargetYear | ||
| p47_CCSmaxBound (all_regi) |
per region yearly maximum CCS. Unit[Gt C] | ||
| p47_currentConvergencePeriod (ext_regi) |
auxiliar parameter to store the current target year being executed by the convergence algorithm | \(year\) | |
| p47_EmiLULUCFCountryAcc (tall, all_regi) |
historic co2 emissions from landuse change based on country accounting | \(Mt CO2/yr\) | |
| p47_emiMktCurrent_iter (iteration, ttot, ttot2, ext_regi, emiMktExt) |
parameter to save pm_emiMktCurrent across iterations | \(GtCO2 or GtCO2eq\) | |
| p47_emiTarget_grossEnCO2_noBunkers_iter (iteration, ttot, all_regi) |
parameter to save value of gross energy emissions target over iterations to check whether values converge | ||
| p47_emiTargetMkt (ttot, all_regi, emiMktExt, emi_type_47) |
CO2 or GHG Emissions per emission market used for target level | \(GtC\) | |
| p47_exoCo2tax (ext_regi, ttot) |
Exogenous CO2 tax level. Overrides carbon prices in pm_taxCO2eq, only if explicitly defined. Regions and region groups allowed. Format: ‘ |
\(\$/tCO2\) | |
| p47_factorRescaleemiMktCO2Tax_iter (iteration, ttot, ttot2, ext_regi, emiMktExt) |
parameter to save rescale factor across iterations for debugging purposes | \(\%\) | |
| p47_factorRescaleSlope (ttot, ttot2, ext_regi, emiMktExt) |
auxiliar parameter to save the slope corresponding to the observed mitigation derivative regarding to co2tax level changes from the two previous iterations | \(#\) | |
| p47_factorRescaleSlope_iter (iteration, ttot, ttot2, ext_regi, emiMktExt) |
parameter to save mitigation curve slope across iterations | \(#\) | |
| p47_firstTargetYear (ext_regi) |
first year with a pre defined policy emission target in the region | \(year\) | |
| p47_implicitPePrice_dev (ttot, all_regi, all_enty) |
implicit price tax deviation of current iteration from target | \(\%\) | |
| p47_implicitPePrice_dev_iter (iteration, ttot, all_regi, all_enty) |
implicit price tax deviation of current iteration from target per iteration | \(\%\) | |
| p47_implicitPePriceTarget_initialYear (all_regi, all_enty) |
initial year of price target for given region and energy carrier | \(year\) | |
| p47_implicitPePriceTarget_terminalYear (all_regi, all_enty) |
terminal year of price target for given region and energy carrier | \(year\) | |
| p47_implicitPePriceTax (ttot, all_regi, all_enty) |
tax/subsidy level on PE for reaching the price target | \(2005 TerraDollar/TWyear\) | |
| p47_implicitPePriceTax_iter (iteration, ttot, all_regi, all_enty) |
tax/subsidy level on PE for reaching the price target per iteration | \(2005 TerraDollar/TWyear\) | |
| p47_implicitPePriceTax0 (ttot, all_regi, all_enty) |
previous iteration implicit price target tax revenue | \(2005 TerraDollar\) | |
| p47_implicitPrice_dev (ttot, all_regi, all_enty, entySe, sector) |
implicit price tax deviation of current iteration from target | \(\%\) | |
| p47_implicitPrice_dev_iter (iteration, ttot, all_regi, all_enty, entySe, sector) |
implicit price tax deviation of current iteration from target per iteration | \(\%\) | |
| p47_implicitPriceTarget_initialYear (all_regi, all_enty, entySe, sector) |
initial year of price target for given region and energy carrier | \(year\) | |
| p47_implicitPriceTarget_terminalYear (all_regi, all_enty, entySe, sector) |
terminal year of price target for given region and energy carrier | \(year\) | |
| p47_implicitPriceTax (ttot, all_regi, all_enty, entySe, sector) |
tax/subsidy level on FE for reaching the price target | \(2005 TerraDollar/TWyear\) | |
| p47_implicitPriceTax_iter (iteration, ttot, all_regi, all_enty, entySe, sector) |
tax/subsidy level on FE for reaching the price target per iteration | \(2005 TerraDollar/TWyear\) | |
| p47_implicitPriceTax0 (ttot, all_regi, all_enty, entySe, sector) |
previous iteration implicit price target tax revenue | \(2005 TerraDollar\) | |
| p47_implicitQttyTarget_dev_iter (iteration, ttot, ext_regi, qttyTarget, qttyTargetGroup) |
deviation of current iteration quantity from target after the given iteration | ||
| p47_implicitQttyTarget_initialYear (ext_regi, taxType, targetType, qttyTarget, qttyTargetGroup) |
initial year of quantity target for a given region | \(year\) | |
| p47_implicitQttyTargetCurrent (ttot, ext_regi, qttyTarget, qttyTargetGroup) |
current iteration total value for an specific quantity target | ||
| p47_implicitQttyTargetCurrent_iter (iteration, ttot, ext_regi, qttyTarget, qttyTargetGroup) |
current iteration total value for an specific quantity target per iteration | ||
| p47_implicitQttyTargetTax (ttot, all_regi, qttyTarget, qttyTargetGroup) |
tax/subsidy level necessary to achieve a quantity target | ||
| p47_implicitQttyTargetTax_iter (iteration, ttot, all_regi, qttyTarget, qttyTargetGroup) |
tax/subsidy level to achieve a quantity target that the model saw in a given iteration | ||
| p47_implicitQttyTargetTax_prevIter (ttot, all_regi, qttyTarget, qttyTargetGroup) |
previous iteration quantity target tax | ||
| p47_implicitQttyTargetTax0 (ttot, all_regi) |
previous iteration quantity target tax revenue | ||
| p47_implicitQttyTargetTaxRescale (ttot, ext_regi, qttyTarget, qttyTargetGroup) |
rescale factor for current implicit quantity target tax | ||
| p47_implicitQttyTargetTaxRescale_iter (iteration, ttot, ext_regi, qttyTarget, qttyTargetGroup) |
rescale factor for current implicit quantity target tax after the given iteration | ||
| p47_lastTargetYear (ext_regi) |
last year with a pre defined policy emission target in the region | \(year\) | |
| p47_LULUCFEmi_GrassiShift (ttot, all_regi) |
difference between Magpie land-use change emissions and UNFCCC emissions in 2015 to correct for national accounting in emissions targets | ||
| p47_nextConvergencePeriod (ext_regi) |
auxiliar parameter to store the next target year being executed by the convergence algorithm | \(year\) | |
| p47_nonEnergyUse (ttot, ext_regi) |
non-energy use | ||
| p47_quantity_regiCO2target (ttot, ext_regi) |
Exogenously emissions quantity constrain on net CO2 without bunkers | \(GtCO2\) | |
| p47_targetConverged (ttot, ext_regi) |
boolean to store if emission target has converged | \(0 or 1\) | |
| p47_targetConverged_iter (iteration, ttot, ext_regi) |
parameter to save p47_targetConverged across iterations | \(0 or 1\) | |
| p47_taxCO2eq_AggEmi (ttot, all_regi) |
CO2eq global and regional aggregated emission taxes (aggregated by emissions) | ||
| p47_taxCO2eq_AggFE (ttot, all_regi) |
CO2eq global and regional aggregated emission taxes (aggregated by final energy) | ||
| p47_taxCO2eq_ref (ttot, all_regi) |
CO2eq prices loaded from ref gdx, in T$/GtC = $/kgC. To get $/tCO2, multiply with 272 | \(T\$/GtC\) | |
| p47_taxCO2eq_SectorAggFE (ttot, all_regi, sector) |
CO2eq global and regional aggregated sectoral emission taxes (aggregated by final energy) | ||
| p47_taxemiMkt_AggEmi (ttot, all_regi) |
CO2eq regional aggregated emission tax (aggregated by emissions) | ||
| p47_taxemiMkt_AggFE (ttot, all_regi) |
CO2eq regional aggregated emission tax (aggregated by final energy) | ||
| p47_taxemiMkt_init (ttot, all_regi, emiMkt) |
emiMkt CO2eq prices loaded from ref gdx, in T$/GtC = $/kgC. To get $/tCO2, multiply with 272 | \(T\$/GtC\) | |
| p47_taxemiMkt_SectorAggFE (ttot, all_regi, sector) |
CO2eq regional aggregated sectoral emission tax (aggregated by final energy) | ||
| p47_VREminShare (ttot, ext_regi) |
per region minimun share of variable renewables (wind and solar) in electricity. Applied to yaers greater or equal to ttot. Unit | \(0..1\) | |
| q47_CCSmaxBound (ttot, all_regi) |
per region yearly maximum CCS | ||
| q47_implicitPePriceTax (ttot, all_regi, all_enty) |
implicit tax/subsidy PE tax to reach target energy sector sectoral price | ||
| q47_implicitPriceTax (ttot, all_regi, all_enty, entySe, sector) |
implicit tax/subsidy FE tax to reach target energy sector sectoral price | ||
| q47_implicitQttyTargetTax (ttot, all_regi) |
implicit quantity target tax (PE, SE, FE and/or FE CCS) to represent non CO2-price-driven policies or exogenously defined quantity constraint scenarios | ||
| q47_quantity_regiCO2target (ttot, ext_regi) |
Exogenously emissions quantity constrain on net CO2 without bunkers | \(GtC\) | |
| q47_VREShare (ttot, all_regi) |
per region minimun share of variable renewables (wind and solar) from ttot year onward | ||
| s47_firstFreeYear | value of first free year for the carbon price trajectory | ||
| s47_prefreeYear | value of the last non-free year for the carbon price trajectory | ||
| v47_VREshare (ttot, all_regi) |
share of variable renewables (wind and solar) in electricity |
| B | |
|---|---|
| f47_implicitPePriceTarget (pePriceScenario, ext_regi, all_enty, ttot) |
x |
| f47_implicitPriceTarget (fePriceScenario, ext_regi, all_enty, entySe, sector, ttot) |
x |
| p47_allTargetsConverged (ext_regi) |
x |
| p47_allTargetsConverged_iter (iteration, ext_regi) |
x |
| p47_averagetaxemiMkt (ttot, all_regi) |
x |
| p47_CCSmaxBound (all_regi) |
x |
| p47_currentConvergencePeriod (ext_regi) |
x |
| p47_EmiLULUCFCountryAcc (tall, all_regi) |
x |
| p47_emiMktCurrent_iter (iteration, ttot, ttot2, ext_regi, emiMktExt) |
x |
| p47_emiTarget_grossEnCO2_noBunkers_iter (iteration, ttot, all_regi) |
x |
| p47_emiTargetMkt (ttot, all_regi, emiMktExt, emi_type_47) |
x |
| p47_exoCo2tax (ext_regi, ttot) |
x |
| p47_factorRescaleemiMktCO2Tax_iter (iteration, ttot, ttot2, ext_regi, emiMktExt) |
x |
| p47_factorRescaleSlope (ttot, ttot2, ext_regi, emiMktExt) |
x |
| p47_factorRescaleSlope_iter (iteration, ttot, ttot2, ext_regi, emiMktExt) |
x |
| p47_firstTargetYear (ext_regi) |
x |
| p47_implicitPePrice_dev (ttot, all_regi, all_enty) |
x |
| p47_implicitPePrice_dev_iter (iteration, ttot, all_regi, all_enty) |
x |
| p47_implicitPePriceTarget_initialYear (all_regi, all_enty) |
x |
| p47_implicitPePriceTarget_terminalYear (all_regi, all_enty) |
x |
| p47_implicitPePriceTax (ttot, all_regi, all_enty) |
x |
| p47_implicitPePriceTax_iter (iteration, ttot, all_regi, all_enty) |
x |
| p47_implicitPePriceTax0 (ttot, all_regi, all_enty) |
x |
| p47_implicitPrice_dev (ttot, all_regi, all_enty, entySe, sector) |
x |
| p47_implicitPrice_dev_iter (iteration, ttot, all_regi, all_enty, entySe, sector) |
x |
| p47_implicitPriceTarget_initialYear (all_regi, all_enty, entySe, sector) |
x |
| p47_implicitPriceTarget_terminalYear (all_regi, all_enty, entySe, sector) |
x |
| p47_implicitPriceTax (ttot, all_regi, all_enty, entySe, sector) |
x |
| p47_implicitPriceTax_iter (iteration, ttot, all_regi, all_enty, entySe, sector) |
x |
| p47_implicitPriceTax0 (ttot, all_regi, all_enty, entySe, sector) |
x |
| p47_implicitQttyTarget_dev_iter (iteration, ttot, ext_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTarget_initialYear (ext_regi, taxType, targetType, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTargetCurrent (ttot, ext_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTargetCurrent_iter (iteration, ttot, ext_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTargetTax (ttot, all_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTargetTax_iter (iteration, ttot, all_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTargetTax_prevIter (ttot, all_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTargetTax0 (ttot, all_regi) |
x |
| p47_implicitQttyTargetTaxRescale (ttot, ext_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_implicitQttyTargetTaxRescale_iter (iteration, ttot, ext_regi, qttyTarget, qttyTargetGroup) |
x |
| p47_lastTargetYear (ext_regi) |
x |
| p47_LULUCFEmi_GrassiShift (ttot, all_regi) |
x |
| p47_nextConvergencePeriod (ext_regi) |
x |
| p47_nonEnergyUse (ttot, ext_regi) |
x |
| p47_quantity_regiCO2target (ttot, ext_regi) |
x |
| p47_targetConverged (ttot, ext_regi) |
x |
| p47_targetConverged_iter (iteration, ttot, ext_regi) |
x |
| p47_taxCO2eq_AggEmi (ttot, all_regi) |
x |
| p47_taxCO2eq_AggFE (ttot, all_regi) |
x |
| p47_taxCO2eq_ref (ttot, all_regi) |
x |
| p47_taxCO2eq_SectorAggFE (ttot, all_regi, sector) |
x |
| p47_taxemiMkt_AggEmi (ttot, all_regi) |
x |
| p47_taxemiMkt_AggFE (ttot, all_regi) |
x |
| p47_taxemiMkt_init (ttot, all_regi, emiMkt) |
x |
| p47_taxemiMkt_SectorAggFE (ttot, all_regi, sector) |
x |
| p47_VREminShare (ttot, ext_regi) |
x |
| q47_CCSmaxBound (ttot, all_regi) |
x |
| q47_implicitPePriceTax (ttot, all_regi, all_enty) |
x |
| q47_implicitPriceTax (ttot, all_regi, all_enty, entySe, sector) |
x |
| q47_implicitQttyTargetTax (ttot, all_regi) |
x |
| q47_quantity_regiCO2target (ttot, ext_regi) |
x |
| q47_VREShare (ttot, all_regi) |
x |
| s47_firstFreeYear | x |
| s47_prefreeYear | x |
| v47_VREshare (ttot, all_regi) |
x |
| description | |
|---|---|
| all_emiMkt | emission markets |
| all_enty | all types of quantities |
| all_in | all inputs and outputs of the CES function |
| all_regi | all regions |
| all_te | all energy technologies, including from modules |
| altFeEmiFac_regi(ext_regi) | set of regions that use alternative FE emission factors from umweltbundesamt |
| ccs2te(all_enty, all_enty, all_te) | chain for ccs |
| char | characteristics of technologies |
| emi_sectors | comprehensive sector set used for more detailed emissions accounting (REMIND-EU) and for CH4 tier 1 scaling - potentially to be integrated with similar set all_exogEmi |
| emi_type_47 | emission type used in regional target |
| emi2te(all_enty, all_enty, all_te, all_enty) | map emissions to technologies |
| emiMac2sector(all_enty, emi_sectors, sector_types, all_enty) | mapping of emission sources from MACs to sectors (and emissions) |
| emiMacSector(all_enty) | types of climate-relevant non-energy emissions with mac curve. Emissions in this set HAVE to be in emiMac2mac as well - if no MAC is available it will be set to zero automatically. |
| emiMktGroup(all_emiMktExt, all_emiMkt) | set to allow selecting either a single emission market or all together (all=ETS+ESR+other) |
| energyQttyTargetANDGroup2enty(qttyTarget, qttyTargetGroup, all_enty) | set combining possible energy level (PE, SE or FE), energy types and energy carriers |
| enty(all_enty) | all types of quantities |
| entyFe(all_enty) | final energy types. |
| entyFe2Sector(all_enty, emi_sectors) | final energy (stationary and transportation) mapping to sectors (industry, buildings, transportation and cdr) |
| entyPe(all_enty) | Primary energy types (PE) |
| entySe(all_enty) | secondary energy types |
| entySeFos(all_enty) | secondary energy types from fossil primary energy |
| exogDemScen | exogenuous FE and ES demand scenarios that can be activated by cm_exogDem_scen |
| ext_regi | extended regions list (includes subsets of H12 regions) |
| fePriceScenario | scenarios for exogenous FE price targets |
| in(all_in) | All inputs and outputs of the CES function |
| iteration | iterator for main (Negishi/Nash) iterations |
| modules | all the available modules |
| pe2se(all_enty, all_enty, all_te) | map primary energy carriers to secondary |
| peFos(all_enty) | primary energy fossil fuels |
| pePriceScenario | scenarios for exogenous PE price targets |
| qttyTarget | quantity target for energy carrier level (primary, secondary, final energy) or CCS |
| qttyTargetGroup | quantity target aggregated categories |
| regi_group(ext_regi, all_regi) | region groups (regions that together corresponds to a H12 region) |
| regi_groupExt(ext_regi, all_regi) | extended region group mapping. Mapping model regions that belong to region group, including one to one region mapping |
| regi(all_regi) | all regions used in the solution process |
| regiANDperiodEmiMktTarget_47(ttot, ext_regi) | regions and periods with emiMkt targets |
| regiEmiMktTarget(ext_regi) | regions with emiMkt targets |
| rlf | cost levels of fossil fuels |
| se2fe(all_enty, all_enty, all_te) | map secondary energy to end-use energy using a technology |
| secInd37 | industry sub-sectors |
| sector2emiMkt(emi_sectors, all_emiMkt) | mapping sectors to emission markets |
| sefe(all_enty, all_enty) | map secondary energy to final energy |
| t(ttot) | modeling time, usually starting in 2005, but later for fixed delay runs |
| tall | time index |
| target_type_47 | CO2 policy target type |
| targetType | PE, SE or FE target type |
| taxType | PE, SE or FE tax type |
| te(all_te) | energy technologies |
| teBio(all_te) | biomass energy systems technologies |
| teCCS(all_te) | Technologies with CCS |
| teCCS2rlf(all_te, rlf) | mapping for CCS technologies to grades |
| teFosCCS(all_te) | fossil technologies with CCS |
| teVRE(all_te) | technologies requiring storage |
| ttot(tall) | time index with spin up |
Renato Rodrigues, Felix Schreyer
01_macro, 21_tax, 32_power, 37_industry, 80_optimization, core