allow regionally different carbon price peak years for regional EOC budget scenarios#2309
Conversation
|
I have test runs on the way to check that it really works as intended... |
RahelMA
left a comment
There was a problem hiding this comment.
Thank you, Tabea! That's a great improvement!
I only have minor documentation comments ;)
Do you have some test runs? It would be helpful to check the behavior and results in the discussion.
If not in this PR, then in the next one, we should add the ECPC scenario with regional peak year in the JUSTMip config.
| p45_budgetCO2from2020Regi(all_regi) "regional carbon budget (Gt CO2)" | ||
| p45_budgetCO2from2020RegiShare(all_regi) "share of region in global carbon budget" /%cm_budgetCO2from2020RegiShare%/ | ||
| $ifthen.Peak not "%cm_peakBudgYr_regi%" == "off" | ||
| p45_peakBudgYr_regi(all_regi) "prescribed peak carbon price year for each region" /%cm_peakBudgYr_regi%/ |
There was a problem hiding this comment.
I wonder if it is useful to have the input for p45_peakBudgYr_regi(all_regi) only in the datainput or declaration ? Now it's partly doubled?
There was a problem hiding this comment.
this was my solution to having both options to set a global year through cm_peakBudgYr and cm_peakBudgYr_regi.
- when
cm_peakBudgYris set, it has to be assigned top45_peakBudgYr_regi(all_regi)indatainput. - when
cm_peakBudgYr_regiis set, it can be read in and assigned directly in the declarations - which I find quite elegant.
So it is not double, but the assignment happens in different places for different cases.
@LaviniaBaumstark: is it better to use the simple read-in in the declarations or to have the assignment of p45_peakBudgYr_regi for all cases in the datainput?
| @@ -132,7 +132,7 @@ else !! if not yet within tolerance | |||
| ); !! if iteration far enough | |||
|
|
|||
| !! Simultaneous up- and downward adjustment of carbon prices in early iterations | |||
There was a problem hiding this comment.
Is the carbon price oscillating between iter 12 and 30?
There was a problem hiding this comment.
This is not about oscillation, but about avoiding that there are too many effects in different directions by the regions which could make convergence more difficult. Therefore, the carbon prices adjustments are allowed only in one, alternating direction in later iterations.
This feature was introduced to help the convergence when we had big problems early-on. But iter 12 is probably too early to start this,. We may need more analysis whether it is really meaningful at some point. We can also take it out of the normal operation, i.e. set iter = 100 here, and just keep it as a manually adaptable feature for when we have convergence problems in our runs.
I added the path to a folder that includes runs with different carbon price shapes from November in the description. For documentation of the implications of the choice of shapes in general, I would rather add a brief discussion in the general description/tutorial we have planned |
Purpose of this PR
For scenarios with fixed regional EOC carbon budgets via
45_carbonprice/functionalFormRegi, enable region-specific carbon price peak years. So far, only a globally set peak year was possible to set viacm_peakBudgYr. Now, users can set a peak year for each region viacm_peakBudgYr_regi.Type of change
Parts concerned
Impact
Checklist
Do not delete any line. Leave unfinished elements unchecked so others know how far along you are.
In the end all checkboxes must be ticked before you can merge.
make test) after my final commit and all tests pass (FAIL 0)remind2if and where it was neededforbiddenColumnNamesin readCheckScenarioConfig.R in case the PR leads to deprecated switchesCHANGELOG.mdcorrectly (added, changed, fixed, removed, input data/calibration)Further information (optional)
/p/tmp/tabeado/Equity/EOC_2511/remind_RegiPeak/p/tmp/tabeado/Equity/EOC_2511/remind_PBhard/output