Skip to content

Commit

Permalink
Merge pull request #1789 from fschreyer/power_sector
Browse files Browse the repository at this point in the history
Increase power sector minimal back-up capacity requirement and reintroduce constraint for minimal electrolysis capacities at a certain VRE share
  • Loading branch information
fschreyer authored Sep 4, 2024
2 parents bfeff9b + 32b9ba8 commit 3b0062e
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 1 deletion.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[[#1767](https://github.com/remindmodel/remind/pull/1767)]
- **33_CDR** added ocean alkalinity enhancement to the CDR portfolio (OAE is turned off by default)
[[#1777](https://github.com/remindmodel/remind/pull/1777)]
- **32_power** increase minimum required dispatchable back-up capacity for VRE integration
[[#1789](https://github.com/remindmodel/remind/pull/1789)]
- **scripts** integrate automated scenario validation via piamValidation as output script
[[#1790](https://github.com/remindmodel/remind/pull/1790)]

Expand Down
6 changes: 6 additions & 0 deletions modules/32_power/IntC/datainput.gms
Original file line number Diff line number Diff line change
Expand Up @@ -116,4 +116,10 @@ loop(ext_regi$f32_cm_PriceDurSlope_elh2(ext_regi),
*** The value of 1.1 is derived from the regression of the German Langfristzenarien.
p32_flexSeelShare_slope(t,regi,"elh2") = 1.1;

*** Elh2VREcap phase-in factor
p32_phaseInElh2VREcap(t)$(t.val < 2030) = 0;
p32_phaseInElh2VREcap("2030") = 0.25;
p32_phaseInElh2VREcap("2035") = 0.5;
p32_phaseInElh2VREcap(t)$(t.val > 2035) = 1;

*** EOF ./modules/32_power/IntC/datainput.gms
2 changes: 2 additions & 0 deletions modules/32_power/IntC/declarations.gms
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ parameters
o32_dispatchDownPe2se(ttot,all_regi,all_te) "output parameter to check by how much a pe2se te reduced its output below the normal, in % of the normal output."
p32_shThresholdTotVREAddIntCost(ttot) "Total VRE share threshold above which additional integration challenges arise. Increases with time as eg in 2030, there is still little experience with managing systems with 80% VRE share. Unit: Percent"
p32_FactorAddIntCostTotVRE "Multiplicative factor that influences how much the total VRE share increases integration challenges"
p32_phaseInElh2VREcap(ttot) "phase-in factor for electrolysis capacities built from stored VRE electricity, scale up from 2030 to 2040"
p32_flexSeelShare_slope(ttot,all_regi,all_te) "Slope of relationship between average electricity price for flexible technology and share of this technology in total electricity demand. Unit: [ % percentage of average electricity price / % share in electricity demand]."
;

Expand Down Expand Up @@ -48,6 +49,7 @@ equations
q32_operatingReserve(ttot,all_regi) "operating reserve for necessary flexibility"
q32_h2turbVREcapfromTestor(tall,all_regi) "calculate capacities of dummy seel<--h2 technology from storXXX technologies"
q32_h2turbVREcapfromTestorUp(ttot,all_regi) "constraint h2turbVRE hydrogen turbines to be only built together with storage capacities"
q32_elh2VREcapfromTestor(tall,all_regi) "calculate capacities of dummy seel-->h2 technology from storXXX technologies"
q32_flexAdj(ttot,all_regi,all_te) "calculate flexibility benefit or cost per flexible technology to be used by flexibility tax"
q32_flexPriceShareMin(ttot,all_regi,all_te) "calculate miniumum share of average electricity that flexible technologies can see"
q32_flexPriceShareVRE(ttot,all_regi,all_te) "calculate miniumum share of average electricity that flexible technologies can see given the current VRE share"
Expand Down
7 changes: 7 additions & 0 deletions modules/32_power/IntC/equations.gms
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,13 @@ q32_h2turbVREcapfromTestorUp(t,regi)..
p32_storageCap(te,"h2turbVREcapratio") * vm_cap(t,regi,te,"1") )
;

*** build additional electrolysis capacities with stored VRE electricity, phase-in from 2030 to 2040
q32_elh2VREcapfromTestor(t,regi)..
vm_cap(t,regi,"elh2","1")
=g=
sum(te$teStor(te), p32_storageCap(te,"elh2VREcapratio") * vm_cap(t,regi,te,"1") ) * p32_phaseInElh2VREcap(t)
;


***---------------------------------------------------------------------------
*' Definition of capacity constraints for CHP technologies:
Expand Down
2 changes: 1 addition & 1 deletion modules/32_power/IntC/input/f32_storageCap.prn
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
*** SOF ./modules/32_power/IntC/input/storageCap.prn
storspv storwind storcsp
elh2VREcapratio 0.16 0.12 0.12
h2turbVREcapratio 0.6 0.45 0.45
h2turbVREcapratio 1.2 0.90 0.90
batteryVREcapRatio 3 1.1 0

*** EOF ./modules/32_power/IntC/input/storageCap.prn

0 comments on commit 3b0062e

Please sign in to comment.