Skip to content

Commit

Permalink
Merge pull request #1519 from merfort/dev__residues
Browse files Browse the repository at this point in the history
Improvement of traditional representation
  • Loading branch information
merfort authored Jan 19, 2024
2 parents 952cdc6 + c856ae3 commit ac2b048
Show file tree
Hide file tree
Showing 7 changed files with 34 additions and 19 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[[#1414](https://github.com/remindmodel/remind/pull/1414)]
- correctly report `Tech|*|Capital Costs|w/ Adj Costs` for t < cm_startyear
[[#1429](https://github.com/remindmodel/remind/pull/1429), [#1476](https://github.com/remindmodel/remind/pull/1476)]
- prevent tradtional biomass spillover to other sectors than buildings
[[#1519](https://github.com/remindmodel/remind/pull/1519)]

### removed
- **45_carbonprice** remove outdated realizations:
Expand Down
32 changes: 16 additions & 16 deletions core/bounds.gms
Original file line number Diff line number Diff line change
Expand Up @@ -82,28 +82,28 @@ vm_deltaCap.fx(t,regi,"biotr",rlf)$(t.val gt 2005) = 0;
*BS/DK* Developing regions (defined by GDP PPP threshold) phase out more slowly ( + varied by SSP)
loop(regi,
if ( (pm_gdp("2005",regi)/pm_pop("2005",regi) / pm_shPPPMER(regi)) lt 4,
vm_deltaCap.fx("2010",regi,"biotr","1") = 1.3 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2015",regi,"biotr","1") = 0.9 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2020",regi,"biotr","1") = 0.7 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2010",regi,"biotr","1") = 1.3 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2015",regi,"biotr","1") = 0.9 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2020",regi,"biotr","1") = 0.7 * vm_deltaCap.lo("2005",regi,"biotr","1");
$ifthen NOT %cm_tradbio_phaseout% == "fast" !! cm_tradbio_phaseout
vm_deltaCap.fx("2025",regi,"biotr","1") = 0.5 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2030",regi,"biotr","1") = 0.4 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2035",regi,"biotr","1") = 0.3 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2040",regi,"biotr","1") = 0.2 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2045",regi,"biotr","1") = 0.15 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2050",regi,"biotr","1") = 0.1 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.fx("2055",regi,"biotr","1") = 0.1 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2025",regi,"biotr","1") = 0.5 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2030",regi,"biotr","1") = 0.4 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2035",regi,"biotr","1") = 0.3 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2040",regi,"biotr","1") = 0.2 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2045",regi,"biotr","1") = 0.15 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2050",regi,"biotr","1") = 0.1 * vm_deltaCap.lo("2005",regi,"biotr","1");
vm_deltaCap.up("2055",regi,"biotr","1") = 0.1 * vm_deltaCap.lo("2005",regi,"biotr","1");
$endif
);
);

* quickest phaseout in SDP scenarios (no new capacities allowed), quick phaseout in SSP1 und SSP5
$if %cm_GDPscen% == "gdp_SDP" vm_deltaCap.fx(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SDP_EI" vm_deltaCap.fx(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SDP_MC" vm_deltaCap.fx(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SDP_RC" vm_deltaCap.fx(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SSP1" vm_deltaCap.fx(t,regi,"biotr","1")$(t.val gt 2020) = 0.5 * vm_deltaCap.lo(t,regi,"biotr","1");
$if %cm_GDPscen% == "gdp_SSP5" vm_deltaCap.fx(t,regi,"biotr","1")$(t.val gt 2020) = 0.5 * vm_deltaCap.lo(t,regi,"biotr","1");
$if %cm_GDPscen% == "gdp_SDP" vm_deltaCap.up(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SDP_EI" vm_deltaCap.up(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SDP_MC" vm_deltaCap.up(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SDP_RC" vm_deltaCap.up(t,regi,"biotr","1")$(t.val gt 2020) = 0;
$if %cm_GDPscen% == "gdp_SSP1" vm_deltaCap.up(t,regi,"biotr","1")$(t.val gt 2020) = 0.5 * vm_deltaCap.lo(t,regi,"biotr","1");
$if %cm_GDPscen% == "gdp_SSP5" vm_deltaCap.up(t,regi,"biotr","1")$(t.val gt 2020) = 0.5 * vm_deltaCap.lo(t,regi,"biotr","1");


*** ------------------------------------------------------------------------------------------
Expand Down
1 change: 1 addition & 0 deletions modules/36_buildings/services_putty/not_used.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,4 @@ vm_costCESMkup,input,questionnaire
sm_trillion_2_non,input,questionnaire
sm_TWa_2_kWh,input,questionnaire
pm_tau_ces_tax,input,questionnaire
vm_prodSe,input,questionnaire
1 change: 1 addition & 0 deletions modules/36_buildings/services_with_capital/not_used.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,4 @@ sm_trillion_2_non,input,questionnaire
sm_TWa_2_kWh,input,questionnaire
pm_tau_ces_tax,input,questionnaire
pm_dt,parameter,???
vm_prodSe,input,questionnaire
1 change: 1 addition & 0 deletions modules/36_buildings/simple/declarations.gms
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ Equations
q36_costAddH2PhaseIn(ttot,all_regi) "additional industry H2 t&d cost at low H2 penetration in buildings"
q36_costCESmarkup(ttot,all_regi,all_in) "calculation of additional CES markup cost that are accounted in the budget (GDP) to represent demand-side technology cost of end-use transformation, for example, cost of heat pumps"
q36_costAddTeInv(ttot,all_regi,all_te) "summation of sector-specific demand-side cost"
q36_biotrBound(ttot,all_regi) "enforce that solid biomass demand in buildings is at least as much as what is transformed via biotr to prevent spillover to other sectors"
;

*** EOF ./modules/36_buildings/simple/declarations.gms
13 changes: 13 additions & 0 deletions modules/36_buildings/simple/equations.gms
Original file line number Diff line number Diff line change
Expand Up @@ -85,5 +85,18 @@ q36_costCESmarkup(t,regi,in)$(ppfen_buildings_dyn36(in))..
+ pm_cesdata(t,regi,in,"offset_quantity"))
;

***---------------------------------------------------------------------------
*' Use at least as much solids from biomass in buildings as was transformed
*' via biotr in order to prevent that traditionally used biomass is also used
*' in other sectors. This only applies to regions that still have traditional
*' biomass use, which is defined via a gdp criteria.
***---------------------------------------------------------------------------
q36_biotrBound(t,regi)$(t.val ge 2010 AND (pm_gdp("2005",regi)/pm_pop("2005",regi) / pm_shPPPMER(regi)) lt 4)..
sum(sector2emiMkt('build',emiMkt),
vm_demFeSector_afterTax(t,regi,'sesobio','fesos','build',emiMkt)
)
=g=
vm_prodSe(t,regi,"pebiolc","sesobio","biotr")
;

*** EOF ./modules/36_buildings/simple/equations.gms
3 changes: 0 additions & 3 deletions modules/36_buildings/simple/not_used.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,6 @@ sm_DpGJ_2_TDpTWa,input,questionnaire
sm_D2015_2_D2005,input,questionnaire
sm_tmp,input,questionnaire
vm_effGr,input,questionnaire
pm_shPPPMER,input,questionnaire
pm_pop,input,questionnaire
pm_gdp,input,questionnaire
pm_esCapCost,input,questionnaire
pm_fe2es,input,questionnaire
pm_shFeCes,input,questionnaire
Expand Down

0 comments on commit ac2b048

Please sign in to comment.