Skip to content
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

CDR limitations: share of FE and share of expenses for net negative emissions in GDP #1971

Draft
wants to merge 5 commits into
base: develop
Choose a base branch
from

Conversation

tabeado
Copy link
Contributor

@tabeado tabeado commented Jan 31, 2025

Purpose of this PR

This PR introduces the possibility to limit CDR based on energy and monetary resources:
a) share of final energy type demand in total demand of that FE type in a region via the switch cm_33_maxFeShare.

  • It determines an upper bound for each final energy carrier based on the previous iteration's total final energy of that type. This avoids that the model increases other sector's FE demand in response to the limitation.
  • We aggregate similar FE carriers via the mapping entyFe2FeType. This means for example, that the demand for electricity (feels) by dac + weathering + oae_ng + oae_el has to be less than X% of feels+feelt.

b) Limit expenses on net negative emissions: The new variable v_NetNegEmi_expenses calculates the expenses for net negative emissions as the effective carbon price for net negative emissions times the total net negative emissions. The switch c_GDP_netNegCDR_maxShare determines the maximum share thereof in GDP that is permissible by setting an upper bound on v_NetNegEmi_expenses.

Both cm_33_maxFeShare and c_GDP_netNegCDR_maxShare are set to 1 as default, thus not affecting default runs.

The switches allow to address the issue of regional concentration of certain technologies if desired in a scenario.

Type of change

  • New feature
  • This change requires a documentation update

Checklist:

  • My code follows the coding etiquette
  • I performed a self-review of my own code
  • I explained my changes within the PR, particularly in hard-to-understand areas
  • I checked that the in-code documentation is up-to-date
  • I adjusted the reporting in remind2 where it was needed
  • I adjusted forbiddenColumnNames in readCheckScenarioConfig.R in case the PR leads to deprecated switches
  • I checked the log.txt file of my runs for newly introduced summation, fixing or variable name errors
  • All automated model tests pass (FAIL 0 in the output of make test)
  • The changelog CHANGELOG.md has been updated correctly

Further information (optional):

  • Runs with these changes are here: /p/tmp/tabeado/CDRregiLimitsF/remind
  • Comparison of results (what changes by this PR?):

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant