Skip to content

Add a simple aggregate_kyoto_gases() method#952

Open
danielhuppmann wants to merge 3 commits intoIAMconsortium:mainfrom
danielhuppmann:feature/gwp-aggregator
Open

Add a simple aggregate_kyoto_gases() method#952
danielhuppmann wants to merge 3 commits intoIAMconsortium:mainfrom
danielhuppmann:feature/gwp-aggregator

Conversation

@danielhuppmann
Copy link
Member

Please confirm that this PR has done the following:

  • Tests Added
  • Documentation Added
  • Name of contributors Added to AUTHORS.rst
  • Description in RELEASE_NOTES.md Added

Description of PR

This PR adds a method to compute the aggregate Kyoto GHG from a set of species using any GWP metric supported by iam-units.

The method is similar to add_gwp100_kyoto() in the climate-assessment package.

One issue is that there is a discrepancy in the unit used for HFC43-10 between ScenarioMIP data, iam-units and common-definitions, so this is commented out for now. See iiasa/emissions_harmonization_historical#161

The units for each species and the minimum set of species (required) are hard-coded based on common-definitions, the returned variable has the GWP-metric as a suffix. This could be generalized in follow-up PR (or immediately if there are strong feelings).

Specific question to @jkikstra @znicholls @chrisroadmap:

  • Is this the right set of species?
  • Should the list of minimum/required species be extended?

@danielhuppmann danielhuppmann self-assigned this Feb 2, 2026
@danielhuppmann
Copy link
Member Author

This PR is a stepping stone to implement IAMconsortium/nomenclature#427

@znichollscr
Copy link

Is this the right set of species?
Should the list of minimum/required species be extended?

Really depends on the use case. For many cases, this looks totally fine (and is probably well over 95% of all Kyoto GHG emissions). For other cases, it will be missing fairly common gases. The 'full' list (according to simple climate models) is here: https://github.com/iiasa/emissions_harmonization_historical/blob/190affcf0caf71daeac395a45dd7c39846acbaec/notebooks/5194_post-process-emissions.py#L81. Making that required will probably drive most users crazy so I wouldn't recommend that. How many are optional really depends on use case I would say so hard to set in advance of knowing the use context.

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.

2 participants