-
Notifications
You must be signed in to change notification settings - Fork 133
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for new switches to represent trade scenarios with limited cooperation between regions #1393
base: develop
Are you sure you want to change the base?
Conversation
…into tradeScen
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Based on experiments that Rahel did last week where she limited learning to the region itself, I guess here also the learning changes need to be adjusted a bit.
If I don't overlook something, the changes in remind/modules/22_subsidizeLearning/globallyOptimal/presolve.gms mean that ONLY the cumulative capacities in the "learning together" regions is taken into account. However, the parameters for the learning equation are calculated based on 2020 regional costs and 2020 GLOBAL capacity - meaning 2020 investment costs with separate learning will be much higher than the regional investment costs to which the model should be calibrated.
I proposed to Rahel to solve this by differentiating the time steps before 2020 and after 2020; using global learning until 2020 and then for time steps after 2020 taking the 2020 cumulative capacity of "out-group regions" and the full cumulative capacity of "in-group regions"
so for her it was only
pm_capCumForeign(ttot,regi,teLearn)$((ttot.val ge 2005) and (pm_SolNonInfes(regi) eq 1) ) = sum(regi2$((NOT sameas(regi,regi2))), pm_capCum0(ttot,regi2,teLearn));
pm_capCumForeign(ttot,regi,teLearn)$((ttot.val ge 2025) and (pm_SolNonInfes(regi) eq 1) and (cm_LearningSpillover eq 0)) = sum(regi2$((NOT sameas(regi,regi2))), pm_capCum0("2020",regi2,teLearn));ms
for you the second part would rather be something like
pm_capCumForeign(ttot,regi,teLearn)$((ttot.val ge 2025) and (pm_SolNonInfes(regi) eq 1) and (cm_LearningSpillover eq 0)) =
sum(regi2$((NOT sameas(regi,regi2)) AND NOT(altLearnRegi22(regi2,teLearn), pm_capCum0("2020",regi2,teLearn)))
+
sum(regi2$((NOT sameas(regi,regi2)) AND (altLearnRegi22(regi2,teLearn), pm_capCum0(ttot,regi2,teLearn)));
or so.
I hope I am not mistaken and you already account for this somewhere :-)
…meters are calibrated in relation to 2020 regional costs and 2020 GLOBAL capacity
Is this what you had in mind? There is one more thing that I don't get: |
what is the status of this PR? will you continue working on it? |
yes, it is still a wip. |
what is the status of this PR? will you continue working on it? |
This is being further discussed in the ECEMF (WP 5.1), and in a few months it will be defined if the scenarios that require these changes will evolve into a publication or not. |
What is the status of this PR? Are you working on it and is it also relevant for our next release? |
Purpose of this PR
Added support for new switches to represent trade scenarios with limited cooperation between regions (WP5 of the ECEMF project)
option to limit specific regions exports. See
cm_XportRegiLim
description in the main.lst file.option to define independent learning cumulative capacity for alternative region groups. See
cm_altLearnRegiSet
description in the main.lst file.update ECEMF scenario config file with WP5p1 scenarios.
Type of change
Checklist:
FAIL 0
in the output ofmake test
)CHANGELOG.md
has been updated correctlyFurther information (optional):
/p/projects/ecemf/REMIND/2040_scenarios/v04_2023_06_02_WP5/output