From 934783750931eb2b3e6c64b5b65b139522d4b70a Mon Sep 17 00:00:00 2001 From: Marianna Rottoli <marianna.rottoli@mail.polimi.it> Date: Wed, 8 Jan 2020 18:16:43 +0100 Subject: [PATCH] Missing code chunks to perform edge_esm runs. --- core/datainput.gms | 14 +++++----- core/declarations.gms | 2 +- core/sets.gms | 27 ++++++++++--------- modules/04_PE_FE_parameters/iea2014/sets.gms | 1 + .../29_CES_parameters/calibrate/datainput.gms | 14 ++++++++++ .../calibrate/declarations.gms | 1 + modules/29_CES_parameters/load/datainput.gms | 2 +- modules/35_transport/edge_esm/postsolve.gms | 8 ++++++ modules/40_techpol/NDC2018/bounds.gms | 4 +-- modules/40_techpol/NPi2018/bounds.gms | 4 +-- 10 files changed, 51 insertions(+), 26 deletions(-) create mode 100644 modules/35_transport/edge_esm/postsolve.gms diff --git a/core/datainput.gms b/core/datainput.gms index 9cbd9af..d167c43 100644 --- a/core/datainput.gms +++ b/core/datainput.gms @@ -1134,14 +1134,14 @@ $offdelim ; *** ----- Emission factor of final energy carriers ----------------------------------- -*GL* demand side emission factor of final energy carriers in MtCO2/EJ -*** www.eia.gov/oiaf/1605/excel/Fuel%20EFs_2.xls +*AD* Updated Demand Side Emission Factors +*** https://www.umweltbundesamt.de/sites/default/files/medien/1968/publikationen/co2_emission_factors_for_fossil_fuels_correction.pdf p_ef_dem(entyFe) = 0; -p_ef_dem("fedie") = 69.3; -p_ef_dem("fehos") = 69.3; -p_ef_dem("fepet") = 68.5; -p_ef_dem("fegas") = 50.3; -p_ef_dem("fesos") = 90.5; +p_ef_dem("fedie") = 74; +p_ef_dem("fehos") = 73; +p_ef_dem("fepet") = 73; +p_ef_dem("fegas") = 55; +p_ef_dem("fesos") = 96; *** some balances are not matching by small amounts; diff --git a/core/declarations.gms b/core/declarations.gms index 775fe53..a8aade9 100644 --- a/core/declarations.gms +++ b/core/declarations.gms @@ -120,7 +120,7 @@ p_aux_capacityFactorHistOverREMIND(all_regi,all_te) "aux. param. to calc pm_fe2es(tall,all_regi,all_teEs) "Conversion factor from final energies to energy services. Default is 1." pm_shFeCes(ttot,all_regi,all_enty,all_in,all_teEs) "Final energy shares for CES nodes" - +pm_bunker_share_in_nonldv_fe(tall,all_regi) "Share of bunkers in non-LDV transport - fedie" p_adj_coeff_Orig(ttot,all_regi,all_te) "initial value of p_adj_coeff" p_adj_seed_te_Orig(ttot,all_regi,all_te) "initial value of p_adj_seed_te" diff --git a/core/sets.gms b/core/sets.gms index b2a7c76..06f6de7 100755 --- a/core/sets.gms +++ b/core/sets.gms @@ -407,10 +407,10 @@ all_esty "energy services" esdie_frgt_lo esdie_frgt_sm eselt_frgt_sm -* esh2t_pass_sm -* esgat_pass_sm -* esh2t_frgt_sm -* esgat_frgt_sm + esh2t_pass_sm + esgat_pass_sm + esh2t_frgt_sm + esgat_frgt_sm *** Buildings module: Energy services (useful energy) ueshheb "buildings space heating district heat" @@ -601,13 +601,13 @@ all_teEs "energy service technologies" te_espet_pass_sm "short-to-medium distance passenger transport CES node" te_esdie_pass_sm "short-to-medium distance passenger transport CES node" te_eselt_pass_sm "short-to-medium distance passenger transport CES node" -* te_esh2t_pass_sm "short-to-medium distance passenger transport CES node" -* te_esgat_pass_sm "short-to-medium distance passenger transport CES node" + te_esh2t_pass_sm "short-to-medium distance passenger transport CES node" + te_esgat_pass_sm "short-to-medium distance passenger transport CES node" te_esdie_pass_lo "long distance passenger transport (aviation) CES node" te_esdie_frgt_sm "short-to-medium distance freight transport CES node" te_eselt_frgt_sm "short-to-medium distance freight transport CES node" -* te_esh2t_frgt_sm "short-to-medium distance freight transport CES node" -* te_esgat_frgt_sm "short-to-medium distance freight transport CES node" + te_esh2t_frgt_sm "short-to-medium distance freight transport CES node" + te_esgat_frgt_sm "short-to-medium distance freight transport CES node" te_esdie_frgt_lo "long distance freight transport CES node" *** Buildings module @@ -1406,6 +1406,7 @@ enty(all_enty) "all types of quantities" feelt "final energy electricity for transport" fetf "final energy transport fuels" feh2t "final energy hydrogen transport" + fegat "final energy nat. gas for transport" co2 "carbon dioxide emissions" ch4 "methane emissions" n2o "n2o emissions from the energy system" @@ -2100,18 +2101,18 @@ se2fe(all_enty,all_enty,all_te) "map secondary energy to end-use energy using / seel.feels.tdels segabio.fegas.tdbiogas - segafos.fegas.tdfosgas + segafos.fegas.tdfosgas seliqbio.fehos.tdbiohos - seliqfos.fehos.tdfoshos + seliqfos.fehos.tdfoshos sesobio.fesos.tdbiosos - sesofos.fesos.tdfossos + sesofos.fesos.tdfossos seh2.feh2s.tdh2s sehe.fehes.tdhes seel.feelt.tdelt seliqbio.fepet.tdbiopet - seliqfos.fepet.tdfospet + seliqfos.fepet.tdfospet seliqbio.fedie.tdbiodie - seliqfos.fedie.tdfosdie + seliqfos.fedie.tdfosdie seh2.feh2t.tdh2t / diff --git a/modules/04_PE_FE_parameters/iea2014/sets.gms b/modules/04_PE_FE_parameters/iea2014/sets.gms index c77461c..756ae34 100644 --- a/modules/04_PE_FE_parameters/iea2014/sets.gms +++ b/modules/04_PE_FE_parameters/iea2014/sets.gms @@ -32,6 +32,7 @@ uet2fet(all_enty,all_enty,all_te,all_te) "match ESM fe for ue-items of the tran fedie.fedie.tdbiodie.tdbiodie fedie.fedie.tdfosdie.tdfosdie feelt.feelt.tdelt.tdelt + fegat.fegat.tdgat.tdgat / in2enty(all_enty,all_enty,all_te,all_te) "match ESM fe to CES structure" in2enty2(all_enty,all_enty,all_te,all_te) "alias of in2enty" diff --git a/modules/29_CES_parameters/calibrate/datainput.gms b/modules/29_CES_parameters/calibrate/datainput.gms index 182b0a2..6cd230e 100644 --- a/modules/29_CES_parameters/calibrate/datainput.gms +++ b/modules/29_CES_parameters/calibrate/datainput.gms @@ -167,8 +167,16 @@ p29_esdemand "energy service demand" $ondelim $include "./modules/29_CES_parameters/calibrate/input/pm_es_demand.cs4r" $offdelim +/ +p29_trpdemand "transport demand" / +$ondelim +$include "./modules/29_CES_parameters/calibrate/input/pm_trp_demand.cs4r" +$offdelim +/ + + p29_efficiency_growth "efficency growth for ppf beyond calibration" / $ondelim @@ -260,6 +268,12 @@ pm_cesdata(t,regi,in,"quantity") $ p29_fedemand(t,regi,"%cm_GDPscen%",in) *** Load exogenous ES trajectories pm_cesdata(t,regi,in,"quantity") $ p29_esdemand(t,regi,"%cm_GDPscen%",in) = p29_esdemand(t,regi,"%cm_GDPscen%",in); + +*** Load exogenous transport demand +pm_cesdata(t,regi,in,"quantity") $ p29_trpdemand(t,regi,"%cm_GDPscen%",in) + = p29_trpdemand(t,regi,"%cm_GDPscen%",in); + + *** Load capital quantities pm_cesdata(t,regi,ppfKap,"quantity") = p29_capitalQuantity(t,regi,"%cm_GDPscen%",ppfKap); diff --git a/modules/29_CES_parameters/calibrate/declarations.gms b/modules/29_CES_parameters/calibrate/declarations.gms index 5f4c8a5..866b37f 100644 --- a/modules/29_CES_parameters/calibrate/declarations.gms +++ b/modules/29_CES_parameters/calibrate/declarations.gms @@ -17,6 +17,7 @@ Parameters p29_effGr(tall,all_regi,all_in) "growth of factor efficiency from input.gdx" p29_fedemand(tall,all_regi,all_GDPscen,all_in) "final energy demand" p29_cesdata_price(tall,all_regi,all_in) "exogenous prices in case they are needed" + p29_trpdemand(tall,all_regi,all_GDPscen,all_in) "transport demand" p29_esdemand(tall,all_regi,all_GDPscen,all_in) "energy service demand" p29_efficiency_growth(tall,all_regi,all_GDPscen,all_in) "efficency level paths for ppf beyond calibration" p29_capitalQuantity(tall,all_regi,all_GDPscen,all_in) "capital quantities" diff --git a/modules/29_CES_parameters/load/datainput.gms b/modules/29_CES_parameters/load/datainput.gms index a951c9e..dfc7863 100644 --- a/modules/29_CES_parameters/load/datainput.gms +++ b/modules/29_CES_parameters/load/datainput.gms @@ -8,7 +8,7 @@ *** Load CES parameters based on current model configuration *** ATTENTION the file name is replaced by the function start_run() *##################### R SECTION START (CES INPUT) ########################## -$include "./modules/29_CES_parameters/load/input/stat_off-indu_fixed_shares-buil_simple-tran_complex-POP_pop_SSP2-GDP_gdp_SSP2-Kap_perfect-Reg_690d3718e1.inc" +$include "./modules/29_CES_parameters/load/input/stat_off-indu_fixed_shares-buil_simple-tran_edge_esm-POP_pop_SSP2-GDP_gdp_SSP2-Kap_perfect-Reg_690d3718e1.inc" *###################### R SECTION END (CES INPUT) ########################### diff --git a/modules/35_transport/edge_esm/postsolve.gms b/modules/35_transport/edge_esm/postsolve.gms new file mode 100644 index 0000000..e2e5df8 --- /dev/null +++ b/modules/35_transport/edge_esm/postsolve.gms @@ -0,0 +1,8 @@ +*** SOF ./modules/35_transport/edge_esm/postsolve.gms +pm_bunker_share_in_nonldv_fe(t,regi) = ( + vm_demFeForEs.l(t,regi,"fedie","esdie_frgt_lo","te_esdie_frgt_lo") + + vm_demFeForEs.l(t,regi,"fedie","esdie_pass_lo","te_esdie_pass_lo")) / + sum(fe2es_dyn35("fedie",esty,teEs), vm_demFeForEs.l(t,regi,"fedie",esty,teEs)); +display pm_bunker_share_in_nonldv_fe; + +*** EOF ./modules/35_transport/edge_esm/postsolve.gms diff --git a/modules/40_techpol/NDC2018/bounds.gms b/modules/40_techpol/NDC2018/bounds.gms index 4c89360..b5efbe3 100755 --- a/modules/40_techpol/NDC2018/bounds.gms +++ b/modules/40_techpol/NDC2018/bounds.gms @@ -21,7 +21,7 @@ if(cm_nucscen eq 7, display vm_cap.lo; - +$ifthen.complex_transport "%transport%" == "complex" *** additional target for electro mobility, overwriting the general bounds in 35_transport/complex/bounds.gms *** requiring higher EV and FC vehicle shares, to mirror efficiency mandates and EV legislation in many countries loop(regi, @@ -52,6 +52,6 @@ display vm_cap.lo; ); ); ); - +$endif.complex_transport *** EOF ./modules/40_techpol/NDC2018/bounds.gms diff --git a/modules/40_techpol/NPi2018/bounds.gms b/modules/40_techpol/NPi2018/bounds.gms index 796f151..56781dc 100644 --- a/modules/40_techpol/NPi2018/bounds.gms +++ b/modules/40_techpol/NPi2018/bounds.gms @@ -15,7 +15,7 @@ vm_cap.lo(t,regi,"apCarElT","1") = p40_TechBound(t,regi,"apCarElT"); display vm_cap.lo; - +$ifthen.complex_transport "%transport%" == "complex" *** additional target for electro mobility, overwriting the general bounds in 35_transport/complex/bounds.gms *** requiring higher EV and FC vehicle shares, to mirror efficiency mandates and EV legislation in many countries loop(regi, @@ -46,6 +46,6 @@ display vm_cap.lo; ); ); ); - +$endif.complex_transport *** EOF ./modules/40_techpol/NPi2018/bounds.gms -- GitLab