Releases: imagepbl/effort-sharing
v2025.8.1
General
Large restructuring of the code. Data-wise similar to v1.1.0. Release to pypi.
What's Changed
- Improve logging by @chantalwuer in #136
- Reorganize input data reading by @Peter9192 in #133
- solve some warnings by @sverhoeven in #142
- Refactor data read by @sverhoeven in #143
- Make allocation class methods into functions by @sverhoeven in #137
- Update
pyproject.tomlandenvironment.ymlby @Peter9192 in #148 - Add cabe-export script by @sverhoeven in #147
- Cli by @sverhoeven in #150
- Add/update documentation by @Peter9192 in #149
- add citation.cff by @Peter9192 in #152
- Avoid repeated calculation of global pathways for allocations by @Peter9192 in #154
- Add compare dir test script by @sverhoeven in #153
- Update policyscen.py - Switch from ENGAGE to ELEVATE scenarios by @chantalwuer in #116
- Fix formatting of environment.yml and rerun conda-lock by @Peter9192 in #158
- Add doi to cff and readme by @sverhoeven in #159
- Fix region dimension in rci by @Peter9192 in #160
New Contributors
- @sverhoeven made their first contribution in #142
Full Changelog: v1.1.0...v2025.8.1
Version 1.1.0
Description
This code release is intermediate to synchronize with the analysis done in the forthcoming publication Robiou du Pont et al. (2025) in Nature Communications. Note that many changes in this release affect other analyses (e.g., those in Dekker et al. 2025 in Nature Climate Change). In the near future, a larger release is anticipated, involving significant restructuring of the code and easy use of the code.
Automatic release notes
- Added CO2 analysis and general code clean up by @chantalwuer in #79
- Update README.md file paths by @chantalwuer in #82
- Starting years by @MarkMDekker in #88
- ECPC change by @MarkMDekker in #95
- Small aggregator changes by @MarkMDekker in #96
- Streamlined exporting. by @MarkMDekker in #98
- ECPC Speed improvements by @chantalwuer in #104
- Non-CO2 changes by @MarkMDekker in #110
- Project structure + formatting by @Peter9192 in #121
- Environment management by @Peter9192 in #123
- Adapted readme to remove reference to K:/ drive (unnecessary for most) by @MarkMDekker in #128
- figure changes for policy brief by @MarkMDekker in #125
- Portable data paths by @Peter9192 in #124
Full Changelog: v1.0.0...v1.1.0
Version 1.0.0
Introduction
This code combines a variety of data sources to compute fair national emissions allocations, studies variability in these allocations and compares them with NDC estimates and cost-optimal scenario projections. We plan to make the code more accessible in terms of commenting and cleaning up old code over time. The output data of this code is publicly available on Zenodo (10.5281/zenodo.12188104).
Code structure
The main notebook you will be using is Main.ipynb in the main directory. Each cell in that notebook loads in a particular class and then goes through all of its methods.
- The first one being called is the class in the file
class_datareading.py. This class gathers all data from external sources, such as population, GDP, historical emissions, etc. on a country level, but also computes global pathways into the future. It does not do any effort sharing. The output is a file calledxr_dataread.nc, which is your friend in case you need any country-specific data for debugging, for example. The main uncertainties / work from our side is around generating those future pathways under various circumstances (peak temperature, risk, non-CO2 assumptions, etc.). - The second class being called is the one from
class_allocation.py. That one does all the effort-sharing. It loads inxr_dataread.ncand its methods are named after the allocation rule being computed. The class requires an input: the region (ISO3) that is focused on (calledself.FocusRegioninclass_allocation.py). So inMain.ipynb, you see that there is a loop over all countries and even some country groups (e.g., G20) in the world. The output are files in the form ofxr_alloc_XYZ.ncwhere XYZ is the ISO3 code for a country, and they are saved to K:/ECEMF/T5.2/Allocations/. - The third and fourth classes (
class_allocation_combinedapproachesandclass_tempalign) are for future research. - The fifth class (
class_policyscens) is for reading cost-optimal scenarios and NDCs - The final class (
class_variancedecomp) conducts the variance decomposition (Sobol analysis)
One final important notebook is Aggregator.ipynb. This script aggregates the country-individual files xr_alloc_XYZ.nc. One output is the aggregation of those files into a single file for a single year, for example xr_alloc_2030.nc. Useful for analysis purposes. Input variables can be changed in input.yml.
Plotting scripts
The code contains plotting scripts for our paper and presentations.