From 36e6cc0d2e98c1df4ae4391b8d5ba9d4b0edbd20 Mon Sep 17 00:00:00 2001 From: Setu Pelz Date: Thu, 1 Oct 2026 16:01:35 +0200 Subject: [PATCH 1/7] feat: GCB 2025 emissions, IGCC 2025 budgets with peak-warming bands, LULUCF Data Hub v4, start years from 1850; fix bunker accounting in the budget rebase Adds gcb-2025 (national fossil CO2, 1850-2024) and melo-2026-v4 (LULUCF Data Hub v4.0.0) as opt-in sources. Adds RCB sources forster_2026 and ar6_wg1_2021 with peak-warming-band scenario selection and rebase_fill_max_years. Allocation years start at 1850; the parameter grid checks pre-allocation years against the data. Fixes the bunker accounting in the budget rebase, the world co2 series in the NGHGI builder, and the last observed bunker year. calculate_budget_from_rcb raises an error when years are missing. --- .gitignore | 2 + CHANGELOG.md | 9 + Snakefile | 15 +- data/emissions/gcb-2025/CITATION.md | 21 + data/lulucf/melo-2026-v4/CITATION.md | 8 + data/rcbs/rcbs.yaml | 57 +- docs/api/utils/data.md | 16 + docs/dev-guide/adding-data-sources.md | 16 +- docs/science/allocations.md | 2 +- docs/science/glossary.md | 2 +- docs/science/other-operations.md | 128 +++- docs/science/parameter-effects.md | 4 + docs/user-guide/data-sources.md | 48 +- .../101_data_preprocess_emiss_gcb-2025.py | 143 ++++ .../104_data_preprocess_scenarios_ar6.py | 164 +++-- notebooks/106_generate_pathways_from_rcbs.py | 14 +- ...07_derive_nghgi_categories_melo-2026-v4.py | 559 ++++++++++++++++ .../107_derive_nghgi_categories_melo-2026.py | 4 +- .../108_data_preprocess_bunkers_gcb-2025.py | 73 +++ notebooks/602_reproduce_dekker_2025.py | 5 +- notebooks/604_reproduce_vandenberg_2020.py | 5 +- src/fair_shares/conf/data_registry.yaml | 52 +- .../data_sources/data_sources_unified.yaml | 21 + .../library/allocations/budgets/per_capita.py | 36 +- .../library/allocations/manager.py | 14 +- src/fair_shares/library/citations.py | 4 +- src/fair_shares/library/config/models.py | 11 +- .../library/pipeline/preprocessing.py | 3 +- src/fair_shares/library/preprocessing/rcbs.py | 122 +++- src/fair_shares/library/utils/data/config.py | 55 +- src/fair_shares/library/utils/data/gcb.py | 77 +++ src/fair_shares/library/utils/data/nghgi.py | 51 +- src/fair_shares/library/utils/data/rcb.py | 444 ++++++++++++- src/fair_shares/library/validation/config.py | 27 +- src/fair_shares/library/validation/models.py | 20 +- tests/fixtures/rcb_golden_master.yaml | 122 ++++ tests/fixtures/verified_dois.yaml | 46 ++ tests/integration/test_gcb_2025_smoke.py | 64 ++ tests/unit/test_early_start_years.py | 327 ++++++++++ tests/unit/test_emissions_gcb_2025.py | 196 ++++++ tests/unit/test_lulucf_melo_v4.py | 62 ++ tests/unit/test_nghgi_corrections.py | 60 +- tests/unit/test_notebook_106_nghgi_co2.py | 89 +-- tests/unit/test_rcb_calculations.py | 22 + tests/unit/test_rcb_sources.py | 611 ++++++++++++++++++ 45 files changed, 3479 insertions(+), 352 deletions(-) create mode 100644 data/emissions/gcb-2025/CITATION.md create mode 100644 data/lulucf/melo-2026-v4/CITATION.md create mode 100644 notebooks/101_data_preprocess_emiss_gcb-2025.py create mode 100644 notebooks/107_derive_nghgi_categories_melo-2026-v4.py create mode 100644 notebooks/108_data_preprocess_bunkers_gcb-2025.py create mode 100644 src/fair_shares/library/utils/data/gcb.py create mode 100644 tests/fixtures/rcb_golden_master.yaml create mode 100644 tests/integration/test_gcb_2025_smoke.py create mode 100644 tests/unit/test_early_start_years.py create mode 100644 tests/unit/test_emissions_gcb_2025.py create mode 100644 tests/unit/test_lulucf_melo_v4.py create mode 100644 tests/unit/test_rcb_sources.py diff --git a/.gitignore b/.gitignore index 934b0bf..823acba 100644 --- a/.gitignore +++ b/.gitignore @@ -209,6 +209,7 @@ notebooks/404_* /data/emissions/primap-202503/Guetschow_et_al_2025-PRIMAP-hist_v2.6.1_final_no_rounding_13-Mar-2025.nc /data/emissions/cmip7-historical-2025.12.07/country-history.feather /data/emissions/cmip7-historical-2025.12.07/global-workflow-history.csv +/data/emissions/gcb-2025/GCB2025v15_MtCO2_flat.csv /data/gdp/wdi-2025/API_NY.GDP.MKTP.KD_DS2_en_csv_v2_213435.csv /data/gdp/wdi-2025/API_NY.GDP.MKTP.PP.KD_DS2_en_csv_v2_1004.csv /data/gini/unu-wider-2025/WIID-29APR2025.xlsx @@ -216,6 +217,7 @@ notebooks/404_* /data/population/un-owid-2025/population.csv /data/population/un-owid-2025/UN_PPP2024_Output_PopTot.xlsx /data/lulucf/melo-2026/timeseries_NGHGI_v3.1.csv +/data/lulucf/melo-2026-v4/timeseries_NGHGI_gap-filled_4.0.0.csv /data/bunkers/gcb-2024/National_Fossil_Carbon_Emissions_2024v1.0.xlsx /data/scenarios/ipcc_ar6_gidden/ar6_gidden.xlsx /data/scenarios/ipcc_ar6_gidden/ar6_gidden.zip diff --git a/CHANGELOG.md b/CHANGELOG.md index 3984990..a5b03ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,10 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions: [Sem - `fair-shares fetch-data`: downloads every input dataset from source, verifies pinned checksums, records provenance in `data/PROVENANCE.md`. Missing files also fetch automatically on first use. - Python API reference (`docs/api/python-api.md`) for pip-only users. - Root `CONTRIBUTING.md`. This changelog. +- LULUCF Data Hub v4.0.0 (gap-filled NGHGI, 187 countries, 2000-2024) as the opt-in LULUCF source `melo-2026-v4`. `melo-2026` (v3.1.1) stays the default. +- Global Carbon Budget 2025 national fossil CO2 (1850-2024) as the opt-in emissions source `gcb-2025`, `co2-ffi` only. Its world row excludes international bunkers and the 1991 Kuwaiti oil fires, and its runs take bunkers from the same file. The pipeline asks an emissions source only for the categories it declares. `primap-202503` stays the default. +- RCB sources `forster_2026` (IGCC 2025, from 2026) and `ar6_wg1_2021` (AR6 WGI Table SPM.2, from 2020), each with 1.5, 1.7 and 2°C budgets. Their deductions use AR6 scenarios in a peak-warming band (`scenario_selection: peak-warming-band` in `rcbs.yaml`). The band keeps only scenarios that reach net-zero CO2 by 2100, because a remaining carbon budget runs to net-zero CO2 (14, 111 and 37 of 14, 131 and 69 scenarios at 1.5, 1.7 and 2°C). A budget label without a scenario set and an empty band raise an error. A rebase with missing emission years raises an error, and the pipeline skips that source with a warning. The band rule leaves the budgets of the existing sources unchanged; the bunker rebase under "Fixed" changes them. +- `rebase_fill_max_years` in `rcbs.yaml` (default 1). When a world series of the rebase (fossil CO2, bunkers, LULUCF) ends before the year before the budget baseline, each later year takes the last observed value, up to this number of years, with a warning that names the source, the series, the years and the value. The fill is a placeholder until observed data are published. With `gcb-2025` (observed to 2024) `forster_2026` rebases with 2025 filled. With PRIMAP (observed to 2023) it needs two years and stays skipped. 0 turns the fill off. - World Bank WDI Gini index (`SI.POV.GINI`) as a Gini source, with `analysis/gini_source_comparison.py` reporting the coverage and value differences against WIID. ### Changed @@ -19,6 +23,7 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions: [Sem - **Breaking:** the default Gini source is now World Bank WDI (`wdi-2025`), which is CC-BY-4.0. WIID stays available as `active_gini_source=unu-wider-2025` but is opt-in, and outputs built on it cannot be redistributed under CC BY 4.0. Output directory names change, so existing WIID runs are not overwritten. The two sources give materially different capability-based allocations — WDI/PIP is consumption-based for most low- and middle-income countries. - **Breaking:** analysis-country membership no longer depends on Gini availability. A country with complete emissions, GDP and population is now in the analysis even without a Gini value, and receives the analysis-country mean (`general.gini_missing_policy: fallback-mean`, or `strict` to refuse). The country set grows by 9 on the standard sources; `country_data_coverage_summary.csv` gains a `gini_imputed` column. - Gini source config replaces the unused `world_key` and `gini_year` keys with `selection` and `year_window`, both of which the notebooks read. +- Allocation years start at 1850 (was 1900). With `capability_reference_year` set, the adjusted budget approaches need GDP at the reference year only, so `allocation_year` can precede the GDP series. For `co2` and `all-ghg`, the parameter grid checks `pre_allocation_responsibility_year` against the first year of the responsibility emissions frame it receives. ### Deprecated @@ -34,4 +39,8 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions: [Sem - Licence statements corrected: WIID is CC BY-NC-SA 3.0 IGO, UN/OWID population is mixed-terms, CMIP7 is CC-BY-SA-4.0 (author-confirmed). - The Python API's preprocessing path wrote `country_gini_stationary.csv` without a Rest-of-World row, unlike the notebook path. Both now use the same code. - Notebook `100_data_preprocess_rcbs` passed the removed `project_root=` argument to `load_and_process_rcbs`, so the RCB pipeline could not run. +- Adjusted budgets of RCB sources with a baseline after 2020 were too low. The rebase to 2020 added world fossil emissions, which exclude international bunkers, and the bunker deduction covered 2020 to net zero, so the bunkers of 2020 to the year before the baseline were deducted and never added. The rebase now adds them (new output column `rebase_bunkers_mt`). Every adjusted budget of `lamboll_2023` (baseline 2023) rises by 2,822 Mt CO2 and every adjusted budget of `forster_2024` (baseline 2024) by 3,959 Mt CO2, for `co2-ffi` and `co2`, with PRIMAP emissions and `gcb-2024` bunkers. `ar6_2020` (baseline 2020) is unchanged. `process_rcb_to_2020_baseline` takes the bunker series as `world_bunker_emissions`. +- `build_nghgi_world_co2_timeseries` subtracted bunkers from a world fossil series that already excludes them (871 Mt CO2 in 2020; 20,770 Mt over 2000-2019). World `co2` is now fossil plus LULUCF, as in notebook `100_data_preprocess_rcbs`, and the function no longer takes `bunker_ts`. The error reached `run_rcb_preprocessing` and notebook `106_generate_pathways_from_rcbs`; budget files written by notebook 100 did not contain it. +- `compute_bunker_deduction` treated 2023 as the last observed bunker year for every source. It now reads the last year from the bunker data, so `gcb-2025` runs use the observed 2024 value and extrapolate the 2024 rate. Runs with `gcb-2024` bunkers give the same deduction as before. +- `calculate_budget_from_rcb` summed only the years present when the allocation year preceded the first year of the world emissions series (for example `co2`, which starts in 2000, with allocation year 1990). It now raises an error that names the missing years and the first available year. - The Gini-adjusted approaches ignored Gini entirely when `capability_reference_year` named a year before `allocation_year`: the capability snapshot was read from the unfiltered inputs without the adjustment, on both the budget and pathway side. Results on that parameterisation change — on the standard sources, China's share of a `per-capita-adjusted-gini-budget` allocation moves from 10.8% to 5.3% and India's from 23.2% to 28.4%. diff --git a/Snakefile b/Snakefile index 23fd7d1..7402564 100644 --- a/Snakefile +++ b/Snakefile @@ -23,7 +23,9 @@ # Import shared logic from Python modules (single source of truth) from fair_shares.library.utils.data.config import ( build_source_id, + get_bunkers_source, get_emission_preprocessing_categories, + get_emissions_data_parameters, get_final_categories, get_co2_component, is_composite_category, @@ -95,8 +97,13 @@ NOTEBOOK_DIR = "notebooks" # Two category lists drive the pipeline: # EMISSION_CATEGORIES — what PRIMAP extraction (notebook 101) produces # FINAL_CATEGORIES — what the allocation loop iterates over +# The emissions source is asked only for categories it declares. _target = active_target_source or "" -EMISSION_CATEGORIES = get_emission_preprocessing_categories(_target, emission_category) +EMISSION_CATEGORIES = get_emission_preprocessing_categories( + _target, + emission_category, + get_emissions_data_parameters(active_emissions_source).get("available_categories"), +) FINAL_CATEGORIES = get_final_categories(_target, emission_category) is_multi_category = needs_decomposition(_target, emission_category) @@ -143,6 +150,8 @@ _needs_lulucf = emission_category in ("co2", "co2-lulucf", "all-ghg") # Bunker data is needed for all non-pathway targets (RCBs must subtract # international bunker emissions before country allocation). _needs_bunkers = _allocation_mode != "pathway" +# The emissions source names its bunker data; the default is gcb-2024. +_bunkers_source = get_bunkers_source(active_emissions_source) if _needs_lulucf and active_lulucf_source is None: @@ -418,10 +427,10 @@ if _needs_bunkers: allocation. Independent of LULUCF — uses GCB fossil emissions data. """ input: - notebook=f"{NOTEBOOK_DIR}/108_data_preprocess_bunkers_gcb-2024.ipynb", + notebook=f"{NOTEBOOK_DIR}/108_data_preprocess_bunkers_{_bunkers_source}.ipynb", config=f"{OUTPUT_DIR}/config.yaml", output: - notebook=f"{OUTPUT_DIR}/notebooks/108_data_preprocess_bunkers_gcb-2024.ipynb", + notebook=f"{OUTPUT_DIR}/notebooks/108_data_preprocess_bunkers_{_bunkers_source}.ipynb", bunker_csv=f"{OUTPUT_DIR}/intermediate/emissions/bunker_timeseries.csv", shell: notebook_cmd("{input.notebook}", "{output.notebook}") diff --git a/data/emissions/gcb-2025/CITATION.md b/data/emissions/gcb-2025/CITATION.md new file mode 100644 index 0000000..8ca8745 --- /dev/null +++ b/data/emissions/gcb-2025/CITATION.md @@ -0,0 +1,21 @@ +# Citation + +## Global Carbon Budget 2025: National Fossil CO2 Emissions + +**Data product (the file in this directory):** + +Andrew, R. M., & Peters, G. P. (2025). *The Global Carbon Project's fossil CO2 emissions dataset* (2025v15) [Data set]. Zenodo. https://doi.org/10.5281/zenodo.17417124 + +**Paper (methods and results):** + +Friedlingstein, P., et al. (2026). Global Carbon Budget 2025. *Earth System Science Data*, 18, 3211-3288. https://doi.org/10.5194/essd-18-3211-2026 + +Cite both when reporting values derived from this file. + +## Licence + +CC BY 4.0 for both the data product and the paper. + +## Files + +- `GCB2025v15_MtCO2_flat.csv`: territorial fossil CO2 emissions by country, 1750-2024, long format. Units: MtCO2/yr. Also holds international shipping (`XIS`), international aviation (`XIA`), the 1991 Kuwaiti oil fires and the global total (`WLD`). diff --git a/data/lulucf/melo-2026-v4/CITATION.md b/data/lulucf/melo-2026-v4/CITATION.md new file mode 100644 index 0000000..2e54d63 --- /dev/null +++ b/data/lulucf/melo-2026-v4/CITATION.md @@ -0,0 +1,8 @@ +# Citation + +## NGHGI-Reported LULUCF Emissions (Melo et al. 2026, v4.0.0) + +Melo, J., et al. (2026). The LULUCF Data Hub: translating global land use emissions estimates into the national GHG inventory framework (Version 4.0.0, 2026 NGHGI release). *Zenodo*. https://doi.org/10.5281/zenodo.22828743 + +Files: +- `timeseries_NGHGI_gap-filled_4.0.0.csv` — CO2 fluxes from the National Greenhouse Gas Inventories (NGHGIs) submitted to the UNFCCC, allocated to the classes Forest, Deforestation, Other non-forest land uses, Organic soils and Harvested wood products (HWP), with gaps filled. Units: MtCO2/yr. Sign convention: negative = net sink. Covers 187 countries, 2000-2024. diff --git a/data/rcbs/rcbs.yaml b/data/rcbs/rcbs.yaml index 4f45b07..191a9d4 100644 --- a/data/rcbs/rcbs.yaml +++ b/data/rcbs/rcbs.yaml @@ -1,16 +1,33 @@ # Remaining Carbon Budgets (RCBs) data # Each source includes: -# - baseline_year: The year from which the RCB is calculated +# - baseline_year: The year from which the RCB is calculated. A budget from +# the start of year X has baseline_year X. # - unit: The unit of the RCB values (typically Gt CO2) # - scenarios: Temperature and probability combinations with their RCB values -# -# Probability labels (e.g. 2p66) map to AR6 climate categories: -# 1.5p50 -> C1, 2p83 -> C2, 2p66 -> C3 +# - scenario_selection (optional): The rule that selects the AR6 scenarios +# behind the LULUCF, convention-gap and bunker deductions. +# ar6-category (default): the AR6 climate category mapped to the label, +# 1.5p50 -> C1, 2p83 -> C2, 2p66 -> C3. Any other label is an error. +# peak-warming-band: every scenario whose median peak warming +# (MAGICCv7.5.3) lies in [T - half_width, T + half_width), where T is +# the temperature in the label. One band serves every likelihood of T. +# A remaining carbon budget runs to net-zero CO2, so the band keeps only +# scenarios whose CO2 emissions reach zero by 2100. # # Sources report at slightly different probability levels: -# - AR6/Forster: 67% and 83% (mapped to 2p66, 2p83) +# - AR6/Forster 2024: 67% and 83% (mapped to 2p66, 2p83) # - Lamboll: 66% and 90% (mapped to 2p66; no 83% reported) +# Half-width of the peak-warming band, in degrees C. +peak_warming_band_half_width: 0.05 + +# Largest number of years that the rebase to 2020 may fill. When a world series +# (fossil CO2, bunkers, LULUCF) ends before the year before the baseline, each +# later year takes the last observed value, with a warning. This is a +# placeholder until observed data are published. 0 turns the fill off. A source +# that needs more years is skipped. +rebase_fill_max_years: 1 + rcb_data: lamboll_2023: # Lamboll et al (2023), "https://doi.org/10.1038/s41558-023-01848-5" baseline_year: 2023 @@ -35,3 +52,33 @@ rcb_data: "1.5p50": 500 "2p66": 1150 "2p83": 900 + + # Forster et al (2026), IGCC 2025, ESSD 18, 3889-3933, Table 8, + # "https://doi.org/10.5194/essd-18-3889-2026". Budgets from the start of 2026. + forster_2026: + baseline_year: 2026 + unit: "Gt * CO2" + scenario_selection: peak-warming-band + scenarios: + "1.5p50": 130 + "1.5p67": 80 + "1.7p50": 500 + "1.7p67": 390 + "2p50": 1050 + "2p67": 860 + "2p83": 690 + + # IPCC AR6 WGI (2021), Table SPM.2, "https://doi.org/10.1017/9781009157896.001". + # Budgets from the start of 2020. + ar6_wg1_2021: + baseline_year: 2020 + unit: "Gt * CO2" + scenario_selection: peak-warming-band + scenarios: + "1.5p50": 500 + "1.5p67": 400 + "1.7p50": 850 + "1.7p67": 700 + "2p50": 1350 + "2p67": 1150 + "2p83": 900 diff --git a/docs/api/utils/data.md b/docs/api/utils/data.md index 7df675d..6e742c4 100644 --- a/docs/api/utils/data.md +++ b/docs/api/utils/data.md @@ -106,6 +106,14 @@ Functions for parsing RCB scenarios and converting to allocation-ready budgets. heading_level: 4 show_source: false +### select_rcb_scenario_set + +::: fair_shares.library.utils.data.rcb.select_rcb_scenario_set + options: + show_root_heading: true + heading_level: 4 + show_source: false + ### calculate_budget_from_rcb ::: fair_shares.library.utils.data.rcb.calculate_budget_from_rcb @@ -122,6 +130,14 @@ Functions for parsing RCB scenarios and converting to allocation-ready budgets. heading_level: 4 show_source: false +### fill_rebase_years + +::: fair_shares.library.utils.data.rcb.fill_rebase_years + options: + show_root_heading: true + heading_level: 4 + show_source: false + ## See Also - **[Core Utilities](https://setupelz.github.io/fair-shares/api/utils/core/)**: General data manipulation functions diff --git a/docs/dev-guide/adding-data-sources.md b/docs/dev-guide/adding-data-sources.md index a4ef8c7..2922f46 100644 --- a/docs/dev-guide/adding-data-sources.md +++ b/docs/dev-guide/adding-data-sources.md @@ -18,7 +18,7 @@ Data sources are configured in `src/fair_shares/conf/data_sources/data_sources_u | Type | Purpose | Current Sources | | ------------ | ------------------------------------ | ---------------------- | -| `emissions` | Historical non-LULUCF emissions | PRIMAP-hist | +| `emissions` | Historical non-LULUCF emissions | PRIMAP-hist (default), Global Carbon Budget 2025 | | `gdp` | Economic capability | World Bank WDI | | `population` | Per capita calculations | UN/OWID | | `gini` | Within-country inequality | World Bank WDI (default), UNU-WIDER WIID | @@ -67,7 +67,8 @@ emissions: - co2-ffi - all-ghg world_key: "WORLD" # How the source identifies global totals - scenario: "HISTCR" # Historical scenario identifier + scenario: "HISTCR" # Optional: historical scenario identifier + bunkers_source: "gcb-2024" # Optional: registry name of the bunker data ``` ### Common Configuration Parameters @@ -77,6 +78,12 @@ emissions: | `path` | Relative path to data file | | `available_categories` | Which emission categories this source provides | | `world_key` | String used to identify global totals in the data | +| `scenario` | Optional. Historical scenario, for sources that have one | +| `bunkers_source` | Optional. Bunker data paired with an emissions source (default `gcb-2024`) | + +The pipeline asks an emissions source only for the categories in `available_categories`. A source that declares `co2-ffi` alone, such as `gcb-2025`, runs one pass of its notebook 101 and supports `co2-ffi` runs. + +Add every new source to `src/fair_shares/conf/data_registry.yaml` with its URL, checksums, licence and citation, and record each DOI in `tests/fixtures/verified_dois.yaml`. The config validates the path of every configured source, so a registered source downloads on first use. --- @@ -166,7 +173,7 @@ df.columns == ["gini"] ## Step 5: Integrate with Pipeline -The Snakemake workflow automatically picks up sources from the configuration. Ensure your preprocessing notebook: +The Snakemake workflow automatically picks up sources from the configuration. It builds the notebook name from the source key: `101_data_preprocess_emiss_{source}.py` for emissions and `108_data_preprocess_bunkers_{bunkers_source}.py` for bunkers. Ensure your preprocessing notebook: 1. Reads from the path specified in the config 2. Outputs to the standard processed data location @@ -228,7 +235,7 @@ Notebook 107 reads the raw LULUCF source and outputs: | Emission category | Uses LULUCF? | Why | |-------------------|-------------|-----| | `co2-ffi` | No | Fossil fuels only | -| `co2` | **Yes** | Total CO2 = fossil − bunkers + NGHGI LULUCF | +| `co2` | **Yes** | Country `co2` = `co2-ffi` + NGHGI `co2-lulucf` on shared years. Bunkers enter only at world and budget level | | `all-ghg` | **Yes** | Decomposes into `co2` (NGHGI) + `non-co2` | | `all-ghg-ex-co2-lulucf` | No | CO2 component is `co2-ffi` | | `co2-lulucf` | Indirect | IS the LULUCF data | @@ -317,6 +324,7 @@ New data sources should: | Notebook | Data Type | Good Example Of | | ------------------------------------------------ | ---------- | -------------------------------------------------- | | `101_data_preprocess_emiss_primap-202503.py` | Emissions | NetCDF processing, category mapping | +| `101_data_preprocess_emiss_gcb-2025.py` | Emissions | Long CSV, single category, logic in one library function | | `102_data_preprocess_gdp_wdi-2025.py` | GDP | CSV processing, country code mapping | | `103_data_preprocess_population_un-owid-2025.py` | Population | Combining historical and projected data | | `105_data_preprocess_gini_wdi-2025.py` | Gini | Latest-available-in-window selection, aggregate filtering | diff --git a/docs/science/allocations.md b/docs/science/allocations.md index 5126cc0..6d1775c 100644 --- a/docs/science/allocations.md +++ b/docs/science/allocations.md @@ -135,7 +135,7 @@ Reference year for calculating cumulative per capita allocations. **GDP window beyond the last observed year:** When the allocation cumulative window extends past the last year of the input GDP time series (the default `wdi-2025` ends at 2023), the per-capita budget and pathway primitives forward-fill GDP per capita from the last observed year to cover every subsequent year of the window. The cross-country capability ratios of the last observed year are then held constant for the rest of the window. The cumulative-per-capita-convergence primitives behave differently: their per-country capability scalar is computed only over the intersection of GDP and population years, with no forward-fill at all. In both cases, users who want different post-observation capability dynamics (SSP2 GDP projections, custom growth assumptions, or a future-extended WDI release) should extend the input `gdp_ts` time series before calling the allocation function. The forward-fill is the minimum-disruption default when no projected GDP data is supplied; the library does not prescribe a projection. -**Capability snapshot mode (`capability_reference_year: int | None = None`):** By default, capability is computed year-by-year — `pf(GDP_per_cap(g, t))` is evaluated for each country and year in the allocation window, then combined with that year's population. Setting `capability_reference_year` to an integer freezes capability at a single reference year instead: `pf(GDP_per_cap(g, t_ref))` is computed once per country from that year's data and broadcast across the rest of the window. Available on the adjusted approaches — `per_capita_adjusted_budget`, `per_capita_adjusted_gini_budget`, `per_capita_adjusted`, and `per_capita_adjusted_gini` — with identical semantics on the budget and pathway side; not available on `equal_per_capita*` (no capability term to freeze) or the convergence family. The reference year can be before, at, or after `allocation_year`. Year-by-year and snapshot modes are algebraically equivalent only when capability is constant over the window; in practice they diverge substantially for long windows spanning periods of economic change. See [capability_reference_year](parameter-effects.md#capability_reference_year) for the source-case mechanics (in-window, beyond-last-observed-year, pre-window) and the Gini interaction. +**Capability snapshot mode (`capability_reference_year: int | None = None`):** By default, capability is computed year-by-year — `pf(GDP_per_cap(g, t))` is evaluated for each country and year in the allocation window, then combined with that year's population. Setting `capability_reference_year` to an integer freezes capability at a single reference year instead: `pf(GDP_per_cap(g, t_ref))` is computed once per country from that year's data and broadcast across the rest of the window. Available on the adjusted approaches — `per_capita_adjusted_budget`, `per_capita_adjusted_gini_budget`, `per_capita_adjusted`, and `per_capita_adjusted_gini` — with identical semantics on the budget and pathway side; not available on `equal_per_capita*` (no capability term to freeze) or the convergence family. The reference year can be before, at, or after `allocation_year`. On the budget approaches a snapshot needs GDP at the reference year only, so `allocation_year` can be earlier than the first GDP year (allocation years start at 1850). Year-by-year and snapshot modes are algebraically equivalent only when capability is constant over the window; in practice they diverge substantially for long windows spanning periods of economic change. See [capability_reference_year](parameter-effects.md#capability_reference_year) for the source-case mechanics (in-window, beyond-last-observed-year, pre-window) and the Gini interaction. The canonical example of `ref_year < allocation_year` is the PRR2023 lag-1 convention: PRR2023 defines capability as GDP per capita in the year immediately preceding the allocation decision, so `allocation_year=2015` paired with `capability_reference_year=2014` is the reproduction-faithful configuration. The nb601 notebook (PRR2023 reproduction) uses exactly this. More broadly: use `capability_reference_year=1990` with `allocation_year=1990` for ESABCC 2023 `CPCadjCAP` results. diff --git a/docs/science/glossary.md b/docs/science/glossary.md index 3226dfe..314c040 100644 --- a/docs/science/glossary.md +++ b/docs/science/glossary.md @@ -303,7 +303,7 @@ Brief definitions. For detailed explanations and operationalization, see [Alloca : Megatonnes of CO2 per year. Common unit for annual emissions. **Melo et al. (2026)** -: Country-reported NGHGI LULUCF CO₂ timeseries (v3.1). Covers 187 countries, 2000-2023. Replaces Grassi et al. (2023) with higher coverage and an additional year. See: [NGHGI-Consistent RCB Corrections](other-operations.md#weber-rcb-corrections) +: Country-reported NGHGI LULUCF CO₂ timeseries (v3.1). Covers 185 countries, 2000-2023. Replaces Grassi et al. (2023) with higher coverage and an additional year. See: [NGHGI-Consistent RCB Corrections](other-operations.md#weber-rcb-corrections) **NGHGI** : National Greenhouse Gas Inventory. Country-level emissions reporting under UNFCCC. Includes passive carbon fluxes (CO₂ fertilization, climate feedbacks) in LULUCF estimates, unlike bookkeeping models. See: [NGHGI-Consistent RCB Corrections](other-operations.md#weber-rcb-corrections) diff --git a/docs/science/other-operations.md b/docs/science/other-operations.md index 7ab2c68..3fb0320 100644 --- a/docs/science/other-operations.md +++ b/docs/science/other-operations.md @@ -206,7 +206,7 @@ The correction methodology follows Weber et al. (2026). A central design princip | Symbol | Definition | | ------------------------------------- | ----------------------------------------------------------------------------------- | | $\text{RCB}_{\text{BM}}(\text{base})$ | Published Remaining Carbon Budget from baseline year, in BM convention | -| $F_{\text{actual}}(a, b)$ | Cumulative actual fossil CO₂ emissions from year $a$ to year $b$ (e.g. PRIMAP) | +| $F_{\text{actual}}(a, b)$ | Cumulative actual fossil CO₂ emissions without international bunkers, years $a$ to $b$ (e.g. PRIMAP) | | $L_{\text{BM}}(a, b)$ | Cumulative BM LULUCF CO₂ from scenario median (AFOLU\|Direct), years $a$ to $b$ | | $L_{\text{BM,actual}}(a, b)$ | Cumulative actual observed BM LULUCF CO₂ (e.g. PRIMAP co2-lulucf), years $a$ to $b$ | | $B(a, b)$ | Cumulative international bunker fuel CO₂ emissions, years $a$ to $b$ | @@ -221,19 +221,32 @@ The fossil-allocatable budget isolates the portion of the total carbon budget av $$ \mathrm{fossil{\_}budget}(2020) = \text{RCB}_{\text{BM}}(\text{base}) + F_{\text{actual}}(2020,\, \text{base}{-}1) + + B(2020,\, \text{base}{-}1) - L_{\text{BM}}(\text{base},\, \text{NZ}) - B(2020,\, \text{NZ}) $$ -The four terms are: +The five terms are: + +1. **$\text{RCB}_{\text{BM}}(\text{base})$** -- the published carbon budget, which covers _total_ anthropogenic CO₂ (fossil + international bunkers + BM LULUCF) from the baseline year onward. + +2. **$F_{\text{actual}}(2020,\, \text{base}{-}1)$** -- the fossil rebase. When the published baseline is after 2020, actual fossil emissions from 2020 to $\text{base}{-}1$ are added back. This uses only observational data (e.g. PRIMAP), never scenario projections. The world fossil series excludes international bunkers: the PRIMAP world total equals the sum of its countries, and the `gcb-2025` world row is the GCB global total minus bunkers. When $\text{base} = 2020$, this term is zero. -1. **$\text{RCB}_{\text{BM}}(\text{base})$** -- the published carbon budget, which covers _total_ anthropogenic CO₂ (fossil + BM LULUCF) from the baseline year onward. +3. **$B(2020,\, \text{base}{-}1)$** -- the bunker rebase. Observed bunker emissions from 2020 to $\text{base}{-}1$ are added back, because the published budget includes bunkers and the fossil rebase does not. When $\text{base} = 2020$, this term is zero. The output column is `rebase_bunkers_mt`. -2. **$F_{\text{actual}}(2020,\, \text{base}{-}1)$** -- the fossil rebase. When the published baseline is after 2020, actual fossil emissions from 2020 to $\text{base}{-}1$ are added back. This uses only observational data (e.g. PRIMAP), never scenario projections. When $\text{base} = 2020$, this term is zero. +4. **$L_{\text{BM}}(\text{base},\, \text{NZ})$** -- the LULUCF decomposition. Removes the BM LULUCF share of the budget from the baseline year to the scenario net-zero year, using AR6 scenario median pathways (AFOLU|Direct). This is the only way to separate the fossil and land-use portions of the total budget. -3. **$L_{\text{BM}}(\text{base},\, \text{NZ})$** -- the LULUCF decomposition. Removes the BM LULUCF share of the budget from the baseline year to the scenario net-zero year, using AR6 scenario median pathways (AFOLU|Direct). This is the only way to separate the fossil and land-use portions of the total budget. +5. **$B(2020,\, \text{NZ})$** -- the bunker deduction. Removes international aviation and shipping emissions that appear in global totals but are excluded from national inventories. Integrated from 2020 to NZ regardless of baseline year. Observed values run to the last year of the bunker data. Later years take the rate of that last year. -4. **$B(2020,\, \text{NZ})$** -- the bunker deduction. Removes international aviation and shipping emissions that appear in global totals but are excluded from national inventories. Integrated from 2020 to NZ regardless of baseline year. +#### Why the rebase adds bunkers + +The two bunker terms count each bunker year once. The bunker rebase restores the published budget to a total-CO₂ budget from 2020. The deduction then removes every bunker year from 2020 to NZ: + +$$ +B(2020,\, \text{base}{-}1) - B(2020,\, \text{NZ}) = -B(\text{base},\, \text{NZ}) +$$ + +The years 2020 to $\text{base}{-}1$ cancel, and the net deduction covers the years that the published budget holds. The result is the budget from 2020 without any bunker emissions, for every baseline year. A world emissions series without bunkers then extends it to other allocation years. #### Why LULUCF is absent from the co2-ffi rebase @@ -267,22 +280,25 @@ For budgets covering **total CO₂** including land use, LULUCF stays in the bud $$ \mathrm{nghgi{\_}budget}(2020) = \text{RCB}_{\text{BM}}(\text{base}) + F_{\text{actual}}(2020,\, \text{base}{-}1) + + B(2020,\, \text{base}{-}1) + L_{\text{BM,actual}}(2020,\, \text{base}{-}1) + \text{gap}(2020,\, \text{NZ}) - B(2020,\, \text{NZ}) $$ -The five terms are: +The six terms are: 1. **$\text{RCB}_{\text{BM}}(\text{base})$** -- the published carbon budget, same as for co2-ffi. 2. **$F_{\text{actual}}(2020,\, \text{base}{-}1)$** -- the fossil rebase, identical to co2-ffi. -3. **$L_{\text{BM,actual}}(2020,\, \text{base}{-}1)$** -- the BM LULUCF rebase. Unlike co2-ffi, actual observed BM LULUCF _is_ included in the rebase. This is because there is no LULUCF decomposition to cancel with -- the budget retains the full land-use component. Source: e.g. PRIMAP co2-lulucf (already in the pipeline). +3. **$B(2020,\, \text{base}{-}1)$** -- the bunker rebase, identical to co2-ffi. -4. **$\text{gap}(2020,\, \text{NZ})$** -- the BM-to-NGHGI convention gap. Covers the full period from 2020 (not from $\text{base}$) because the BM LULUCF rebase is in BM convention — the gap for the rebase years converts it to NGHGI. This quantity is negative (NGHGI reports a larger land sink than BM), so it reduces the allocatable budget. Computed from NGHGI actual LULUCF and scenario BM LULUCF (AFOLU|Direct) data (see [Convention gap decomposition](#convention-gap-decomposition)). +4. **$L_{\text{BM,actual}}(2020,\, \text{base}{-}1)$** -- the BM LULUCF rebase. Unlike co2-ffi, actual observed BM LULUCF _is_ included in the rebase. This is because there is no LULUCF decomposition to cancel with -- the budget retains the full land-use component. Source: e.g. PRIMAP co2-lulucf (already in the pipeline). -5. **$B(2020,\, \text{NZ})$** -- the bunker deduction, same as for co2-ffi. +5. **$\text{gap}(2020,\, \text{NZ})$** -- the BM-to-NGHGI convention gap. Covers the full period from 2020 (not from $\text{base}$) because the BM LULUCF rebase is in BM convention — the gap for the rebase years converts it to NGHGI. This quantity is negative (NGHGI reports a larger land sink than BM), so it reduces the allocatable budget. Computed from NGHGI actual LULUCF and scenario BM LULUCF (AFOLU|Direct) data (see [Convention gap decomposition](#convention-gap-decomposition)). + +6. **$B(2020,\, \text{NZ})$** -- the bunker deduction, same as for co2-ffi. #### Why the co2 rebase includes actual BM LULUCF @@ -295,13 +311,65 @@ The formulas enforce a strict separation: | Quantity | Data type | Rationale | | ------------------------------------------------------- | ------------------------------- | --------------------------------------------------------------------- | | Fossil rebase ($F_{\text{actual}}$) | Actual (e.g. PRIMAP) | Observed emissions -- no projection uncertainty | +| Bunker rebase ($B$, 2020 to $\text{base}{-}1$) | Actual (GCB bunker series) | Same rationale | | BM LULUCF rebase ($L_{\text{BM,actual}}$, co2 only) | Actual (e.g. PRIMAP co2-lulucf) | Same rationale | | BM LULUCF decomposition ($L_{\text{BM}}$, co2-ffi only) | Scenario median (AFOLU\|Direct) | Requires future pathway to NZ; no observational data exists | | Convention gap ($\text{gap}$) | Scenario-based | Forward-looking NGHGI--BM difference requires modeled indirect fluxes | | Net-zero year ($\text{NZ}$) | Scenario data | By definition a future quantity | | Bunker deduction ($B$) | Observational + extrapolation | Historical data extended at last observed rate to NZ | -This means that adding a new RCB source (e.g., Lamboll et al. with baseline 2023) only requires actual emissions data through 2022 for the rebase. The LULUCF decomposition integrates from $\text{base}$ (co2-ffi), while the convention gap and bunker deduction always cover the full 2020--NZ period. +This means that adding a new RCB source (e.g., Lamboll et al. with baseline 2023) only requires actual emissions and bunker data through 2022 for the rebase. The LULUCF decomposition integrates from $\text{base}$ (co2-ffi), while the convention gap and bunker deduction always cover the full 2020--NZ period. + +The rebase needs a value for every year from 2020 to $\text{base}{-}1$ in each series it adds: fossil emissions, bunkers and, for co2, LULUCF. + +#### Placeholder for unobserved rebase years + +A series can end before $\text{base}{-}1$. Each later year then takes the last observed value of that series. This fill is a placeholder until observed data are published. `rebase_fill_max_years` in `rcbs.yaml` sets the largest number of years that one series may take this way (default 1; 0 turns the fill off). Every fill raises a warning that names the source, the series, the filled years and the value. + +A source that needs more years than the limit is left out of the processed budgets, and the pipeline prints a warning that names the missing years. `forster_2026` (baseline 2026) needs values through 2025. With `gcb-2025` emissions and bunkers (observed to 2024) the rebase fills 2025 with the 2024 values. With PRIMAP (observed to 2023) two years are missing and the source is left out. `lamboll_2023` and `forster_2024` need no fill with either emissions source. + +The bunker deduction already holds the last observed rate for later years. A filled bunker year in the rebase therefore cancels exactly against the same year in the deduction. + +### RCB sources and scenario sets + +`data/rcbs/rcbs.yaml` holds five sources. A budget from the start of year $X$ has `baseline_year: X`. + +| Source key | Publication | Budget from | Scenario selection | +| -------------- | ---------------------------------------------------------------------------------------------------- | ------------- | ------------------ | +| `lamboll_2023` | [Lamboll et al. 2023](https://doi.org/10.1038/s41558-023-01848-5) | Start of 2023 | AR6 category | +| `forster_2024` | [Forster et al. 2024](https://doi.org/10.5194/essd-16-2625-2024), IGCC 2023 | Start of 2024 | AR6 category | +| `ar6_2020` | IPCC AR6 WGI | Start of 2020 | AR6 category | +| `forster_2026` | [Forster et al. 2026](https://doi.org/10.5194/essd-18-3889-2026), IGCC 2025, Table 8 | Start of 2026 | Peak-warming band | +| `ar6_wg1_2021` | [IPCC AR6 WGI, Table SPM.2](https://doi.org/10.1017/9781009157896.001) | Start of 2020 | Peak-warming band | + +The two band sources carry seven budgets each (GtCO₂, total anthropogenic CO₂): + +| Label | Temperature | Likelihood | `forster_2026` | `ar6_wg1_2021` | +| -------- | ----------- | ---------- | -------------- | -------------- | +| `1.5p50` | 1.5°C | 50% | 130 | 500 | +| `1.5p67` | 1.5°C | 67% | 80 | 400 | +| `1.7p50` | 1.7°C | 50% | 500 | 850 | +| `1.7p67` | 1.7°C | 67% | 390 | 700 | +| `2p50` | 2°C | 50% | 1050 | 1350 | +| `2p67` | 2°C | 67% | 860 | 1150 | +| `2p83` | 2°C | 83% | 690 | 900 | + +Every deduction (LULUCF decomposition, convention gap, net-zero year for bunkers) is a median over a set of AR6 scenarios. The `scenario_selection` field of each source in `rcbs.yaml` names the rule that selects the set: + +- **`ar6-category`** (default when the field is absent). The set is one AR6 climate category: `1.5p50` uses C1 (70 scenarios), `2p83` uses C2 (106), `2p66` uses C3 (231). Any other label raises an error that names the source and the label. +- **`peak-warming-band`**. The set is every AR6 scenario whose `Median peak warming (MAGICCv7.5.3)` lies in $[T - 0.05,\; T + 0.05)$, where $T$ is the budget temperature, and that reaches net-zero CO₂ by 2100. A remaining carbon budget runs to net-zero CO₂, so scenarios that never reach it are excluded. The band spans AR6 categories. A band that selects no scenario raises an error that names the temperature and the band. + +One band serves every likelihood of its temperature. The published likelihoods cover TCRE uncertainty only, so the 50%, 67% and 83% budgets of one temperature share the same LULUCF, convention-gap and bunker deductions. + +With the Gidden et al. AR6 metadata, the bands hold 14 scenarios at 1.5°C (all in C1), 131 at 1.7°C (50 in C2, 81 in C3) and 69 at 2°C (34 in C4, 35 in C5). Of these, 14, 111 and 37 scenarios reach net-zero CO₂ by 2100 and form the scenario sets. The 1.5°C deductions rest on 14 scenarios. + +The net-zero test is the one that sets the integration bounds (see [Per-scenario net-zero years](#per-scenario-net-zero-years-as-integration-bounds)): the first year in which the scenario's `Emissions|CO2` time series is at or below zero. The filter and the deduction horizon therefore use one definition. + +The band half-width is the `peak_warming_band_half_width` value in `rcbs.yaml` (default 0.05). Set it to 0.1 for a sensitivity run. + +Notebook 104 stores the results per scenario set in `rcb_scenario_adjustments.yaml`. Category sets are keyed by label (e.g., `1.5p50`), band sets by temperature (e.g., `peak-warming-1.7C`). The selection logic is `select_rcb_scenario_set()` in `src/fair_shares/library/utils/data/rcb.py`. + +The seven-label sources serve the `co2-ffi` and `co2` budget targets. Composite targets (`all-ghg`, `all-ghg-ex-co2-lulucf`) add a non-CO₂ scenario pathway per temperature and likelihood, and those pathways exist for 1.5°C at 50%, 2°C at 66% and 2°C at 83% only. ### Why two LULUCF conventions matter @@ -315,9 +383,9 @@ Forward-looking quantities (LULUCF decomposition, convention gap, bunker deducti Note that `Emissions|CO2` in IAM scenario databases is fossil + BM LULUCF by convention — this is a property of how scenarios report total CO₂, not a methodological choice by fair-shares. -Per-scenario net-zero years are computed from scenario data (e.g. Gidden et al. AR6 reanalysis). Scenario-level summary statistics (median, quartiles) are stored in `rcb_scenario_adjustments.yaml` in the pipeline output directory, keyed by RCB scenario label (e.g., `1.5p50`). The scenario-level median NZ year is used for the bunker integration endpoint (which is observational, not scenario-dependent). +Per-scenario net-zero years are computed from scenario data (e.g. Gidden et al. AR6 reanalysis). Scenario-level summary statistics (median, quartiles) are stored in `rcb_scenario_adjustments.yaml` in the pipeline output directory, keyed by scenario set (e.g., `1.5p50` or `peak-warming-1.7C`; see [RCB sources and scenario sets](#rcb-sources-and-scenario-sets)). The scenario-level median NZ year is used for the bunker integration endpoint (which is observational, not scenario-dependent). -Scenarios that never reach net-zero total CO₂ before 2100 are assigned 2100 as a conservative upper integration bound. +Scenarios that never reach net-zero total CO₂ by 2100 are assigned 2100 as a conservative upper integration bound. This applies to the AR6 category sets (38 of 231 scenarios in C3). The peak-warming band sets hold no such scenario. ### Convention gap decomposition @@ -348,15 +416,17 @@ The total per-scenario gap is $\text{Gap}_i = \text{Gap}_{i,\text{hist}} + \text When the allocation year is before 2020, historical emissions must be added back to the RCB (see [RCB Pathway Generation](#rcb-pathway-generation) above). For total CO₂, the per-year world emissions use the NGHGI convention: $$ -E_{\text{world}}(t) = E_{\text{fossil}}(t) - E_{\text{bunkers}}(t) + \text{LULUCF}(t) +E_{\text{world}}(t) = E_{\text{fossil}}(t) + \text{LULUCF}(t) $$ +$E_{\text{fossil}}$ is the world fossil series, which excludes international bunkers. The series therefore matches the adjusted budget, which holds no bunker emissions. `build_nghgi_world_co2_timeseries()` and the preprocessing notebooks build the same series. + Where LULUCF uses: - **2000 onwards**: NGHGI LULUCF (e.g. Melo v3.1, nationally aggregated inventory data) - **Pre-2000**: Not available in NGHGI convention. Categories including LULUCF are limited to the NGHGI data range (2000+). No NGHGI/BM splicing is performed. While earlier NGHGI LULUCF estimates may exist (e.g., via Grassi et al. or historical extensions of Melo), the official NGHGI data begins in 2000. Extending to 1990 would require splicing heterogeneous datasets, which risks introducing artefacts (the BM-to-NGHGI transition around 1990 shows a large jump). We plan to extend coverage when validated pre-2000 NGHGI LULUCF data becomes available. -This ensures the world timeseries passed to `calculate_budget_from_rcb` is NGHGI-consistent, and that function works identically for both `co2-ffi` and `co2` categories. +This ensures the world timeseries passed to `calculate_budget_from_rcb` is NGHGI-consistent, and that function works identically for both `co2-ffi` and `co2` categories. An allocation year before the first year of the world series raises an error that names the first available year. ### Data requirements for new scenario sources @@ -370,7 +440,7 @@ When adding a new RCB source (e.g., a new publication with a different baseline | Per-year BM LULUCF pathway | co2-ffi LULUCF decomposition | Scenario data (AFOLU\|Direct median) | | Net-zero year | Integration limit for bunkers + LULUCF | Scenario data | | Convention gap | co2 BM-to-NGHGI adjustment | NGHGI + scenario Indirect AFOLU | -| Bunker fuel timeseries | Bunker deduction | NGHGI (already in pipeline) | +| Bunker fuel timeseries | Bunker rebase and bunker deduction | GCB (already in pipeline) | The first three rows are observational and already available in the pipeline. The remaining four require scenario data for the new source's mitigation pathway category. @@ -380,11 +450,11 @@ The first three rows are observational and already available in the pipeline. Th | ------------------ | --------------------------------------------- | ---------------------------------------- | | Fossil CO₂ | PRIMAP-hist v2.6.1 | 1750--present | | BM LULUCF (actual) | PRIMAP co2-lulucf | Country-level, annual | -| NGHGI LULUCF | Melo et al. (2026) v3.1 NGHGI LULUCF | 2000--2023, 187 countries + world | +| NGHGI LULUCF | Melo et al. (2026) v3.1 NGHGI LULUCF | 2000--2023, 185 countries + world | | BM LULUCF proxy | Gidden et al. AR6 reanalysis, AFOLU\|Direct | 2015--2100, per scenario within category | | Passive flux | Gidden et al. AR6 reanalysis, AFOLU\|Indirect | 2015--2100, per scenario within category | | Net-zero years | Gidden et al. AR6 reanalysis, Emissions\|CO2 | Per scenario (first year total CO₂ ≤ 0) | -| Bunker fuels | GCB2024 historical + rate extrapolation | Historical + extrapolated to median NZ | +| Bunker fuels | GCB historical + rate extrapolation | Observed to the last year of the data, then that rate to median NZ | **[API Reference →](https://setupelz.github.io/fair-shares/api/utils/data/#nghgi-corrections)** | `src/fair_shares/library/utils/data/nghgi.py` @@ -398,6 +468,7 @@ Using `ar6_2020` source: 500 GtCO₂ total from 2020, scenario `1.5p50` (70 C1 s | ----------------------------- | ---------------------- | --------------------- | | Published RCB (total CO₂) | 500 Gt | 500 Gt | | Fossil rebase | 0 (base=2020) | 0 (base=2020) | +| Bunker rebase | 0 (base=2020) | 0 (base=2020) | | BM LULUCF rebase | -- | 0 (base=2020) | | LULUCF decomposition / gap | **0** (BM sink capped) | **-90 Gt** (conv gap) | | Bunker subtraction | -35 Gt | -35 Gt | @@ -407,16 +478,19 @@ Using `ar6_2020` source: 500 GtCO₂ total from 2020, scenario `1.5p50` (70 C1 s **co2:** The convention gap is -90 Gt — NGHGI reports a larger land CO₂ sink than bookkeeping models, reducing the allocatable budget. The gap is computed from NGHGI actual LULUCF and scenario BM LULUCF data (see [Convention gap decomposition](#convention-gap-decomposition)). Bunker deduction is ~35 Gt (~870 Mt/yr integrated to median NZ year ~2050). The co2 budget is lower than co2-ffi because the convention gap is a significant negative adjustment. -For [Lamboll 2023](https://doi.org/10.1038/s41558-023-01848-5) (`1.5C`, 247 Gt from 2023): +For [Lamboll 2023](https://doi.org/10.1038/s41558-023-01848-5) (`lamboll_2023`, `1.5p50`, 250 Gt from 2023): -| | co2-ffi | co2 | -| ----------------------------- | ---------------------- | --------------------- | -| Published RCB | 247 Gt | 247 Gt | -| Fossil rebase (2020--2022) | +107 Gt | +107 Gt | -| BM LULUCF rebase (2020--2022) | -- | -12 Gt | -| LULUCF decomposition / gap | **0** (BM sink capped) | **-90 Gt** (conv gap) | -| Bunker subtraction | -35 Gt | -35 Gt | -| **Allocatable budget (2020)** | **319 Gt** | **217 Gt** | +| | co2-ffi | co2 | +| ----------------------------- | ---------------------- | ----------------------- | +| Published RCB | 250 Gt | 250 Gt | +| Fossil rebase (2020--2022) | +106.6 Gt | +106.6 Gt | +| Bunker rebase (2020--2022) | +2.8 Gt | +2.8 Gt | +| BM LULUCF rebase (2020--2022) | -- | -12.1 Gt | +| LULUCF decomposition / gap | **0** (BM sink capped) | **-90.3 Gt** (conv gap) | +| Bunker subtraction (2020--NZ) | -34.7 Gt | -34.7 Gt | +| **Allocatable budget (2020)** | **324.8 Gt** | **222.4 Gt** | + +The bunker rebase and the bunker subtraction together remove the bunkers of 2023 to NZ (31.8 Gt), the years that the published budget covers. #### Step 2: Allocation year adjustment diff --git a/docs/science/parameter-effects.md b/docs/science/parameter-effects.md index af7e893..48c6f28 100644 --- a/docs/science/parameter-effects.md +++ b/docs/science/parameter-effects.md @@ -126,6 +126,10 @@ budget and pathway approaches with identical semantics. with a warning; a year outside the data range raises. On the Gini-adjusted approaches the Gini adjustment applies in all three cases — which input the snapshot is read from does not change the capability definition. +- **Start years before the GDP series:** with a reference year set, the budget + approaches need GDP at that year only. `allocation_year` can then be earlier + than the first GDP year, down to 1850. With no reference year, an allocation + year before the GDP series raises an error. **When to use:** replicating studies that fix capability at a reference year (e.g. a single-year GDP-per-capita indicator), or holding the capability diff --git a/docs/user-guide/data-sources.md b/docs/user-guide/data-sources.md index e7cdc47..7d0564d 100644 --- a/docs/user-guide/data-sources.md +++ b/docs/user-guide/data-sources.md @@ -17,7 +17,9 @@ Bundled sources carry different terms. Check the per-source entry below before r | Data Type | Source | License | Citation Required | | -------------- | ---------------------- | ------------------ | ----------------- | | Emissions | PRIMAP-hist v2.6.1 | **CC-BY-4.0** | Yes | +| Emissions (opt-in) | Global Carbon Budget 2025 (2025v15) | **CC-BY-4.0** | Yes | | LULUCF | Melo et al. 2026 v3.1 | **CC-BY-4.0** (Zenodo) | Yes | +| LULUCF (opt-in) | Melo et al. 2026 v4.0.0 | **CC-BY-4.0** (Zenodo) | Yes | | Population | UN/OWID 2025 | Mixed — see below | Yes | | GDP | World Bank WDI 2025 | **CC-BY-4.0** | Yes | | Gini (default) | World Bank WDI 2025 (SI.POV.GINI) | **CC-BY-4.0** | Yes | @@ -27,6 +29,7 @@ Bundled sources carry different terms. Check the per-source entry below before r | Carbon budgets | Lamboll et al. 2023 | Published values | Yes | | Carbon budgets | Forster et al. 2024 | Published values | Yes | | Bunker fuels | Global Carbon Budget 2024 | paper **CC-BY-4.0**; data product under GCP terms | Yes | +| Bunker fuels (with `gcb-2025` emissions) | Global Carbon Budget 2025 (2025v15) | **CC-BY-4.0** | Yes | --- @@ -44,6 +47,27 @@ Bundled sources carry different terms. Check the per-source entry below before r **What it provides:** National greenhouse gas emissions by country (1750-2023), including CO2 from fossil fuels, land use, and other GHGs. +### Global Carbon Budget 2025 (opt-in) + +**Source (data product):** Andrew, R. M., & Peters, G. P. (2025). The Global Carbon Project's fossil CO2 emissions dataset (2025v15). Zenodo. [doi:10.5281/zenodo.17417124](https://doi.org/10.5281/zenodo.17417124) + +**Source (paper):** Friedlingstein, P., et al. (2026). Global Carbon Budget 2025. *Earth System Science Data*, 18, 3211-3288. [doi:10.5194/essd-18-3211-2026](https://doi.org/10.5194/essd-18-3211-2026) + +**License:** [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/). Cite both DOIs. + +**Location:** `data/emissions/gcb-2025/`. Opt-in: a plain `fair-shares fetch-data` does not download it. Fetch it with `fair-shares fetch-data --source gcb-2025`. + +**What it provides:** Territorial fossil CO2 (`co2-ffi`) by country, 1850 to 2024, in MtCO2 per year. Select it with `active_emissions_source=gcb-2025`. The default stays `primap-202503`. The source declares `co2-ffi` only, and the pipeline asks it for no other category. + +**Processing rules** (`notebooks/101_data_preprocess_emiss_gcb-2025.py`): + +- **Blank years count as zero.** The file leaves a year blank where it reports those emissions under another entity or reports none. Most blanks precede a country's first record. The GCB global total treats every blank as zero. +- **The world row excludes bunkers and the oil fires.** World row = GCB global total minus international shipping, international aviation and the 1991 Kuwaiti oil fires (478 MtCO2). These three belong to no country. The run saves them to `emiss_co2-ffi_excluded_timeseries.csv`, so that world row + excluded rows = GCB global total for every year. +- **Rows outside the region mapping go to rest-of-world.** Kosovo and Antarctica have ISO codes that the region mapping lacks. "Pacific Islands (Palau)" (1955 to 1991, 4.43 MtCO2 in total) and "Ryukyu Islands" (1965 to 1972, 0.82 MtCO2 in total) have no ISO code. The official GCB workbook keeps both in its World column and in no country column, and this source does the same. +- **Bunkers come from the same file.** Runs on `gcb-2025` deduct international shipping plus aviation from this file. Runs on `primap-202503` keep the Global Carbon Budget 2024 workbook. + +With the default GDP and population sources, the analysis holds the same 177 countries as a PRIMAP run. World `co2-ffi` in 2020 is 34,319 MtCO2 (PRIMAP: 34,343). + --- ## LULUCF Data @@ -58,7 +82,19 @@ Bundled sources carry different terms. Check the per-source entry below before r **Location:** `data/lulucf/melo-2026/` -**What it provides:** NGHGI-reported CO2 LULUCF fluxes for 187 countries (2000–2023). Used for all emission categories that include land use (co2, all-ghg). See [Other Operations](../science/other-operations.md) for how NGHGI LULUCF data enters the pipeline. +**What it provides:** NGHGI-reported CO2 LULUCF fluxes for 185 countries (2000–2023). Used for all emission categories that include land use (co2, all-ghg). See [Other Operations](../science/other-operations.md) for how NGHGI LULUCF data enters the pipeline. + +### Melo et al. (NGHGI LULUCF), v4.0.0 (opt-in) + +**Source:** Melo, J., et al. (2026). The LULUCF Data Hub: translating global land use emissions estimates into the national GHG inventory framework (Version 4.0.0, 2026 NGHGI release). Zenodo. + +**DOI:** [10.5281/zenodo.22828743](https://doi.org/10.5281/zenodo.22828743) + +**License:** [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/) (Zenodo) + +**Location:** `data/lulucf/melo-2026-v4/` + +**What it provides:** The gap-filled NGHGI CO2 LULUCF file for 187 countries (2000–2024). Select it with `active_lulucf_source=melo-2026-v4`. Fetch it with `fair-shares fetch-data --source melo-2026-v4`. The default stays `melo-2026` (v3.1.1). --- @@ -160,6 +196,10 @@ The global remaining carbon budget (RCB) is a key input for budget-based allocat | Lamboll et al. 2023 | 250 GtCO2 | 1.5°C | 50% | 2023 | Methodology paper for updated RCB estimates | | Forster et al. 2024 | 200 GtCO2 | 1.5°C | 50% | 2024 | IGCC 2023; latest usable with PRIMAP v2.6.1 (through 2023) | | IPCC AR6 WGI | 500 GtCO2 | 1.5°C | 50% | 2020 | Original AR6 estimates from WG1 Chapter 5 | +| Forster et al. 2026 | 130 GtCO2 | 1.5°C | 50% | 2026 | IGCC 2025, Table 8; also 1.7°C and 2°C. Needs emissions through 2025; one missing year takes the last observed value | +| IPCC AR6 WGI (SPM) | 500 GtCO2 | 1.5°C | 50% | 2020 | Table SPM.2; also 1.7°C and 2°C (`ar6_wg1_2021`) | + +The last two sources (`forster_2026`, `ar6_wg1_2021`) carry seven budgets each and select their deduction scenarios by peak-warming band. See [RCB sources and scenario sets](../science/other-operations.md#rcb-sources-and-scenario-sets). **Citations:** @@ -167,6 +207,10 @@ The global remaining carbon budget (RCB) is a key input for budget-based allocat > Forster, P. M., et al. (2024). Indicators of Global Climate Change 2023. _Earth System Science Data_, 16, 2625–2680. [doi:10.5194/essd-16-2625-2024](https://doi.org/10.5194/essd-16-2625-2024) +> Forster, P. M., et al. (2026). Indicators of Global Climate Change 2025. _Earth System Science Data_, 18, 3889–3933. [doi:10.5194/essd-18-3889-2026](https://doi.org/10.5194/essd-18-3889-2026) + +> IPCC (2021). Summary for Policymakers. In _Climate Change 2021: The Physical Science Basis_. Cambridge University Press. [doi:10.1017/9781009157896.001](https://doi.org/10.1017/9781009157896.001) + !!! note "Budget choice is normatively significant" The choice of carbon budget (source, temperature target, probability level) corresponds to Entry Point 2 of the fair share quantification framework — the allocation quantity [Pelz 2025b](https://doi.org/10.1088/1748-9326/ada45f). Results are sensitive to this choice. Always document the budget source, temperature target, and probability level when reporting allocation results. @@ -202,6 +246,8 @@ The choice of carbon budget (source, temperature target, probability level) corr **What it provides:** International aviation and shipping CO2 emissions, used to deduct bunker fuels from national remaining carbon budgets. See [Other Operations](../science/other-operations.md) for methodology. +Each emissions source names its bunker data (`bunkers_source` in `data_sources_unified.yaml`). The default is this workbook. Runs on `gcb-2025` emissions take bunkers from the [Global Carbon Budget 2025](#global-carbon-budget-2025-opt-in) file. + --- ## Attribution in Your Work diff --git a/notebooks/101_data_preprocess_emiss_gcb-2025.py b/notebooks/101_data_preprocess_emiss_gcb-2025.py new file mode 100644 index 0000000..8e223ac --- /dev/null +++ b/notebooks/101_data_preprocess_emiss_gcb-2025.py @@ -0,0 +1,143 @@ +# --- +# jupyter: +# jupytext: +# cell_metadata_filter: tags,-all +# formats: ipynb,py:percent +# text_representation: +# extension: .py +# format_name: percent +# format_version: '1.3' +# jupytext_version: 1.16.6 +# kernelspec: +# display_name: Python 3 (ipykernel) +# language: python +# name: python3 +# --- + +# %% [markdown] +# # Global Carbon Budget 2025 Emissions Data Preprocessing +# +# Territorial fossil CO2 (`co2-ffi`) by country, 1850 to 2024, in MtCO2 per year. +# +# **Source:** Andrew and Peters (2025), Global Carbon Project fossil CO2 +# emissions dataset, version 2025v15, doi:10.5281/zenodo.17417124. Paper: +# Friedlingstein et al. (2026), doi:10.5194/essd-18-3211-2026. +# +# The transformation is `fair_shares.library.utils.data.gcb.gcb_fossil_co2`. +# It applies four rules. +# +# 1. **Years.** 1850 to 2024. The file starts in 1750; earlier years are dropped. +# 2. **Blank years count as zero.** The file leaves a year blank where it +# reports those emissions under another entity or reports none. Most blanks +# precede a country's first record. Some sit inside a series (Ireland 1851 +# to 1923, reported under the United Kingdom). The GCB global total treats +# every blank as zero, and so does this notebook. +# 3. **World row.** GCB global total minus international shipping (`XIS`), +# international aviation (`XIA`) and the Kuwaiti oil fires (478 MtCO2, 1991 +# only). These three belong to no country. They are saved to +# `emiss_co2-ffi_excluded_timeseries.csv`, so that for every year +# world row + excluded rows = GCB global total. +# 4. **Country rows.** A country row is an ISO3 code in the region mapping. +# Every other row stays in the world row and so lands in rest-of-world: +# - Kosovo (`KSV`) and Antarctica (`ATA`), which the region mapping lacks. +# - "Pacific Islands (Palau)" (1955 to 1991, 4.43 MtCO2 in total, at most +# 0.23 per year) and "Ryukyu Islands" (1965 to 1972, 0.82 MtCO2 in total, +# at most 0.13 per year). These rows have no ISO code. The official GCB +# workbook (National_Fossil_Carbon_Emissions_2025) keeps both in its World +# column and in no country column: its Palau column is blank before 1992 +# and its Japan column equals the flat-file Japan row without Ryukyu. +# +# **Output:** `intermediate/emissions/emiss_co2-ffi_timeseries.csv` + +# %% +import pandas as pd +import yaml +from pyprojroot import here + +from fair_shares.library.exceptions import ConfigurationError +from fair_shares.library.utils import build_source_id +from fair_shares.library.utils.data.gcb import gcb_fossil_co2 + +# %% tags=["parameters"] +emission_category = None +active_target_source = None +active_emissions_source = None +active_gdp_source = None +active_population_source = None +active_gini_source = None +active_lulucf_source = None +source_id = None + +# %% +if emission_category is not None: + # Running via Papermill + if source_id is None: + source_id = build_source_id( + emissions=active_emissions_source, + gdp=active_gdp_source, + population=active_population_source, + gini=active_gini_source, + lulucf=active_lulucf_source, + target=active_target_source, + emission_category=emission_category, + ) + with open(here() / f"output/{source_id}/config.yaml") as f: + config = yaml.safe_load(f) +else: + # Running interactively + from fair_shares.library.utils.data.config import build_data_config + + emission_category = "co2-ffi" + active_emissions_source = "gcb-2025" + config, source_id = build_data_config( + emission_category, + { + "emissions": active_emissions_source, + "gdp": "wdi-2025", + "population": "un-owid-2025", + "gini": "wdi-2025", + "target": "rcbs", + }, + ) + config = config.model_dump() + +# %% +project_root = here() +emissions_config = config["emissions"][active_emissions_source] +world_key = emissions_config["data_parameters"]["world_key"] + +if emission_category != "co2-ffi": + raise ConfigurationError( + f"{active_emissions_source} provides co2-ffi only, got '{emission_category}'" + ) + +intermediate_dir = project_root / f"output/{source_id}/intermediate/emissions" +intermediate_dir.mkdir(parents=True, exist_ok=True) + +# %% [markdown] +# ## Load and process data + +# %% +raw = pd.read_csv(project_root / emissions_config["path"]) +region_mapping = pd.read_csv(project_root / config["general"]["region_mapping"]["path"]) + +emissions, excluded = gcb_fossil_co2(raw, set(region_mapping["iso3c"]), world_key) + +# %% +emissions.reset_index().to_csv( + intermediate_dir / "emiss_co2-ffi_timeseries.csv", index=False +) +excluded.reset_index().to_csv( + intermediate_dir / "emiss_co2-ffi_excluded_timeseries.csv", index=False +) + +# %% [markdown] +# ## Summary + +# %% +world = emissions.xs(world_key, level="iso3c").iloc[0] +print(f"Country rows: {len(emissions) - 1}") +print(f"Years: {emissions.columns[0]} to {emissions.columns[-1]}") +print(f"World row ({world_key}) in 2024: {world['2024']:.1f} MtCO2") +print("Excluded from the world row in 2024 (MtCO2):") +print(excluded["2024"].round(1).to_string()) diff --git a/notebooks/104_data_preprocess_scenarios_ar6.py b/notebooks/104_data_preprocess_scenarios_ar6.py index b407e69..ab7cfdc 100644 --- a/notebooks/104_data_preprocess_scenarios_ar6.py +++ b/notebooks/104_data_preprocess_scenarios_ar6.py @@ -60,6 +60,14 @@ process_iamc_zip, ) from fair_shares.library.preprocessing import emissions_path +from fair_shares.library.utils.data.rcb import ( + AR6_CATEGORY_BY_RCB_LABEL, + NET_ZERO_YEAR_COLUMN, + PEAK_WARMING_COLUMN, + build_rcb_scenario_sets, + net_zero_year, +) +from fair_shares.library.utils.dataframes import normalize_metadata_column from fair_shares.library.utils.units import _clean_unit_string # %% tags=["parameters"] @@ -273,7 +281,9 @@ # The scenario label encodes temperature target + probability (e.g. "1.5p50"). # Used internally during processing; converted to clean (assessment, quantile) # format at output time via _SCENARIO_TO_ASSESSMENT / _SCENARIO_TO_QUANTILE. -_AR6_TO_SCENARIO = {"C1": "1.5p50", "C2": "2p83", "C3": "2p66"} +_AR6_TO_SCENARIO = { + category: label for label, category in AR6_CATEGORY_BY_RCB_LABEL.items() +} _AR6_CATEGORIES_TO_PROCESS = list(_AR6_TO_SCENARIO.keys()) desired_climate_assessments = list(_AR6_TO_SCENARIO.values()) @@ -298,7 +308,18 @@ # %% # Process the scenario source print(f"Processing {active_target_source} scenarios...") -df = process_iamc_zip(project_root / scenario_path) +df = process_iamc_zip( + project_root / scenario_path, metadata_columns=[PEAK_WARMING_COLUMN] +) + +# Scenario metadata, one row per scenario, for the RCB scenario sets. +_peak_warming_column = normalize_metadata_column(PEAK_WARMING_COLUMN) +scenario_metadata = ( + df[["Model", "Scenario", "Category", _peak_warming_column]] + .drop_duplicates() + .rename(columns={_peak_warming_column: PEAK_WARMING_COLUMN}) +) +df = df.drop(columns=[_peak_warming_column]) # %% [markdown] # ## Load historical emissions for harmonisation @@ -407,6 +428,9 @@ def extract_unit_from_data(var_df): # Rename 'Category' to 'climate-assessment' and relabel to RCB scenario labels df = df.rename(columns={"Category": "climate-assessment"}) +# The RCB scenario sets draw on every category (peak-warming bands span categories). +df_all_categories = df + # Filter to AR6 categories that have a corresponding RCB scenario print(f"Filtering to AR6 categories: {_AR6_CATEGORIES_TO_PROCESS}") df_before_filter = len(df) @@ -798,23 +822,72 @@ def _derive_category(minuend_key, subtrahend_key, new_category): print(f" non-co2 shape: {non_co2.shape}") # %% [markdown] -# ## Pre-compute RCB adjustment scalars per AR6 category +# ## Pre-compute RCB adjustment scalars per scenario set # -# For RCB-based allocations, the library needs per-AR6-category adjustment scalars -# to convert IPCC RCBs (BM convention) to NGHGI-consistent budgets. These are +# For RCB-based allocations, the library needs adjustment scalars to convert +# IPCC RCBs (BM convention) to NGHGI-consistent budgets. These are # pre-computed here from the Gidden scenario data so that the library never needs # to handle the Direct/Indirect AFOLU decomposition directly. # -# Scalars computed per AR6 category: +# Each budget in rcbs.yaml has one scenario set. `build_rcb_scenario_sets` +# selects it by the rule of the RCB source: an AR6 category (key = budget +# label, e.g. `1.5p50`) or a peak-warming band (key = temperature, e.g. +# `peak-warming-1.7C`). +# +# Scalars computed per scenario set: # - `bm_lulucf_cumulative_median`: median of per-scenario cumulative BM LULUCF # (= AFOLU|Direct), each integrated to its own NZ year # - `convention_gap_median`: median of per-scenario cumulative convention gap # (historical NGHGI-Direct + future Indirect), each integrated to its own NZ year # - `nz_year_median`, `nz_year_min`, `nz_year_max`: net-zero year statistics -# - `n_scenarios`: number of scenarios in the category +# - `n_scenarios`: number of scenarios in the set # %% -print("\n--- Pre-computing RCB adjustment scalars per scenario category ---") +print("\n--- Pre-computing RCB adjustment scalars per scenario set ---") + +# World rows of the variables behind the adjustments, for every AR6 category. +rcb_scenario_data = { + var_name: df_all_categories[ + (df_all_categories["Variable"] == shorthand_variables[var_name]) + & (df_all_categories["Region"] == world_key) + ] + for var_name in ["CO2", "AFOLU_direct", "AFOLU_indirect"] +} + +# Net-zero year of every scenario: the first year with total CO2 at or below +# zero. The deductions end there, and the band rule keeps scenarios that have one. +_co2_year_cols = sorted( + [col for col in rcb_scenario_data["CO2"].columns if col.isdigit()], key=int +) +_net_zero_years = ( + rcb_scenario_data["CO2"] + .set_index(["Model", "Scenario"])[_co2_year_cols] + .apply(net_zero_year, axis=1) + .rename(NET_ZERO_YEAR_COLUMN) + .reset_index() +) +scenario_metadata = scenario_metadata.merge( + _net_zero_years, on=["Model", "Scenario"], how="left" +) + +# Select the scenario set of every budget in the RCB file of the active target. +# A target without an RCB file (pathway mode) needs no RCB adjustments. +_rcb_target = config.get("active_target_source", active_target_source) +_rcb_path = config["targets"].get(_rcb_target, {}).get("path") +if _rcb_path: + with open(project_root / _rcb_path) as f: + rcb_scenario_sets = build_rcb_scenario_sets( + yaml.safe_load(f), scenario_metadata + ) +else: + rcb_scenario_sets = {} + print(f" Target '{_rcb_target}' has no RCB file: no RCB adjustments computed.") + + +def rows_of_scenario_set(var_df, scenario_set): + """Return the rows of var_df whose (Model, Scenario) is in the scenario set.""" + return var_df.merge(scenario_set[["Model", "Scenario"]], on=["Model", "Scenario"]) + # Load NGHGI world timeseries for historical convention gap computation. # Only needed for co2/all-ghg (NGHGI corrections); co2-ffi uses BM LULUCF @@ -834,21 +907,18 @@ def _derive_category(minuend_key, subtrahend_key, new_category): f" Convention gap will be zero (fine for co2-ffi; run notebook 107 for co2/all-ghg)." ) -# Compute per-scenario-category adjustment scalars +# Compute adjustment scalars per scenario set rcb_adjustments = {} -for ar6_cat in desired_climate_assessments: - # Filter to scenarios in this AR6 category - cat_direct = scenario_data["AFOLU_direct"][ - scenario_data["AFOLU_direct"]["climate-assessment"] == ar6_cat - ] - cat_total = scenario_data["CO2"][ - scenario_data["CO2"]["climate-assessment"] == ar6_cat - ] +for set_key, scenario_set in rcb_scenario_sets.items(): + cat_direct = rows_of_scenario_set(rcb_scenario_data["AFOLU_direct"], scenario_set) + cat_total = rows_of_scenario_set(rcb_scenario_data["CO2"], scenario_set) if cat_direct.empty or cat_total.empty: - print(f" {ar6_cat}: no data, skipping") - continue + raise DataProcessingError( + f"RCB scenario set '{set_key}': no CO2 or AFOLU|Direct data for its " + f"{len(scenario_set)} scenarios" + ) sample_df = next(iter(scenario_data.values())) year_cols = [col for col in sample_df.columns if col.isdigit()] @@ -856,19 +926,15 @@ def _derive_category(minuend_key, subtrahend_key, new_category): # --- Per-scenario NZ years (from total CO2 BM crossing zero) --- total_indexed = cat_total.set_index(["Model", "Scenario"])[sorted_year_cols] - nz_years_dict = {} - for scenario_key in total_indexed.index: - row = total_indexed.loc[scenario_key] - for yc in sorted_year_cols: - if row[yc] <= 0: - nz_years_dict[scenario_key] = int(yc) - break - else: - nz_years_dict[scenario_key] = 2100 - - if not nz_years_dict: - print(f" {ar6_cat}: no NZ years computed, skipping") - continue + # A scenario that never reaches net zero is integrated to 2100. + reached_nz = { + scenario_key: net_zero_year(total_indexed.loc[scenario_key]) + for scenario_key in total_indexed.index + } + nz_years_dict = { + scenario_key: nz_year if nz_year is not None else 2100 + for scenario_key, nz_year in reached_nz.items() + } nz_series = pd.Series(nz_years_dict, dtype=int) @@ -894,9 +960,9 @@ def _derive_category(minuend_key, subtrahend_key, new_category): # --- Per-scenario convention gap (historical NGHGI-Direct + future Indirect) --- gap_median = 0.0 if nghgi_world_available: - cat_indirect = scenario_data["AFOLU_indirect"][ - scenario_data["AFOLU_indirect"]["climate-assessment"] == ar6_cat - ] + cat_indirect = rows_of_scenario_set( + rcb_scenario_data["AFOLU_indirect"], scenario_set + ) indirect_indexed = cat_indirect.set_index(["Model", "Scenario"])[ sorted_year_cols ] @@ -939,18 +1005,18 @@ def _derive_category(minuend_key, subtrahend_key, new_category): ) # Store results - rcb_adjustments[ar6_cat] = { + rcb_adjustments[set_key] = { "bm_lulucf_cumulative_median": round(bm_median, 1), "convention_gap_median": round(gap_median, 1), "nz_year_median": int(nz_series.median()), "nz_year_min": int(nz_series.min()), "nz_year_max": int(nz_series.max()), "n_scenarios": len(nz_series), - "n_reaching_nz": int((nz_series < 2100).sum()), + "n_reaching_nz": sum(nz_year is not None for nz_year in reached_nz.values()), } print( - f" {ar6_cat}: n={len(nz_series)}, NZ_med={int(nz_series.median())}, " + f" {set_key}: n={len(nz_series)}, NZ_med={int(nz_series.median())}, " f"BM_LULUCF={bm_median:.0f} Mt, gap={gap_median:.0f} Mt" ) @@ -963,11 +1029,11 @@ def _derive_category(minuend_key, subtrahend_key, new_category): # %% [markdown] -# ## Pre-compute baseline-shift LULUCF medians per AR6 category +# ## Pre-compute baseline-shift LULUCF medians per scenario set # # For RCB baseline-year shifting, `process_rcb_to_2020_baseline()` needs the -# year-by-year median AFOLU|Direct timeseries (BM LULUCF proxy) per AR6 -# category. Pre-computing these here avoids loading the raw Gidden Excel at +# year-by-year median AFOLU|Direct timeseries (BM LULUCF proxy) per scenario +# set. Pre-computing these here avoids loading the raw Gidden Excel at # runtime in the library. # %% @@ -976,28 +1042,22 @@ def _derive_category(minuend_key, subtrahend_key, new_category): sample_df = next(iter(scenario_data.values())) year_cols = sorted([col for col in sample_df.columns if col.isdigit()], key=int) -for ar6_cat in desired_climate_assessments: - cat_direct = scenario_data["AFOLU_direct"][ - scenario_data["AFOLU_direct"]["climate-assessment"] == ar6_cat - ] - - if cat_direct.empty: - print(f" {ar6_cat}: no AFOLU_direct data, skipping") - continue +for set_key, scenario_set in rcb_scenario_sets.items(): + cat_direct = rows_of_scenario_set(rcb_scenario_data["AFOLU_direct"], scenario_set) # Year-by-year median across scenarios median_vals = cat_direct[year_cols].median(axis=0) - source_label = f"gidden_direct_{ar6_cat}" + source_label = f"gidden_direct_{set_key}" median_df = pd.DataFrame( [median_vals.values], columns=year_cols, index=pd.Index([source_label], name="source"), ) - out_path = intermediate_dir / f"lulucf_shift_median_{ar6_cat}.csv" + out_path = intermediate_dir / f"lulucf_shift_median_{set_key}.csv" median_df.reset_index().to_csv(out_path, index=False) - print(f" {ar6_cat}: saved {len(cat_direct)} scenarios -> {out_path}") + print(f" {set_key}: saved {len(cat_direct)} scenarios -> {out_path}") # %% [markdown] # ## Output diff --git a/notebooks/106_generate_pathways_from_rcbs.py b/notebooks/106_generate_pathways_from_rcbs.py index 37f2224..7b8b075 100644 --- a/notebooks/106_generate_pathways_from_rcbs.py +++ b/notebooks/106_generate_pathways_from_rcbs.py @@ -273,8 +273,8 @@ def _load_world_emissions( world_keys = ["EARTH", "World", "WLD", "OWID_WRL"] if emission_category == "co2": - # NGHGI-consistent world CO2 = fossil - bunkers + LULUCF(NGHGI) - # This mirrors run_rcb_preprocessing() lines 454-480 in orchestrator.py + # NGHGI-consistent world CO2 = fossil (excluding bunkers) + LULUCF(NGHGI), + # as in run_rcb_preprocessing() from fair_shares.library.preprocessing.rcbs import _load_shared_timeseries from fair_shares.library.utils.data.nghgi import build_nghgi_world_co2_timeseries @@ -286,8 +286,8 @@ def _load_world_emissions( emissions_intermediate_dir, "co2-lulucf", world_keys, active_lulucf_source ) - # Load NGHGI LULUCF world timeseries and bunker timeseries - nghgi_ts, bunker_ts, splice_year = _load_shared_timeseries( + # Load NGHGI LULUCF world timeseries + nghgi_ts, _bunker_ts, splice_year = _load_shared_timeseries( adjustments_config, project_root, source_id=source_id, verbose=True ) @@ -295,14 +295,12 @@ def _load_world_emissions( world_emissions_df = build_nghgi_world_co2_timeseries( fossil_ts=world_co2_ffi_df, nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) print("\nNGHGI-consistent world CO2 timeseries constructed:") - print(" fossil = co2-ffi (PRIMAP)") + print(" fossil = co2-ffi (PRIMAP), excluding international bunkers") print(f" LULUCF = NGHGI actual ({splice_year} end year, no BM splicing)") - print(" bunkers = international bunker fuel") - print(" Formula: total CO2 = fossil - bunkers + LULUCF") + print(" Formula: total CO2 = fossil + LULUCF") else: # co2-ffi: load directly diff --git a/notebooks/107_derive_nghgi_categories_melo-2026-v4.py b/notebooks/107_derive_nghgi_categories_melo-2026-v4.py new file mode 100644 index 0000000..a8fc2e0 --- /dev/null +++ b/notebooks/107_derive_nghgi_categories_melo-2026-v4.py @@ -0,0 +1,559 @@ +# --- +# jupyter: +# jupytext: +# cell_metadata_filter: tags,-all +# formats: ipynb,py:percent +# text_representation: +# extension: .py +# format_name: percent +# format_version: '1.3' +# jupytext_version: 1.16.6 +# kernelspec: +# display_name: Python 3 (ipykernel) +# language: python +# name: python3 +# --- + +# %% [markdown] +# # Derive NGHGI-Consistent Emission Categories (Melo v4.0.0) +# +# Derive a parallel set of NGHGI-consistent emission categories from the +# active bookkeeping-model (BM) source's FFI and non-LULUCF Kyoto primitives +# (typically PRIMAP, configurable via ``active_emissions_source``) plus the +# Melo et al. (2026) country-reported LULUCF CO2 timeseries. Outputs live +# alongside the BM originals under ``emiss__nghgi_timeseries.csv``. +# 187 country coverage, NGHGI years 2000-2024. +# +# ## Accounting invariant +# +# NGHGI and bookkeeping (BM) LULUCF use different accounting conventions, so +# this notebook does not splice them. Derived categories that include +# ``co2-lulucf`` are bounded to the Melo year range by construction (column +# intersection in ``_align_and_compute``). ``lulucf_metadata.yaml`` exports +# the NGHGI year bounds so downstream code can enforce them. +# +# ## Data flow +# +# **Inputs** (from notebook 101 and raw data): +# - `emiss_co2-ffi_timeseries.csv` — BM-source fossil CO2 (LULUCF-independent) +# - `emiss_all-ghg-ex-co2-lulucf_timeseries.csv` — BM-source all Kyoto +# excluding CO2-LULUCF +# - `timeseries_NGHGI_gap-filled_4.0.0.csv` — Melo v4.0.0 country-level NGHGI LULUCF +# +# **Outputs** (NGHGI-consistent, ``_nghgi`` suffix): +# - `emiss_co2-lulucf_nghgi_timeseries.csv` — Melo NGHGI (Melo years) +# - `emiss_co2_nghgi_timeseries.csv` — co2-ffi + co2-lulucf +# - `emiss_non-co2_nghgi_timeseries.csv` — all-ghg-ex-co2-lulucf − co2-ffi +# - `emiss_all-ghg_nghgi_timeseries.csv` — co2 + non-co2 +# - `emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv` — co2-ffi + non-co2 +# (recomputed; identical to the BM version by construction) +# +# The three non-CO2 outputs above are written only when the emissions source +# declares `all-ghg-ex-co2-lulucf`. A `co2-ffi`-only source gets the two CO2 files. +# +# - `world_co2-lulucf_timeseries.csv` — WRD LULUCF for RCB corrections +# - `lulucf_metadata.yaml` — NGHGI year bounds, affected files + +# %% [markdown] +# ## Set paths and library imports + +# %% +import matplotlib.pyplot as plt +import pandas as pd +import yaml +from pyprojroot import here + +from fair_shares.library.exceptions import ( + DataLoadingError, + DataProcessingError, +) +from fair_shares.library.utils import ( + build_source_id, + ensure_string_year_columns, +) + +BLUE = "#005baa" + +# %% tags=["parameters"] +emission_category = None +active_target_source = None +active_emissions_source = None +active_gdp_source = None +active_population_source = None +active_gini_source = None +active_lulucf_source = None +source_id = None + +# %% +_running_via_papermill = emission_category is not None + +if _running_via_papermill: + print("Running via Papermill") + + if source_id is None: + source_id = build_source_id( + emissions=active_emissions_source, + gdp=active_gdp_source, + population=active_population_source, + gini=active_gini_source, + lulucf=active_lulucf_source, + target=active_target_source, + emission_category=emission_category, + ) + + config_path = here() / f"output/{source_id}/config.yaml" + print(f"Loading config from: {config_path}") + with open(config_path) as f: + config = yaml.safe_load(f) +else: + print("Running interactively - build desired config") + + emission_category = "co2" + active_sources = { + "emissions": "primap-202503", + "gdp": "wdi-2025", + "population": "un-owid-2025", + "gini": "wdi-2025", + "lulucf": "melo-2026-v4", + "target": "rcbs", + } + + from fair_shares.library.utils.data.config import build_data_config + + config, source_id = build_data_config(emission_category, active_sources) + config = config.model_dump() + + active_target_source = active_sources["target"] + active_emissions_source = active_sources["emissions"] + active_gdp_source = active_sources["gdp"] + active_population_source = active_sources["population"] + active_gini_source = active_sources["gini"] + active_lulucf_source = active_sources["lulucf"] + +# %% [markdown] +# ## Prepare parameters + +# %% +project_root = here() +print(f"Project root: {project_root}") + +# Resolve active LULUCF source from config +if active_lulucf_source is None: + # Fallback: pick first available LULUCF source + lulucf_sources = config.get("lulucf", {}) + if lulucf_sources: + active_lulucf_source = next(iter(lulucf_sources)) + else: + raise ValueError("No LULUCF sources configured in data_sources_unified.yaml") + +lulucf_config = config["lulucf"][active_lulucf_source] +lulucf_path = lulucf_config["path"] +lulucf_params = lulucf_config["data_parameters"] + +# Paths +melo_path = project_root / lulucf_path +intermediate_dir_str = f"output/{source_id}/intermediate/emissions" +intermediate_dir = project_root / intermediate_dir_str +intermediate_dir.mkdir(parents=True, exist_ok=True) + +emissions_config = config["emissions"][active_emissions_source] +emissions_world_key = emissions_config["data_parameters"].get("world_key") +# The non-CO2 categories need all-ghg-ex-co2-lulucf from the emissions source. +has_non_co2_input = "all-ghg-ex-co2-lulucf" in emissions_config[ + "data_parameters" +].get("available_categories", []) + +print(f"Active LULUCF source: {active_lulucf_source}") +print(f"LULUCF data path: {melo_path}") +print(f"Intermediate directory: {intermediate_dir_str}") +print(f"Emissions world key: {emissions_world_key}") +if not has_non_co2_input: + print( + f"Emissions source '{active_emissions_source}' declares no " + "all-ghg-ex-co2-lulucf: writing co2-lulucf and co2 only, skipping " + "non-co2, all-ghg and all-ghg-ex-co2-lulucf." + ) + +# %% [markdown] +# ## Step 1: Load Melo v4.0.0 NGHGI LULUCF data +# +# The Melo dataset provides country-reported (NGHGI convention) LULUCF CO2 fluxes +# for 187 countries from 2000-2024. Values are in MtCO2/yr where negative = net sink. + +# %% +print("Loading Melo v4.0.0 NGHGI LULUCF data...") + +if not melo_path.exists(): + raise DataLoadingError(f"Melo LULUCF file not found: {melo_path}") + +melo_raw = pd.read_csv(melo_path) +print(f" Raw data shape: {melo_raw.shape}") +print(f" Columns: {list(melo_raw.columns)}") +print(f" Categories: {melo_raw['Category'].unique()}") +print(f" Year range: {melo_raw['Year'].min()}-{melo_raw['Year'].max()}") +print(f" Countries: {melo_raw['ISO3'].nunique()}") + +# %% +# Filter to LULUCF total, CO2 only, exclude EU27 (avoid double-counting) +melo_lulucf = melo_raw[ + (melo_raw["Category"] == "LULUCF") + & (melo_raw["Gas"] == "CO2") + & (~melo_raw["ISO3"].isin(["EU27"])) +].copy() + +print(f"Filtered LULUCF CO2 rows: {len(melo_lulucf)}") +print(f" Countries (incl WRD): {melo_lulucf['ISO3'].nunique()}") + +# Pivot from long to wide: rows = ISO3, columns = years +melo_wide = melo_lulucf.pivot_table( + index="ISO3", + columns="Year", + values="CFluxes_yr", + aggfunc="sum", +) + +# Rename index to match standard format +melo_wide.index.name = "iso3c" +melo_wide = ensure_string_year_columns(melo_wide) + +# Derive NGHGI year range from data +melo_years = sorted([int(c) for c in melo_wide.columns if c.isdigit()]) +nghgi_start_year = min(melo_years) +nghgi_end_year = max(melo_years) +melo_year_cols = [str(y) for y in melo_years] + +# Separate WRD and country data +wrd_mask = melo_wide.index == "WRD" +melo_countries_raw = melo_wide.loc[~wrd_mask].copy() +melo_wrd_raw = melo_wide.loc[wrd_mask].copy() + +if melo_wrd_raw.empty: + raise DataProcessingError("WRD (world total) not found in Melo data") + +# Map WRD to emissions_world_key for consistency with the active BM source +melo_wrd_raw.index = pd.Index([emissions_world_key], name="iso3c") +melo_all = pd.concat([melo_countries_raw, melo_wrd_raw]) + +# Add unit and emission-category to MultiIndex +melo_all.index = pd.MultiIndex.from_tuples( + [(iso3c, "Mt * CO2e", "co2-lulucf") for iso3c in melo_all.index], + names=["iso3c", "unit", "emission-category"], +) + +print(f" Melo wide shape: {melo_all.shape}") +print(f" NGHGI year range: {nghgi_start_year}-{nghgi_end_year}") +print(f" Countries: {len(melo_countries_raw)}") + +# %% [markdown] +# ## Step 2: Extract WRD world total for RCB corrections +# +# The world-level NGHGI LULUCF timeseries is needed by the RCB correction pipeline +# (rcbs.py) to compute historical LULUCF deductions. + +# %% +# Save WRD as world_co2-lulucf_timeseries.csv +# Format: single-row DataFrame with source index (matches expected loader format) +wrd_data = melo_all.loc[melo_all.index.get_level_values("iso3c") == emissions_world_key] +world_values = wrd_data.reset_index(level=["unit", "emission-category"], drop=True) +nghgi_world_output = pd.DataFrame( + world_values.values, + columns=world_values.columns, + index=pd.Index(["nghgi_lulucf"], name="source"), +) + +world_output_path = intermediate_dir / "world_co2-lulucf_timeseries.csv" +nghgi_world_output.reset_index().to_csv(world_output_path, index=False) +print(f"Saved WRD NGHGI LULUCF to: {world_output_path}") +print(f" NGHGI end year (splice year): {nghgi_end_year}") +print( + f" WRD LULUCF at {nghgi_end_year}: " + f"{nghgi_world_output[str(nghgi_end_year)].iloc[0]:.1f} MtCO2/yr" +) + +# %% [markdown] +# ## Step 3: Save NGHGI-consistent co2-lulucf (Melo years only) +# +# Output is pure Melo NGHGI data across Melo years. Categories derived from +# this file inherit the Melo year range via column intersection in +# ``_align_and_compute``. + +# %% +lulucf_output_path = intermediate_dir / "emiss_co2-lulucf_nghgi_timeseries.csv" +melo_all.reset_index().to_csv(lulucf_output_path, index=False) +print(f"Saved NGHGI co2-lulucf to: {lulucf_output_path}") +print(f" Year range: {nghgi_start_year}-{nghgi_end_year} (Melo NGHGI only)") +print(" NO BM splicing — pure NGHGI convention data") + +# Save NGHGI metadata for downstream use +nghgi_emissions_files = [ + "emiss_co2-lulucf_nghgi_timeseries.csv", + "emiss_co2_nghgi_timeseries.csv", +] +if has_non_co2_input: + nghgi_emissions_files += [ + "emiss_non-co2_nghgi_timeseries.csv", + "emiss_all-ghg_nghgi_timeseries.csv", + "emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv", + ] +nghgi_metadata = { + "nghgi_start_year": nghgi_start_year, + "nghgi_end_year": nghgi_end_year, + "splice_year": nghgi_end_year, + "source": "Melo et al. 2026, v4.0.0", + "n_countries": len(melo_countries_raw), + "nghgi_emissions_files": nghgi_emissions_files, +} +metadata_path = intermediate_dir / "lulucf_metadata.yaml" +with open(metadata_path, "w") as f: + yaml.dump(nghgi_metadata, f, default_flow_style=False) +print(f"Saved NGHGI metadata to: {metadata_path}") + +# %% [markdown] +# ## Step 4: Compute derived categories +# +# From the three primitives (co2-ffi, co2-lulucf, non-co2), we compute: +# - `co2 = co2-ffi + co2-lulucf` (Melo years only) +# - `non-co2 = all-ghg-ex-co2-lulucf - co2-ffi` (full BM-source year range) +# - `all-ghg = co2 + non-co2` (Melo years only, because co2 is Melo-bounded) +# - `all-ghg-ex-co2-lulucf = co2-ffi + non-co2` (full BM-source year range) + +# %% +# Load co2-ffi from notebook 101 output +co2_ffi_path = intermediate_dir / "emiss_co2-ffi_timeseries.csv" +if not co2_ffi_path.exists(): + raise DataLoadingError( + f"co2-ffi not found: {co2_ffi_path}. Run notebook 101 first." + ) + +co2_ffi = pd.read_csv(co2_ffi_path) +co2_ffi = co2_ffi.set_index(["iso3c", "unit", "emission-category"]) +co2_ffi = ensure_string_year_columns(co2_ffi) +print(f"Loaded co2-ffi: {co2_ffi.shape}") + +# Load all-ghg-ex-co2-lulucf from notebook 101 output (for non-co2 derivation) +if has_non_co2_input: + allghg_ex_path = intermediate_dir / "emiss_all-ghg-ex-co2-lulucf_timeseries.csv" + if not allghg_ex_path.exists(): + raise DataLoadingError( + f"all-ghg-ex-co2-lulucf not found: {allghg_ex_path}. " + "Run notebook 101 first." + ) + + allghg_ex = pd.read_csv(allghg_ex_path) + allghg_ex = allghg_ex.set_index(["iso3c", "unit", "emission-category"]) + allghg_ex = ensure_string_year_columns(allghg_ex) + print(f"Loaded all-ghg-ex-co2-lulucf: {allghg_ex.shape}") + + +# %% +# Helper: align two DataFrames on shared countries and years for arithmetic +def _align_and_compute(df1, df2, operation, new_category): + """Align two timeseries DataFrames and perform element-wise operation. + + Parameters + ---------- + df1, df2 : pd.DataFrame + Timeseries with MultiIndex (iso3c, unit, emission-category) + operation : str + "add" or "subtract" (df1 + df2 or df1 - df2) + new_category : str + emission-category label for the result + + Returns + ------- + pd.DataFrame + Result with MultiIndex (iso3c, unit, emission-category) + """ + # Strip emission-category for alignment + a = df1.reset_index(level="emission-category", drop=True) + b = df2.reset_index(level="emission-category", drop=True) + + # Align on shared years (intersection — never extend beyond either input) + shared_years = sorted(set(a.columns) & set(b.columns)) + a = a[shared_years] + b = b[shared_years] + + # Align on shared index (iso3c, unit) + shared_idx = a.index.intersection(b.index) + a = a.loc[shared_idx] + b = b.loc[shared_idx] + + if operation == "add": + result = a.add(b, fill_value=0) + elif operation == "subtract": + result = a.subtract(b, fill_value=0) + else: + raise ValueError(f"Unknown operation: {operation}") + + # Re-attach emission-category + result.index = pd.MultiIndex.from_tuples( + [(iso3c, unit, new_category) for iso3c, unit in result.index], + names=["iso3c", "unit", "emission-category"], + ) + + return result + + +def _save_and_report( + df: pd.DataFrame, path, label: str, *, bounded_by: str | None = None +) -> None: + """Write a derived category CSV and print a one-line summary.""" + df.reset_index().to_csv(path, index=False) + years = sorted(int(c) for c in df.columns if c.isdigit()) + bound_note = f" (bounded by {bounded_by})" if bounded_by else "" + print( + f" {label}: shape={df.shape}, " + f"years={min(years)}-{max(years)}{bound_note}, " + f"saved to {path.name}" + ) + + +# %% +# Compute derived categories. co2 and all-ghg inherit Melo year bounds via the +# column intersection inside _align_and_compute; non-co2 and all-ghg-ex retain +# the full BM-source range (no LULUCF dependency). +print("Computing co2 = co2-ffi + co2-lulucf...") +co2 = ensure_string_year_columns(_align_and_compute(co2_ffi, melo_all, "add", "co2")) +_save_and_report( + co2, + intermediate_dir / "emiss_co2_nghgi_timeseries.csv", + "co2", + bounded_by="Melo", +) + +if has_non_co2_input: + print("Computing non-co2 = all-ghg-ex-co2-lulucf - co2-ffi...") + non_co2 = ensure_string_year_columns( + _align_and_compute(allghg_ex, co2_ffi, "subtract", "non-co2") + ) + _save_and_report( + non_co2, + intermediate_dir / "emiss_non-co2_nghgi_timeseries.csv", + "non-co2", + ) + + print("Computing all-ghg = co2 + non-co2...") + all_ghg = ensure_string_year_columns( + _align_and_compute(co2, non_co2, "add", "all-ghg") + ) + _save_and_report( + all_ghg, + intermediate_dir / "emiss_all-ghg_nghgi_timeseries.csv", + "all-ghg", + bounded_by="Melo", + ) + + # all-ghg-ex-co2-lulucf has no LULUCF dependency; identical to the BM version + # by construction. Written for pipeline symmetry with the other _nghgi files. + print("Computing all-ghg-ex-co2-lulucf = co2-ffi + non-co2...") + allghg_ex_computed = ensure_string_year_columns( + _align_and_compute(co2_ffi, non_co2, "add", "all-ghg-ex-co2-lulucf") + ) + _save_and_report( + allghg_ex_computed, + intermediate_dir / "emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv", + "all-ghg-ex-co2-lulucf", + ) + +# %% [markdown] +# ## Diagnostics + +# %% +# BM-vs-NGHGI LULUCF at world level. BM co2-lulucf is derived implicitly as +# (BM co2 − co2-ffi) from the BM total CO2 file below; not every pipeline +# configuration produces a standalone BM emiss_co2-lulucf_timeseries.csv. +bm_co2_path = intermediate_dir / "emiss_co2_timeseries.csv" +print(f"\n=== BM ({active_emissions_source}) vs NGHGI LULUCF at world level ===") +if bm_co2_path.exists(): + bm_co2 = ensure_string_year_columns( + pd.read_csv(bm_co2_path).set_index(["iso3c", "unit", "emission-category"]) + ) + bm_world_co2 = bm_co2.loc[bm_co2.index.get_level_values("iso3c") == emissions_world_key] + ffi_world = co2_ffi.loc[co2_ffi.index.get_level_values("iso3c") == emissions_world_key] + shared = sorted( + set(bm_world_co2.columns) & set(ffi_world.columns) & set(melo_year_cols) + ) + print(f"{'year':>6} {'NGHGI':>12} {'BM (implied)':>15} {'diff':>10}") + for y in shared[-5:]: + nghgi_val = nghgi_world_output[y].iloc[0] + bm_implied = bm_world_co2[y].iloc[0] - ffi_world[y].iloc[0] + print(f"{y:>6} {nghgi_val:>12.1f} {bm_implied:>15.1f} {nghgi_val - bm_implied:>10.1f}") +else: + print(f"BM co2 file not found at {bm_co2_path}; skipping comparison.") + +# %% +# Coverage and country-sum vs WRD consistency check. +print(f"\n=== Coverage and country-sum vs WRD ===") +print(f"Melo countries: {len(melo_countries_raw)}") +melo_country_data = melo_all.loc[ + melo_all.index.get_level_values("iso3c") != emissions_world_key +] +country_sum = melo_country_data.groupby(level=["unit", "emission-category"]).sum() +print(f"{'year':>6} {'country_sum':>12} {'WRD':>12} {'diff':>10}") +for y in melo_year_cols[-5:]: + if y in country_sum.columns and y in nghgi_world_output.columns: + cs = country_sum[y].iloc[0] + wrd_val = nghgi_world_output[y].iloc[0] + print(f"{y:>6} {cs:>12.1f} {wrd_val:>12.1f} {cs - wrd_val:>10.1f}") + +# %% [markdown] +# ## Plots + +# %% +def _plot_world(ax, df, world_key, *, title, ylabel, label): + world_df = df.loc[df.index.get_level_values("iso3c") == world_key] + if not world_df.empty: + years_int = sorted(int(c) for c in world_df.columns if c.isdigit()) + vals = [world_df[str(y)].iloc[0] for y in years_int] + ax.plot(years_int, vals, label=label, color=BLUE, linewidth=2) + ax.legend() + ax.set_title(title, fontweight="bold") + ax.set_ylabel(ylabel) + ax.grid(True, alpha=0.3) + ax.axhline(y=0, color="black", linestyle="-", alpha=0.3) + + +# The non-CO2 row is drawn only when those categories were derived. +n_rows = 2 if has_non_co2_input else 1 +fig, axes = plt.subplots(n_rows, 2, figsize=(16, 6 * n_rows), squeeze=False) + +_plot_world( + axes[0, 0], melo_all, emissions_world_key, + title="co2-lulucf: World (NGHGI only)", + ylabel="MtCO2/yr", + label="NGHGI (Melo)", +) +_plot_world( + axes[0, 1], co2, emissions_world_key, + title="co2: World (FFI + LULUCF NGHGI)", + ylabel="MtCO2/yr", + label="co2 (NGHGI)", +) +if has_non_co2_input: + _plot_world( + axes[1, 0], non_co2, emissions_world_key, + title="non-co2: World (CH4 + N2O + F-gases)", + ylabel="MtCO2e/yr", + label="non-co2", + ) + _plot_world( + axes[1, 1], all_ghg, emissions_world_key, + title="all-ghg: World (co2 + non-co2, NGHGI)", + ylabel="MtCO2e/yr", + label="all-ghg (NGHGI)", + ) + +plt.tight_layout() +plt.show() + +print("\nLULUCF preprocessing complete.") +print(f"NGHGI year range: {nghgi_start_year}-{nghgi_end_year}") +if has_non_co2_input: + print( + "Categories produced: co2-ffi (unchanged), co2-lulucf (NGHGI), co2, " + "non-co2, all-ghg, all-ghg-ex-co2-lulucf" + ) +else: + print("Categories produced: co2-ffi (unchanged), co2-lulucf (NGHGI), co2") + +# %% diff --git a/notebooks/107_derive_nghgi_categories_melo-2026.py b/notebooks/107_derive_nghgi_categories_melo-2026.py index 0d1ce98..730af61 100644 --- a/notebooks/107_derive_nghgi_categories_melo-2026.py +++ b/notebooks/107_derive_nghgi_categories_melo-2026.py @@ -22,7 +22,7 @@ # (typically PRIMAP, configurable via ``active_emissions_source``) plus the # Melo et al. (2026) country-reported LULUCF CO2 timeseries. Outputs live # alongside the BM originals under ``emiss__nghgi_timeseries.csv``. -# 187 country coverage, NGHGI years 2000-2023. +# 185 country coverage, NGHGI years 2000-2023. # # ## Accounting invariant # @@ -164,7 +164,7 @@ # ## Step 1: Load Melo v3.1 NGHGI LULUCF data # # The Melo dataset provides country-reported (NGHGI convention) LULUCF CO2 fluxes -# for 187 countries from 2000-2023. Values are in MtCO2/yr where negative = net sink. +# for 185 countries from 2000-2023. Values are in MtCO2/yr where negative = net sink. # %% print("Loading Melo v3.1 NGHGI LULUCF data...") diff --git a/notebooks/108_data_preprocess_bunkers_gcb-2025.py b/notebooks/108_data_preprocess_bunkers_gcb-2025.py new file mode 100644 index 0000000..3640264 --- /dev/null +++ b/notebooks/108_data_preprocess_bunkers_gcb-2025.py @@ -0,0 +1,73 @@ +# --- +# jupyter: +# jupytext: +# cell_metadata_filter: tags,-all +# formats: ipynb,py:percent +# text_representation: +# extension: .py +# format_name: percent +# format_version: '1.3' +# jupytext_version: 1.16.6 +# kernelspec: +# display_name: Python 3 (ipykernel) +# language: python +# name: python3 +# --- + +# %% [markdown] +# # International Bunker Fuel CO2 Preprocessing (GCB 2025) +# +# International bunkers are the sum of international shipping (`XIS`) and +# international aviation (`XIA`) in the Global Carbon Budget 2025 flat file, +# 1850 to 2024, in MtCO2 per year. Both series start in 1950; earlier years +# are blank in the file and count as zero. Bunker emissions are subtracted +# from global RCBs before country-level allocation. +# +# **Source:** Andrew and Peters (2025), doi:10.5281/zenodo.17417124 +# **Input:** data/emissions/gcb-2025/GCB2025v15_MtCO2_flat.csv +# **Output:** intermediate/emissions/bunker_timeseries.csv + +# %% +import pandas as pd +from pyprojroot import here + +from fair_shares.library.utils import build_source_id +from fair_shares.library.utils.data.gcb import gcb_bunkers + +# %% tags=["parameters"] +emission_category = None +active_target_source = None +active_emissions_source = None +active_gdp_source = None +active_population_source = None +active_gini_source = None +active_lulucf_source = None +source_id = None + +# %% +if emission_category is not None and source_id is None: + source_id = build_source_id( + emissions=active_emissions_source, + gdp=active_gdp_source, + population=active_population_source, + gini=active_gini_source, + lulucf=active_lulucf_source, + target=active_target_source, + emission_category=emission_category, + ) +elif source_id is None: + source_id = "gcb-2025_wdi-2025_un-owid-2025_wdi-2025_rcbs_co2-ffi" + +project_root = here() +intermediate_dir = project_root / f"output/{source_id}/intermediate/emissions" +intermediate_dir.mkdir(parents=True, exist_ok=True) + +# %% +raw = pd.read_csv(project_root / "data/emissions/gcb-2025/GCB2025v15_MtCO2_flat.csv") +bunkers = gcb_bunkers(raw) + +output_path = intermediate_dir / "bunker_timeseries.csv" +bunkers.reset_index().to_csv(output_path, index=False) +print(f"Saved bunker timeseries to: {output_path}") +print(f" Year range: {bunkers.columns[0]}-{bunkers.columns[-1]}") +print(f" Last year value: {bunkers.iloc[0, -1]:.1f} MtCO2/yr") diff --git a/notebooks/602_reproduce_dekker_2025.py b/notebooks/602_reproduce_dekker_2025.py index 1b5b831..8a21d20 100644 --- a/notebooks/602_reproduce_dekker_2025.py +++ b/notebooks/602_reproduce_dekker_2025.py @@ -407,9 +407,8 @@ ecpc_allocations = { "equal-per-capita-budget": [ { - # TODO: Dekker uses 1850 as a historical start year, but fair-shares - # validates allocation_year >= 1900. Relaxing this requires reviewing - # data availability (emissions, population) pre-1900. + # TODO: Dekker uses 1850 as a historical start year. fair-shares accepts + # allocation_year from 1850; this notebook runs 1950 and 1990. "allocation_year": [1950, 1990], "cumulative_end_year": [2050], "preserve_allocation_year_shares": [False], diff --git a/notebooks/604_reproduce_vandenberg_2020.py b/notebooks/604_reproduce_vandenberg_2020.py index 104e5d4..ec3ddab 100644 --- a/notebooks/604_reproduce_vandenberg_2020.py +++ b/notebooks/604_reproduce_vandenberg_2020.py @@ -432,9 +432,8 @@ ecpc_allocations = { "equal-per-capita-budget": [ { - # TODO: Paper uses 1850 as a historical start year, but fair-shares - # validates allocation_year >= 1900. Relaxing this requires reviewing - # data availability (emissions, population) pre-1900. + # TODO: Paper uses 1850 as a historical start year. fair-shares accepts + # allocation_year from 1850; this notebook runs 1970 and 1990. "allocation_year": [1970, 1990], "cumulative_end_year": [2100], "preserve_allocation_year_shares": [False], diff --git a/src/fair_shares/conf/data_registry.yaml b/src/fair_shares/conf/data_registry.yaml index b334af3..360c29a 100644 --- a/src/fair_shares/conf/data_registry.yaml +++ b/src/fair_shares/conf/data_registry.yaml @@ -100,6 +100,27 @@ sources: upstream_hash: "md5:19482df604f1dc746fb354ef66ef9047" size_bytes: 161831 + gcb-2025: + tier: optional + version: "2025v15" + doi: "10.5281/zenodo.17417124" + license: "CC-BY-4.0" + redistributable: true + citation: >- + Andrew, R. M., & Peters, G. P. (2025). The Global Carbon Project's fossil + CO2 emissions dataset (2025v15). Zenodo. + https://doi.org/10.5281/zenodo.17417124. Paper: Friedlingstein, P., et + al. (2026). Global Carbon Budget 2025. Earth System Science Data, 18, + 3211-3288. https://doi.org/10.5194/essd-18-3211-2026 + # Opt-in alternative to primap-202503, which stays the default. Fossil CO2 + # only. The same file supplies the bunker series for gcb-2025 runs. + downloads: + - url: "https://zenodo.org/api/records/17417124/files/GCB2025v15_MtCO2_flat.csv/content" + target: "emissions/gcb-2025/GCB2025v15_MtCO2_flat.csv" + sha256: "20650c19b394d91b6b31cddff2fbc9508bcdbbed7c3f93660336f2f655f367ff" + upstream_hash: "md5:3008e30d913af5926a83d0d0775fb72e" + size_bytes: 3147221 + # --- LULUCF ---------------------------------------------------------------- melo-2026: @@ -135,6 +156,29 @@ sources: upstream_hash: "md5:702b46bfe67cca47264fdf272d312005" size_bytes: 1180037 + melo-2026-v4: + tier: optional + version: "4.0.0 (2026 NGHGI release), gap-filled" + doi: "10.5281/zenodo.22828743" + license: "CC-BY-4.0" + redistributable: true + citation: >- + Melo, J., Rossi, S., Achard, F., Alkama, R., Canadell, J. G., Federici, S., + Friedlingstein, P., Gibbs, D., Harris, N., Heinrich, V., O'Sullivan, M., + Peters, G., Pongratz, J., Rose, M., Roman-Cuesta, R., Sanz Sanchez, M. J., + Schwingshackl, C., Sitch, S., & Grassi, G. (2026). The LULUCF Data Hub: + translating global land use emissions estimates into the national GHG + inventory framework (Version 4.0.0, 2026 NGHGI release). Zenodo. + https://doi.org/10.5281/zenodo.22828743 + # Opt-in alternative to melo-2026 (v3.1.1), which stays the default. + # Upstream ships LF line endings, so the pin matches the committed bytes. + downloads: + - url: "https://zenodo.org/api/records/22828743/files/timeseries_NGHGI_gap-filled_4.0.0.csv/content" + target: "lulucf/melo-2026-v4/timeseries_NGHGI_gap-filled_4.0.0.csv" + sha256: "82bb42999e4ed1c60dce3f5e4fc5b194aee0703f79751956fbe89b9beccc1da5" + upstream_hash: "md5:4dc0776f52dfefe1df76538794ab2bef" + size_bytes: 1220236 + # --- GDP ------------------------------------------------------------------- wdi-2025: @@ -348,12 +392,16 @@ sources: remaining carbon budgets. Nature Climate Change, 13, 1360-1367. https://doi.org/10.1038/s41558-023-01848-5; Forster, P. M., et al. (2024). Indicators of Global Climate Change 2023. Earth System Science Data, 16, - 2625-2658. https://doi.org/10.5194/essd-16-2625-2024; and IPCC AR6 WGI + 2625-2658. https://doi.org/10.5194/essd-16-2625-2024; Forster, P. M., et + al. (2026). Indicators of Global Climate Change 2025. Earth System Science + Data, 18, 3889-3933. https://doi.org/10.5194/essd-18-3889-2026; IPCC + (2021). Summary for Policymakers. In Climate Change 2021: The Physical + Science Basis. https://doi.org/10.1017/9781009157896.001; and IPCC AR6 WGI (https://www.ipcc.ch/report/ar6/wg1/). Net-zero years per AR6 scenario are derived from the IPCC AR6 Scenarios Database. downloads: - target: "rcbs/rcbs.yaml" - sha256: "22f719d8cd18e89639cf7f244caec43b502dd504b33105b33c648f30ad1777b4" + sha256: "cc74c9003de9a6f6be19f08a1288e38ef410552fd7151c2211064162aef1c8d2" - target: "rcbs/ar6_scenario_nz_years.parquet" sha256: "3df82c7ecfcf7b80782d666093d117e204f75e5e74f0c5ae1f22de80336a8ffc" diff --git a/src/fair_shares/conf/data_sources/data_sources_unified.yaml b/src/fair_shares/conf/data_sources/data_sources_unified.yaml index 4628d0f..42769f3 100644 --- a/src/fair_shares/conf/data_sources/data_sources_unified.yaml +++ b/src/fair_shares/conf/data_sources/data_sources_unified.yaml @@ -24,6 +24,18 @@ lulucf: iso3_column: "ISO3" year_column: "Year" + melo-2026-v4: + path: "data/lulucf/melo-2026-v4/timeseries_NGHGI_gap-filled_4.0.0.csv" + data_parameters: + world_key: "WRD" + format: "long" + category_filter: "LULUCF" + gas_filter: "CO2" + exclude_regions: ["EU27"] + value_column: "CFluxes_yr" + iso3_column: "ISO3" + year_column: "Year" + # --- Historical emissions --------------------------------------------------- emissions: primap-202503: @@ -34,6 +46,15 @@ emissions: world_key: "EARTH" scenario: "HISTCR" # "HISTCR" for country-reported (can use "HISTTP" for third party) + # Opt-in. Fossil CO2 only. The world row excludes international bunkers and + # the 1991 Kuwaiti oil fires; bunkers come from the same file. + gcb-2025: + path: "data/emissions/gcb-2025/GCB2025v15_MtCO2_flat.csv" + data_parameters: + available_categories: [co2-ffi] + world_key: "WLD" + bunkers_source: "gcb-2025" + # --- GDP --------------------------------------------------------------------- gdp: wdi-2025: diff --git a/src/fair_shares/library/allocations/budgets/per_capita.py b/src/fair_shares/library/allocations/budgets/per_capita.py index c991345..6bf7539 100644 --- a/src/fair_shares/library/allocations/budgets/per_capita.py +++ b/src/fair_shares/library/allocations/budgets/per_capita.py @@ -141,7 +141,9 @@ def _per_capita_budget_core( before OR after the allocation year. When ``capability_reference_year < allocation_year``, the snapshot is sourced from the full unfiltered ``gdp_ts`` and ``population_ts`` - inputs; Gini adjustment is NOT applied in that case. + inputs; the Gini adjustment applies to it as in every other case. + With a reference year set, GDP is required at that year only, so + ``allocation_year`` may precede the first GDP year. Ignored if ``capability_weight == 0.0``. Emits a ``UserWarning`` if ``capability_reference_year`` exceeds the last observed GDP year. income_floor @@ -201,6 +203,7 @@ def _per_capita_budget_core( pre_allocation_responsibility_year=pre_allocation_responsibility_year if pre_allocation_responsibility_weight > 0 else None, + capability_reference_year=capability_reference_year, ) # Validate data requirements @@ -366,7 +369,7 @@ def _per_capita_budget_core( ref_label = [c for c in capability_metric_common.columns if int(c) == ref_year][0] snapshot = capability_metric_common[ref_label] - elif ref_year > max(gdp_filtered_years): + elif gdp_filtered_years and ref_year > max(gdp_filtered_years): # User-requested ffill past end-of-series: take the last column. warnings.warn( f"capability_reference_year={ref_year} is beyond the last " @@ -379,8 +382,8 @@ def _per_capita_budget_core( ref_label = capability_metric_common.columns[-1] snapshot = capability_metric_common[ref_label] else: - # ref_year < allocation_year: the reference year was stripped by - # filter_time_columns, so we must source the snapshot from the + # ref_year is outside the window (before allocation_year, or the + # window holds no GDP year), so we must source the snapshot from the # UNFILTERED gdp_ts and population_ts inputs. # Apply the same unit processing used in the main capability path. gdp_full_single_unit = set_single_unit(gdp_ts, unit_level, ur=ur) @@ -853,7 +856,8 @@ def per_capita_adjusted_budget( **Pre-allocation responsibility.** Historical emissions data. Required when ``pre_allocation_responsibility_weight > 0``. gdp_ts - **Capability.** GDP data used from ``allocation_year`` onwards. + **Capability.** GDP data used from ``allocation_year`` onwards, + or at ``capability_reference_year`` only when that is set. Required when ``capability_weight > 0``. pre_allocation_responsibility_weight **Pre-allocation responsibility.** Relative weight (0–1). Only the @@ -892,8 +896,8 @@ def per_capita_adjusted_budget( **Capability.** When ``None`` (default), capability is computed year-by-year. When set to an integer, GDP from that single year is broadcast across the allocation window. May be before or - after ``allocation_year``. - When before, Gini adjustment is NOT applied to the snapshot. + after ``allocation_year``. GDP is then required at that year + only, so ``allocation_year`` may precede the first GDP year. Ignored when ``capability_weight == 0``. max_deviation_sigma **Constraint.** Maximum allowed deviation from equal per capita, @@ -1098,11 +1102,9 @@ def per_capita_adjusted_gini_budget( By default (``capability_reference_year=None``), $C_{\text{Gini}}(g, t)$ is computed year-by-year. Setting ``capability_reference_year`` to an integer freezes capability at that year: $C_{\text{Gini}}(g, t) \equiv - C_{\text{Gini}}(g, t_{\text{ref}})$ for all $t$ in the window. Note that - when ``capability_reference_year < allocation_year``, the Gini adjustment - is NOT applied to the snapshot (see ``capability_reference_year`` in the - Parameters section and ``_per_capita_budget_core`` for the implementation - detail). + C_{\text{Gini}}(g, t_{\text{ref}})$ for all $t$ in the window. The Gini + adjustment applies to the snapshot wherever the reference year lies, + including when ``capability_reference_year < allocation_year``. Two allocation modes are supported based on :code:`preserve_allocation_year_shares`: @@ -1117,7 +1119,8 @@ def per_capita_adjusted_gini_budget( Population time series for each group of interest. gdp_ts **Capability.** GDP time series (required). Used from - ``allocation_year`` onwards for capability calculations. + ``allocation_year`` onwards for capability calculations, or at + ``capability_reference_year`` only when that is set. gini_s **Gini.** Gini coefficients for within-country income inequality (required). Used to adjust GDP before computing the capability @@ -1164,9 +1167,10 @@ def per_capita_adjusted_gini_budget( capability_reference_year **Capability.** When ``None`` (default), capability is computed year-by-year. When set to an integer, GDP from that single year - is broadcast across the allocation window. When before - ``allocation_year``, Gini - adjustment is NOT applied to the snapshot. + is broadcast across the allocation window. May be before or + after ``allocation_year``; the Gini adjustment applies to the + snapshot in both cases. GDP is then required at that year only, + so ``allocation_year`` may precede the first GDP year. Ignored when ``capability_weight == 0``. income_floor **Gini.** Development threshold in USD PPP per capita. Income diff --git a/src/fair_shares/library/allocations/manager.py b/src/fair_shares/library/allocations/manager.py index 99783ae..8ce24fa 100644 --- a/src/fair_shares/library/allocations/manager.py +++ b/src/fair_shares/library/allocations/manager.py @@ -53,6 +53,7 @@ from fair_shares.library.utils.dataframes import ( TimeseriesDataFrame, filter_function_parameters, + get_year_columns, ) from fair_shares.library.utils.io import create_param_manifest as _create_param_manifest from fair_shares.library.utils.io import generate_readme as _generate_readme @@ -607,7 +608,18 @@ def run_parameter_grid( # Validate allocation year >= 1990 for total CO2 (NGHGI data limit) if emission_category: - validate_allocation_year_for_co2(allocations_config, emission_category) + # A separate responsibility frame (fossil CO2 for co2 and all-ghg) sets + # the first year a pre-allocation responsibility window may start. + responsibility_min_year = None + if responsibility_emissions_ts is not None: + responsibility_min_year = min( + get_year_columns(responsibility_emissions_ts, return_type="int") + ) + validate_allocation_year_for_co2( + allocations_config, + emission_category, + responsibility_min_year=responsibility_min_year, + ) for approach, params_list in allocations_config.items(): print(f"\nProcessing approach: {approach}") diff --git a/src/fair_shares/library/citations.py b/src/fair_shares/library/citations.py index 4aef682..6a176b5 100644 --- a/src/fair_shares/library/citations.py +++ b/src/fair_shares/library/citations.py @@ -139,7 +139,9 @@ def resolve_source_names( target = active_sources.get("target") if target in BUNKER_TARGETS: - names += ["rcbs", "gcb-2024"] + from fair_shares.library.utils.data.config import get_bunkers_source + + names += ["rcbs", get_bunkers_source(active_sources.get("emissions"))] if _uses_scenarios(target, emission_category): scenario = active_sources.get("scenario", "ar6") diff --git a/src/fair_shares/library/config/models.py b/src/fair_shares/library/config/models.py index c258d42..aef09db 100644 --- a/src/fair_shares/library/config/models.py +++ b/src/fair_shares/library/config/models.py @@ -21,7 +21,16 @@ class EmissionsDataParameters(BaseModel): ..., description="Available emission categories in this dataset" ) world_key: str = Field(..., description="Key identifier for world/global data") - scenario: str = Field(..., description="Historical scenario identifier") + scenario: str | None = Field( + None, description="Historical scenario identifier, for sources that have one" + ) + bunkers_source: str | None = Field( + None, + description=( + "Registry name of the international bunker data paired with this " + "source. Omit to use the default (gcb-2024)." + ), + ) class EmissionsSourceConfig(BaseModel): diff --git a/src/fair_shares/library/pipeline/preprocessing.py b/src/fair_shares/library/pipeline/preprocessing.py index ba5869a..287aec4 100644 --- a/src/fair_shares/library/pipeline/preprocessing.py +++ b/src/fair_shares/library/pipeline/preprocessing.py @@ -485,7 +485,7 @@ def run_rcb_preprocessing( rcb_adjustments_raw = rcb_data_params.get("adjustments", {}) adjustments_config = AdjustmentsConfig.model_validate(rcb_adjustments_raw) - nghgi_ts, bunker_ts, _splice_year = _load_shared_timeseries( + nghgi_ts, _bunker_ts, _splice_year = _load_shared_timeseries( adjustments_config, orch.data_dir, source_id=source_id, @@ -496,7 +496,6 @@ def run_rcb_preprocessing( world_emiss["co2"] = build_nghgi_world_co2_timeseries( fossil_ts=world_emiss["co2-ffi"], nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) # Save processed data diff --git a/src/fair_shares/library/preprocessing/rcbs.py b/src/fair_shares/library/preprocessing/rcbs.py index fba6703..b881c14 100644 --- a/src/fair_shares/library/preprocessing/rcbs.py +++ b/src/fair_shares/library/preprocessing/rcbs.py @@ -16,11 +16,15 @@ NZ years and convention gap scalars are pre-computed by notebook 104 from the scenario data (currently Gidden et al. AR6 reanalysis) and saved as ``rcb_scenario_adjustments.yaml``. Per-year BM LULUCF medians are stored -as ``lulucf_shift_median_{scenario}.csv``. +as ``lulucf_shift_median_{key}.csv``. Both are keyed by scenario set +(see ``rcb_scenario_set_key``): the budget label for sources under the +AR6 category rule, the temperature band for sources under the peak-warming +band rule. """ from __future__ import annotations +import warnings from pathlib import Path import pandas as pd @@ -42,6 +46,13 @@ load_bunker_timeseries, load_world_co2_lulucf, ) +from fair_shares.library.utils.data.rcb import ( + DEFAULT_REBASE_FILL_MAX_YEARS, + DEFAULT_SCENARIO_SELECTION, + fill_rebase_years, + missing_rebase_years, + rcb_scenario_set_key, +) def _resolve_template_path( @@ -138,7 +149,7 @@ def _load_rcb_scenario_adjustments( Returns ------- dict[str, dict] - Mapping of AR6 category (e.g., "C1") to adjustment dict with keys: + Mapping of scenario set key (e.g., "1.5p50") to adjustment dict with keys: ``bm_lulucf_cumulative_median``, ``convention_gap_median``, ``nz_year_median``, ``n_scenarios`` @@ -196,7 +207,7 @@ def _resolve_adjustment_scalars( Parameters ---------- scenario : str - Fair-shares scenario string (e.g. "1.5p50") + Scenario set key (e.g. "1.5p50" or "peak-warming-1.7C") baseline_year : int RCB source baseline year — LULUCF integration starts here net_zero_year : int @@ -208,7 +219,7 @@ def _resolve_adjustment_scalars( used for co2-ffi to integrate from baseline_year to NZ rcb_adjustments : dict[str, dict] Pre-computed RCB adjustment scalars from notebook 104, - keyed by scenario (e.g., "1.5p50") + keyed by scenario set (e.g., "1.5p50") emission_category : str Emission category (default: "co2-ffi") precautionary_lulucf : bool @@ -223,7 +234,20 @@ def _resolve_adjustment_scalars( Bunkers is positive; the two LULUCF scalars are sign-ready. Exactly one of the LULUCF scalars is non-zero per category (future_mt for co2-ffi, nghgi_correction_mt for co2). + + Raises + ------ + DataLoadingError + If ``rcb_adjustments`` has no entry for ``scenario`` """ + if scenario not in rcb_adjustments: + raise DataLoadingError( + f"No RCB scenario adjustments for '{scenario}' " + f"(available: {list(rcb_adjustments)}). " + "Re-run notebook 104 (AR6 scenario preprocessing)." + ) + adj = rcb_adjustments[scenario] + lulucf_future_mt = 0.0 lulucf_nghgi_correction_mt = 0.0 @@ -231,11 +255,8 @@ def _resolve_adjustment_scalars( # NGHGI-vs-BM convention correction from 2020 to NZ (Weber 2026). # The rebase uses BM LULUCF; this re-expresses the result against # national-inventory accounting. Budget still contains FFI + LULUCF. - adj = rcb_adjustments.get(scenario, {}) - lulucf_nghgi_correction_mt = adj.get("convention_gap_median", 0.0) + lulucf_nghgi_correction_mt = adj["convention_gap_median"] if lulucf_nghgi_correction_mt == 0.0: - import warnings - warnings.warn( f"convention_gap_median is 0.0 for scenario '{scenario}' — " f"this likely means notebook 104 ran before NGHGI data was " @@ -246,8 +267,7 @@ def _resolve_adjustment_scalars( else: # co2-ffi: subtract projected future (base→NZ) BM LULUCF to convert # a published total-CO2 RCB into an FFI-only RCB. - adj = rcb_adjustments.get(scenario, {}) - bm_lulucf_mt = adj.get("bm_lulucf_cumulative_median", 0.0) + bm_lulucf_mt = adj["bm_lulucf_cumulative_median"] # Adjust for baseline year > 2020: subtract the 2020-to-base # prefix using the median timeseries. Historical BM LULUCF has @@ -269,7 +289,8 @@ def _resolve_adjustment_scalars( else: lulucf_future_mt = -bm_lulucf_mt - # --- Bunkers deduction (always positive; caller negates) --- + # --- Bunkers deduction from 2020 to NZ (always positive; caller negates). + # The rebase adds the bunkers of 2020 to baseline_year - 1. --- bunkers_mt = compute_bunker_deduction( bunker_ts=bunker_ts, start_year=2020, @@ -398,8 +419,12 @@ def load_and_process_rcbs( print(" Adjustment mode: pre-computed (NGHGI-consistent, Weber et al. 2026)") print(" Bunker NZ years: category-level median (from scenario adjustments)") + rebase_fill_max_years = rcb_data.get( + "rebase_fill_max_years", DEFAULT_REBASE_FILL_MAX_YEARS + ) + # Pre-load baseline-shift LULUCF median timeseries from notebook 104 output. - # These are year-by-year median AFOLU|Direct CSVs, one per AR6 category. + # These are year-by-year median AFOLU|Direct CSVs, one per scenario set. lulucf_shift_cache: dict[str, pd.DataFrame] = {} # Create a list to store all RCB records @@ -413,6 +438,7 @@ def load_and_process_rcbs( baseline_year = source_data.get("baseline_year") unit = source_data.get("unit", "Gt CO2") scenarios = source_data.get("scenarios", {}) + selection = source_data.get("scenario_selection", DEFAULT_SCENARIO_SELECTION) if baseline_year is None: raise ConfigurationError( @@ -427,34 +453,86 @@ def load_and_process_rcbs( print(f" Baseline year: {baseline_year}") print(f" Unit: {unit}") print(f" Scenarios: {len(scenarios)}") + print(f" Scenario selection: {selection}") + + # A series that ends up to rebase_fill_max_years before the last rebase + # year takes its last observed value for the remaining years. + rebase_fossil = fill_rebase_years( + world_fossil_emissions, + baseline_year, + rebase_fill_max_years, + "world fossil CO2 emissions", + source_key, + ) + rebase_bunkers = fill_rebase_years( + bunker_ts, + baseline_year, + rebase_fill_max_years, + "international bunker emissions", + source_key, + ) + rebase_lulucf = actual_bm_lulucf_emissions + if emission_category == "co2" and actual_bm_lulucf_emissions is not None: + rebase_lulucf = fill_rebase_years( + actual_bm_lulucf_emissions, + baseline_year, + rebase_fill_max_years, + "world LULUCF CO2 emissions", + source_key, + ) + + # The rebase to 2020 needs emissions for every year before the baseline. + # A source that the emissions data cannot rebase is left out. + missing_years = missing_rebase_years(baseline_year, rebase_fossil) + missing_years += missing_rebase_years(baseline_year, rebase_bunkers) + if emission_category == "co2" and rebase_lulucf is not None: + missing_years += missing_rebase_years(baseline_year, rebase_lulucf) + if missing_years: + warnings.warn( + f"Skipping RCB source '{source_key}' (baseline year " + f"{baseline_year}): the emissions data lack " + f"{sorted(set(missing_years))}, so the budget cannot be rebased " + f"to 2020. The rebase fills at most {rebase_fill_max_years} " + f"year(s) (rebase_fill_max_years). Use an emissions source that " + f"covers 2020-{baseline_year - 1}.", + stacklevel=2, + ) + continue for scenario, rcb_value in scenarios.items(): climate_assessment, quantile = parse_rcb_scenario(scenario) + set_key = rcb_scenario_set_key(source_key, scenario, selection) + if set_key not in rcb_adjustments: + raise DataLoadingError( + f"RCB source '{source_key}', label '{scenario}': no scenario " + f"adjustments for '{set_key}' in {adj_path}. " + "Re-run notebook 104 (AR6 scenario preprocessing)." + ) # Load pre-computed median LULUCF shift timeseries for baseline shift - if scenario not in lulucf_shift_cache: - shift_csv = scenarios_dir / f"lulucf_shift_median_{scenario}.csv" + if set_key not in lulucf_shift_cache: + shift_csv = scenarios_dir / f"lulucf_shift_median_{set_key}.csv" if not shift_csv.exists(): raise DataLoadingError( f"LULUCF shift median not found: {shift_csv}. " "Run notebook 104 (AR6 scenario preprocessing) first." ) shift_df = pd.read_csv(shift_csv).set_index("source") - lulucf_shift_cache[scenario] = shift_df + lulucf_shift_cache[set_key] = shift_df if verbose: print( - f" Loaded LULUCF shift median for {scenario} " + f" Loaded LULUCF shift median for {set_key} " f"from {shift_csv}" ) - direct_median = lulucf_shift_cache[scenario] + direct_median = lulucf_shift_cache[set_key] # Scenario-level NZ year (for bunker integration) - nz_year = rcb_adjustments[scenario]["nz_year_median"] + nz_year = rcb_adjustments[set_key]["nz_year_median"] # Resolve adjustment scalars from pre-computed values bunkers_mt, lulucf_future_mt, lulucf_nghgi_mt = ( _resolve_adjustment_scalars( - scenario=scenario, + scenario=set_key, baseline_year=baseline_year, net_zero_year=nz_year, bunker_ts=bunker_ts, @@ -471,12 +549,13 @@ def load_and_process_rcbs( rcb_value=rcb_value, rcb_unit=unit, rcb_baseline_year=baseline_year, - world_co2_ffi_emissions=world_fossil_emissions, + world_co2_ffi_emissions=rebase_fossil, emission_category=emission_category, + world_bunker_emissions=rebase_bunkers, bunkers_deduction_mt=bunkers_mt, lulucf_future_deduction_mt=lulucf_future_mt, lulucf_nghgi_correction_mt=lulucf_nghgi_mt, - actual_bm_lulucf_emissions=actual_bm_lulucf_emissions, + actual_bm_lulucf_emissions=rebase_lulucf, target_baseline_year=2020, source_name=source_key, scenario=scenario, @@ -496,6 +575,7 @@ def load_and_process_rcbs( "net_adjustment_mt": result["net_adjustment_mt"], "rebase_total_mt": result["rebase_total_mt"], "rebase_fossil_mt": result["rebase_fossil_mt"], + "rebase_bunkers_mt": result["rebase_bunkers_mt"], "rebase_lulucf_mt": result["rebase_lulucf_mt"], "deduction_bunkers_mt": result["deduction_bunkers_mt"], "deduction_lulucf_future_mt": result["deduction_lulucf_future_mt"], diff --git a/src/fair_shares/library/utils/data/config.py b/src/fair_shares/library/utils/data/config.py index 0317a5e..5be9774 100644 --- a/src/fair_shares/library/utils/data/config.py +++ b/src/fair_shares/library/utils/data/config.py @@ -98,7 +98,9 @@ def get_final_categories(target: str, emission_category: str) -> tuple[str, ...] def get_emission_preprocessing_categories( - target: str, emission_category: str + target: str, + emission_category: str, + available_categories: list[str] | None = None, ) -> tuple[str, ...]: """Return emission categories needed for emissions preprocessing. @@ -111,30 +113,45 @@ def get_emission_preprocessing_categories( subtraction (``all-ghg-ex-co2-lulucf − co2-ffi``) in the derive_non_co2 pipeline rule. When ``non-co2`` is the main category, we return its ingredients instead. + + When ``available_categories`` is given, the result keeps only categories + the emissions source declares, so a ``co2-ffi``-only source is asked for + ``co2-ffi`` alone. """ # Base primitives always needed by notebook 107 (LULUCF → derived categories) _LULUCF_PRIMITIVES = {"co2-ffi", "co2-lulucf", "all-ghg-ex-co2-lulucf"} - if not is_composite_category(emission_category): - if emission_category == "co2": - needed = {"co2", "co2-ffi", "co2-lulucf", "all-ghg-ex-co2-lulucf"} - elif emission_category == "non-co2": - # non-co2 is derived by subtraction, not extracted by 101 - needed = _LULUCF_PRIMITIVES.copy() - else: - needed = {emission_category} | _LULUCF_PRIMITIVES - return tuple(sorted(needed)) - - if target == "pathway": - # pathway target has direct data, but notebook 107 still needs primitives + if emission_category == "co2": + needed = {"co2", "co2-ffi", "co2-lulucf", "all-ghg-ex-co2-lulucf"} + elif emission_category == "non-co2": + # non-co2 is derived by subtraction, not extracted by 101 + needed = _LULUCF_PRIMITIVES.copy() + elif emission_category == "all-ghg" and target != "pathway": + # RCB targets take the CO2 part from budgets, so all-ghg itself is not extracted + needed = {"co2"} | _LULUCF_PRIMITIVES + else: needed = {emission_category} | _LULUCF_PRIMITIVES - return tuple(sorted(needed)) - # RCB targets: need source categories for non-co2 derivation + LULUCF primitives - if emission_category == "all-ghg": - return ("all-ghg-ex-co2-lulucf", "co2", "co2-ffi", "co2-lulucf") - else: # all-ghg-ex-co2-lulucf - return ("all-ghg-ex-co2-lulucf", "co2-ffi", "co2-lulucf") + if available_categories is not None: + needed &= set(available_categories) + return tuple(sorted(needed)) + + +# Bunker data used by every emissions source that does not name its own. +DEFAULT_BUNKERS_SOURCE = "gcb-2024" + + +def get_emissions_data_parameters(emissions_source: str | None) -> dict[str, Any]: + """Return ``data_parameters`` of an emissions source in the packaged config.""" + with packaged_config("data_sources/data_sources_unified.yaml").open() as f: + emissions = yaml.safe_load(f).get("emissions", {}) + return emissions.get(emissions_source, {}).get("data_parameters", {}) + + +def get_bunkers_source(emissions_source: str | None) -> str: + """Return the registry name of the bunker data paired with an emissions source.""" + params = get_emissions_data_parameters(emissions_source) + return params.get("bunkers_source") or DEFAULT_BUNKERS_SOURCE def build_source_id( diff --git a/src/fair_shares/library/utils/data/gcb.py b/src/fair_shares/library/utils/data/gcb.py new file mode 100644 index 0000000..8d83e95 --- /dev/null +++ b/src/fair_shares/library/utils/data/gcb.py @@ -0,0 +1,77 @@ +"""Global Carbon Budget fossil CO2: flat CSV to the pipeline's timeseries layout. + +The Andrew and Peters flat file is long format, MtCO2 per year, one row per +entity and year. Besides countries it holds four rows that belong to no country: +the global total (``WLD``), international shipping (``XIS``), international +aviation (``XIA``) and the 1991 Kuwaiti oil fires. The global total equals the +sum of every other row. + +Rules applied here: + +- Every blank year counts as zero. A blank means the file reports those + emissions under another entity (Ireland under the United Kingdom until 1923) + or reports none, and the global total already treats it as zero. +- The world row is the global total minus shipping, aviation and the oil fires. + The three series are returned separately so the split stays auditable. +- A country row is an ISO3 code in ``countries``. Every other row stays in the + world row and so lands in rest-of-world: codes outside the region mapping + (Kosovo, Antarctica) and the two rows without a code ("Pacific Islands + (Palau)", "Ryukyu Islands"), which the official GCB workbook also keeps in + the world total and in no country column. +""" + +from __future__ import annotations + +import pandas as pd + +from fair_shares.library.exceptions import DataLoadingError + +ISO, NAME, YEAR, VALUE = "ISO 3166-1 alpha-3", "Country", "Year", "Total" +GLOBAL = "WLD" +SHIPPING = "XIS" +AVIATION = "XIA" +OIL_FIRES = "Kuwaiti Oil Fires" +UNIT = "Mt * CO2e" + + +def _wide(raw: pd.DataFrame, first_year: int) -> pd.DataFrame: + """Pivot the long file to one row per entity, with blanks as zero.""" + missing = {ISO, NAME, YEAR, VALUE} - set(raw.columns) + if missing: + raise DataLoadingError(f"GCB file lacks expected columns: {sorted(missing)}") + raw = raw[raw[YEAR] >= first_year] + # Rows without an ISO code are keyed by their name. + wide = raw.assign(key=raw[ISO].fillna(raw[NAME])).pivot( + index="key", columns=YEAR, values=VALUE + ) + wide.columns = wide.columns.astype(str).rename(None) + return wide.fillna(0.0) + + +def gcb_fossil_co2( + raw: pd.DataFrame, countries: set[str], world_key: str, first_year: int = 1850 +) -> tuple[pd.DataFrame, pd.DataFrame]: + """Return GCB fossil CO2 as (emissions, excluded), both in MtCO2 per year. + + ``emissions`` holds one row per code in ``countries`` plus the world row, + indexed by (iso3c, unit, emission-category). ``excluded`` holds shipping, + aviation and the oil fires, indexed by source. For every year, + world row + excluded rows = GCB global total. + """ + wide = _wide(raw, first_year) + excluded = wide.loc[[SHIPPING, AVIATION, OIL_FIRES]].rename_axis("source") + world = (wide.loc[GLOBAL] - excluded.sum()).rename(world_key) + + emissions = pd.concat([wide[wide.index.isin(countries)], world.to_frame().T]) + emissions.index = pd.MultiIndex.from_tuples( + [(iso3c, UNIT, "co2-ffi") for iso3c in emissions.index], + names=["iso3c", "unit", "emission-category"], + ) + return emissions, excluded + + +def gcb_bunkers(raw: pd.DataFrame, first_year: int = 1850) -> pd.DataFrame: + """Return international shipping plus aviation as the single ``bunkers`` row.""" + wide = _wide(raw, first_year) + bunkers = (wide.loc[SHIPPING] + wide.loc[AVIATION]).rename("bunkers") + return bunkers.to_frame().T.rename_axis("source") diff --git a/src/fair_shares/library/utils/data/nghgi.py b/src/fair_shares/library/utils/data/nghgi.py index e4a962d..bb4d811 100644 --- a/src/fair_shares/library/utils/data/nghgi.py +++ b/src/fair_shares/library/utils/data/nghgi.py @@ -12,7 +12,7 @@ Data structure notes: - NGHGI LULUCF file: CSV produced by notebook 107 (Melo v3.1) -- Bunker file: CSV produced by notebook 107, sourced from GCB2024 +- Bunker file: CSV produced by notebook 108 from the active bunker source - AR6 category constants: YAML produced by notebook 104 (scenario preprocessing) """ @@ -173,12 +173,13 @@ def compute_bunker_deduction( bunker_ts: pd.DataFrame, start_year: int, net_zero_year: int, - historical_end_year: int = 2023, + historical_end_year: int | None = None, ) -> float: """Compute cumulative international bunker fuel CO2 deduction. - Combines historical year-by-year values from GCB2024 with extrapolation - from the last observed annual rate for years beyond the historical record. + Combines historical year-by-year values from the bunker timeseries with + extrapolation from the last observed annual rate for years beyond the + historical record. Parameters ---------- @@ -189,8 +190,8 @@ def compute_bunker_deduction( net_zero_year : int End of integration window (inclusive) historical_end_year : int, optional - Last year covered by the historical timeseries (default: 2023, - matching GCB2024 coverage) + Last year taken from the historical timeseries (default: the last + year with a value in ``bunker_ts``) Returns ------- @@ -202,6 +203,10 @@ def compute_bunker_deduction( DataProcessingError If historical data is insufficient for the start_year """ + if historical_end_year is None: + observed = bunker_ts.iloc[0].dropna() + historical_end_year = max(int(c) for c in observed.index if _is_year(c)) + historical_end = min(historical_end_year, net_zero_year) historical_bunkers = compute_cumulative_emissions( bunker_ts, start_year, historical_end @@ -210,13 +215,7 @@ def compute_bunker_deduction( # Future component: extrapolate last observed rate beyond historical record future_bunkers = 0.0 if net_zero_year > historical_end_year: - last_year_str = str(historical_end_year) - if last_year_str in bunker_ts.columns: - last_rate = float(bunker_ts[last_year_str].iloc[0]) - else: - # Fall back to last available year - avail_years = sorted(int(c) for c in bunker_ts.columns if _is_year(c)) - last_rate = float(bunker_ts[str(avail_years[-1])].iloc[0]) + last_rate = float(bunker_ts[str(historical_end_year)].iloc[0]) future_years = net_zero_year - historical_end_year future_bunkers = last_rate * future_years @@ -226,12 +225,13 @@ def compute_bunker_deduction( def build_nghgi_world_co2_timeseries( fossil_ts: pd.DataFrame, nghgi_ts: pd.DataFrame, - bunker_ts: pd.DataFrame, ) -> pd.DataFrame: """Construct NGHGI-consistent world total CO2 timeseries. For backward extension of allocation years < 2020, Weber Eq. 3 requires - per-year world CO2 = fossil - bunkers + LULUCF, where LULUCF uses: + per-year world CO2 = fossil - bunkers + LULUCF. The world CO2-FFI series + already excludes international bunkers, so the result is fossil + LULUCF, + where LULUCF uses: - 2000 onwards: NGHGI LULUCF (e.g. Melo v3.1) - Pre-2000: NaN (no fallback — NGHGI coverage only) @@ -240,22 +240,19 @@ def build_nghgi_world_co2_timeseries( Parameters ---------- fossil_ts : pd.DataFrame - World CO2-FFI emissions timeseries (e.g. PRIMAP) in Mt CO2/yr. - Must have string year columns and a MultiIndex with - (iso3c, unit, emission-category). + World CO2-FFI emissions timeseries (e.g. PRIMAP) in Mt CO2/yr, + excluding international bunkers. Must have string year columns and a + MultiIndex with (iso3c, unit, emission-category). nghgi_ts : pd.DataFrame NGHGI LULUCF historical timeseries (from load_world_co2_lulucf) in MtCO2/yr. Single-row DataFrame with string year columns. - bunker_ts : pd.DataFrame - Bunker fuel CO2 timeseries (from load_bunker_timeseries) - in MtCO2/yr. Single-row DataFrame with string year columns. Returns ------- pd.DataFrame Single-row DataFrame with same index structure as fossil_ts but emission-category label set to "co2", containing per-year - NGHGI-consistent total CO2 = fossil - bunkers + LULUCF. + NGHGI-consistent total CO2 = fossil + LULUCF. Years outside NGHGI LULUCF coverage will be NaN. """ # Get all year columns from fossil_ts @@ -270,14 +267,8 @@ def build_nghgi_world_co2_timeseries( if y in nghgi_ts.columns: lulucf_vals[y] = nghgi_ts[y].iloc[0] - # Build bunker timeseries (0 for years outside bunker data) - bunker_vals = pd.Series(0.0, index=year_cols, dtype=float) - for y in year_cols: - if y in bunker_ts.columns: - bunker_vals[y] = bunker_ts[y].iloc[0] - - # NGHGI-consistent total CO2 = fossil - bunkers + LULUCF - total_co2 = fossil_vals + lulucf_vals - bunker_vals + # NGHGI-consistent total CO2 = fossil (excluding bunkers) + LULUCF + total_co2 = fossil_vals + lulucf_vals # Build result with same index structure as fossil_ts but co2 label old_idx = fossil_ts.index[0] diff --git a/src/fair_shares/library/utils/data/rcb.py b/src/fair_shares/library/utils/data/rcb.py index 01ed659..989fc2f 100644 --- a/src/fair_shares/library/utils/data/rcb.py +++ b/src/fair_shares/library/utils/data/rcb.py @@ -7,16 +7,33 @@ from __future__ import annotations +import warnings from typing import TYPE_CHECKING import pandas as pd -from fair_shares.library.exceptions import DataProcessingError +from fair_shares.library.exceptions import ConfigurationError, DataProcessingError from fair_shares.library.utils.units import get_default_unit_registry if TYPE_CHECKING: from fair_shares.library.utils.dataframes import TimeseriesDataFrame +# AR6 category behind each budget label under the "ar6-category" rule. +AR6_CATEGORY_BY_RCB_LABEL = {"1.5p50": "C1", "2p83": "C2", "2p66": "C3"} + +# AR6 metadata column that the "peak-warming-band" rule reads. +PEAK_WARMING_COLUMN = "Median peak warming (MAGICCv7.5.3)" + +# Scenario metadata column that holds ``net_zero_year`` of each scenario. +NET_ZERO_YEAR_COLUMN = "net_zero_year" + +# A source in rcbs.yaml without a ``scenario_selection`` field uses this rule. +DEFAULT_SCENARIO_SELECTION = "ar6-category" +DEFAULT_PEAK_WARMING_BAND_HALF_WIDTH = 0.05 + +# Largest number of trailing rebase years that take the last observed value. +DEFAULT_REBASE_FILL_MAX_YEARS = 1 + def parse_rcb_scenario(scenario_string: str) -> tuple[str, str]: """ @@ -63,6 +80,297 @@ def parse_rcb_scenario(scenario_string: str) -> tuple[str, str]: return climate_assessment, quantile +def _ar6_category(source: str, label: str) -> str: + """Return the AR6 category mapped to a budget label, or raise.""" + if label not in AR6_CATEGORY_BY_RCB_LABEL: + raise ConfigurationError( + f"RCB source '{source}', label '{label}': no AR6 category is mapped " + f"to this label (mapped labels: {list(AR6_CATEGORY_BY_RCB_LABEL)}) " + f"and the source does not use the peak-warming band rule. Set " + f"'scenario_selection: peak-warming-band' for this source in " + f"rcbs.yaml, or use a mapped label." + ) + return AR6_CATEGORY_BY_RCB_LABEL[label] + + +def net_zero_year(co2_emissions: pd.Series) -> int | None: + """ + Return the first year in which total CO2 emissions are at or below zero. + + The deductions of a budget end in this year, and the peak-warming band + keeps only scenarios that have one. + + Parameters + ---------- + co2_emissions : pd.Series + Total CO2 emissions of one scenario, indexed by year in ascending order + + Returns + ------- + int or None + The net-zero year, or None when emissions stay above zero + """ + for year, value in co2_emissions.items(): + if value <= 0: + return int(year) + return None + + +def rcb_scenario_set_key(source: str, label: str, selection: str) -> str: + """ + Name the scenario set behind the deductions of one budget. + + The key identifies the entry in ``rcb_scenario_adjustments.yaml`` and the + ``lulucf_shift_median_{key}.csv`` file that notebook 104 writes. + + Parameters + ---------- + source : str + RCB source key in rcbs.yaml (e.g., "forster_2026") + label : str + Budget label (e.g., "1.7p50") + selection : str + Scenario selection rule of the source: "ar6-category" or + "peak-warming-band" + + Returns + ------- + str + - "ar6-category": the label itself (e.g., "1.5p50") + - "peak-warming-band": the temperature only (e.g., "peak-warming-1.7C"), + because one band serves every likelihood of its temperature + + Raises + ------ + ConfigurationError + If the rule is unknown, or the label has no AR6 category under the + "ar6-category" rule + """ + climate_assessment, _ = parse_rcb_scenario(label) + if selection == "ar6-category": + _ar6_category(source, label) + return label + if selection == "peak-warming-band": + return f"peak-warming-{climate_assessment}" + raise ConfigurationError( + f"RCB source '{source}': unknown scenario_selection '{selection}'. " + f"Expected 'ar6-category' or 'peak-warming-band'." + ) + + +def select_rcb_scenario_set( + metadata: pd.DataFrame, + source: str, + label: str, + selection: str, + band_half_width: float = DEFAULT_PEAK_WARMING_BAND_HALF_WIDTH, +) -> pd.DataFrame: + """ + Select the AR6 scenarios behind the deductions of one budget. + + Parameters + ---------- + metadata : pd.DataFrame + AR6 scenario metadata, one row per scenario, with the columns + "Category" and "Median peak warming (MAGICCv7.5.3)". The + "peak-warming-band" rule also needs "net_zero_year" (see + ``net_zero_year``), empty for a scenario that never reaches net zero. + source : str + RCB source key in rcbs.yaml (e.g., "forster_2026") + label : str + Budget label (e.g., "1.7p50") + selection : str + Scenario selection rule of the source: + + - "ar6-category": every scenario in the AR6 category mapped to the + label (1.5p50 -> C1, 2p83 -> C2, 2p66 -> C3) + - "peak-warming-band": every scenario whose median peak warming lies + in [T - band_half_width, T + band_half_width), where T is the + budget temperature, and that reaches net-zero CO2. A remaining + carbon budget runs to net-zero CO2, so a scenario that never reaches + it is excluded. The likelihood in the label plays no role. + band_half_width : float, optional + Half-width of the peak-warming band in degrees C (default: 0.05) + + Returns + ------- + pd.DataFrame + The selected rows of ``metadata`` + + Raises + ------ + ConfigurationError + If the rule is unknown, the label has no AR6 category under the + "ar6-category" rule, or the metadata lack "net_zero_year" under the + "peak-warming-band" rule + DataProcessingError + If the rule selects no scenario + """ + climate_assessment, _ = parse_rcb_scenario(label) + if selection == "ar6-category": + category = _ar6_category(source, label) + selected = metadata[metadata["Category"] == category] + criterion = f"AR6 category {category}" + elif selection == "peak-warming-band": + temperature = float(climate_assessment.removesuffix("C")) + # Rounding keeps the bounds exact decimals (1.7 - 0.05 gives 1.65). + lower = round(temperature - band_half_width, 6) + upper = round(temperature + band_half_width, 6) + if NET_ZERO_YEAR_COLUMN not in metadata.columns: + raise ConfigurationError( + f"RCB source '{source}': the peak-warming band rule needs the " + f"scenario metadata column '{NET_ZERO_YEAR_COLUMN}'." + ) + peak_warming = metadata[PEAK_WARMING_COLUMN] + # A budget runs to net-zero CO2, so the band keeps scenarios that reach it. + selected = metadata[ + (peak_warming >= lower) + & (peak_warming < upper) + & metadata[NET_ZERO_YEAR_COLUMN].notna() + ] + criterion = ( + f"median peak warming in the {climate_assessment} band " + f"[{lower}, {upper}) and a net-zero CO2 year" + ) + else: + raise ConfigurationError( + f"RCB source '{source}': unknown scenario_selection '{selection}'. " + f"Expected 'ar6-category' or 'peak-warming-band'." + ) + + if selected.empty: + raise DataProcessingError( + f"RCB source '{source}', label '{label}': no scenario has {criterion}." + ) + return selected + + +def build_rcb_scenario_sets( + rcb_yaml: dict, metadata: pd.DataFrame +) -> dict[str, pd.DataFrame]: + """ + Select the scenario set for every budget in a loaded rcbs.yaml. + + Parameters + ---------- + rcb_yaml : dict + Content of rcbs.yaml. Each source under ``rcb_data`` may carry a + ``scenario_selection`` field (default: "ar6-category"). The top-level + ``peak_warming_band_half_width`` sets the band half-width (default: 0.05). + metadata : pd.DataFrame + AR6 scenario metadata (see ``select_rcb_scenario_set``) + + Returns + ------- + dict[str, pd.DataFrame] + Selected metadata rows, keyed by ``rcb_scenario_set_key`` + """ + band_half_width = rcb_yaml.get( + "peak_warming_band_half_width", DEFAULT_PEAK_WARMING_BAND_HALF_WIDTH + ) + scenario_sets = {} + for source, source_data in rcb_yaml["rcb_data"].items(): + selection = source_data.get("scenario_selection", DEFAULT_SCENARIO_SELECTION) + for label in source_data["scenarios"]: + key = rcb_scenario_set_key(source, label, selection) + if key not in scenario_sets: + scenario_sets[key] = select_rcb_scenario_set( + metadata, source, label, selection, band_half_width + ) + return scenario_sets + + +def missing_rebase_years( + rcb_baseline_year: int, + emissions: pd.DataFrame, + target_baseline_year: int = 2020, +) -> list[int]: + """ + List the rebase years that an emissions timeseries lacks. + + Rebasing a budget from ``rcb_baseline_year`` to ``target_baseline_year`` + adds the emissions of every year from the target baseline to the year + before the RCB baseline. + """ + return [ + year + for year in range(target_baseline_year, rcb_baseline_year) + if str(year) not in emissions.columns + ] + + +def fill_rebase_years( + emissions: pd.DataFrame, + rcb_baseline_year: int, + max_fill_years: int = DEFAULT_REBASE_FILL_MAX_YEARS, + series_name: str = "emissions", + source_name: str = "", +) -> pd.DataFrame: + """ + Hold the last observed value of a world series over the rebase years after it. + + The rebase of a budget to 2020 needs every year up to the year before the + RCB baseline. When the series ends earlier, each year after its last + observed year takes the last observed value. The fill is a placeholder + until observed data are published, and every use raises a warning. + + Parameters + ---------- + emissions : pd.DataFrame + Single-row world timeseries with string year columns + rcb_baseline_year : int + The year from which the RCB is calculated + max_fill_years : int, optional + Largest number of years to fill (default: 1). 0 turns the fill off. + series_name : str, optional + Name of the series for the warning (e.g., "world fossil CO2 emissions") + source_name : str, optional + Name of the RCB source for the warning + + Returns + ------- + pd.DataFrame + The series with the filled years, or the series unchanged when no + year is missing or more than ``max_fill_years`` years are missing. + Years before the last observed year are never filled. + """ + observed = emissions.iloc[0].dropna() + observed_years = [int(c) for c in observed.index if str(c).isdigit()] + if not observed_years: + return emissions + last_observed_year = max(observed_years) + + fill_years = list(range(last_observed_year + 1, rcb_baseline_year)) + if not fill_years or len(fill_years) > max_fill_years: + return emissions + + last_value = float(observed[str(last_observed_year)]) + filled = emissions.copy() + for year in fill_years: + filled[str(year)] = last_value + warnings.warn( + f"RCB source '{source_name}' (baseline year {rcb_baseline_year}): " + f"{series_name} end in {last_observed_year}. The rebase to 2020 uses the " + f"{last_observed_year} value ({last_value:,.1f} Mt CO2) for {fill_years}. " + f"This is a placeholder until observed data are published.", + stacklevel=2, + ) + return filled + + +def _year_ranges(years: list[int]) -> str: + """Format sorted years as ranges, e.g. [1990, 1991, 1995] -> '1990-1991, 1995'.""" + ranges: list[list[int]] = [] + for year in years: + if ranges and year == ranges[-1][1] + 1: + ranges[-1][1] = year + else: + ranges.append([year, year]) + return ", ".join( + str(first) if first == last else f"{first}-{last}" for first, last in ranges + ) + + def calculate_budget_from_rcb( rcb_value: float, allocation_year: int, @@ -102,19 +410,30 @@ def calculate_budget_from_rcb( ------- float Total budget to allocate in Mt CO2 + + Raises + ------ + DataProcessingError + If allocation_year is before 2020 and the world emissions lack any year + from allocation_year to 2019 """ if allocation_year < 2020: # Add historical emissions before RCB period - year_cols = [ - str(y) - for y in range(allocation_year, 2020) - if str(y) in world_scenario_emissions_ts.columns - ] + year_cols = [str(y) for y in range(allocation_year, 2020)] - if not year_cols: + # A partial sum understates the budget, so every year must hold a value. + world_row = world_scenario_emissions_ts.iloc[0] + years_with_data = sorted( + int(c) for c in world_row.dropna().index if str(c).isdigit() + ) + missing_years = [y for y in map(int, year_cols) if y not in years_with_data] + if missing_years: + first_year = years_with_data[0] if years_with_data else None raise DataProcessingError( - f"No emission data found for years {allocation_year}-2019. " - f"Cannot calculate historical component of budget." + f"Allocation year {allocation_year} needs world emissions for " + f"{allocation_year}-2019, but the world emissions data lack " + f"{_year_ranges(missing_years)}. The first available year is " + f"{first_year}." ) historical_emissions = ( @@ -173,6 +492,7 @@ def process_rcb_to_2020_baseline( emission_category: str, world_co2_ffi_emissions: pd.DataFrame, actual_bm_lulucf_emissions: pd.DataFrame | None = None, + world_bunker_emissions: pd.DataFrame | None = None, bunkers_deduction_mt: float = 0.0, lulucf_future_deduction_mt: float = 0.0, lulucf_nghgi_correction_mt: float = 0.0, @@ -188,6 +508,12 @@ def process_rcb_to_2020_baseline( standardized 2020 baseline. It also applies adjustments for international bunkers and LULUCF following Weber et al. (2026). + The published RCB covers total anthropogenic CO2 from its baseline year and + includes international bunkers. The world CO2-FFI series excludes them, and + the bunker deduction covers 2020 to net zero. The rebase therefore adds + fossil emissions and bunker emissions for 2020 to (baseline_year - 1), so + each bunker year from 2020 is deducted exactly once. + The rebase always uses actual observational data (e.g. PRIMAP), never scenario projections. What enters the rebase depends on the emission category: @@ -205,9 +531,9 @@ def process_rcb_to_2020_baseline( The calculation follows these steps: 1. Convert RCB from source unit to Mt * CO2e 2. If baseline_year > 2020: Add actual emissions from 2020 to - (baseline_year - 1) — fossil only for co2-ffi, fossil + BM LULUCF - for co2 - 3. Subtract bunkers deduction (always reduces budget) + (baseline_year - 1) — fossil + bunkers for co2-ffi, fossil + bunkers + + BM LULUCF for co2 + 3. Subtract bunkers deduction from 2020 to net zero (always reduces budget) 4. Apply LULUCF deduction (sign-ready from caller) Sign convention for deduction parameters: @@ -232,13 +558,18 @@ def process_rcb_to_2020_baseline( Emission category: "co2-ffi" or "co2". Controls whether BM LULUCF is included in the rebase. world_co2_ffi_emissions : pd.DataFrame - World-level CO2-FFI emissions timeseries with year columns (in Mt * CO2e) + World-level CO2-FFI emissions timeseries with year columns (in Mt * CO2e). + Excludes international bunkers. actual_bm_lulucf_emissions : pd.DataFrame or None, optional Actual bookkeeping-model LULUCF CO2 emissions (e.g. PRIMAP), with year columns (in Mt * CO2e). Used ONLY for the co2 rebase (default: None). + world_bunker_emissions : pd.DataFrame or None, optional + International bunker CO2 emissions timeseries with year columns + (in Mt * CO2e). Required when baseline_year > 2020 and + bunkers_deduction_mt is non-zero (default: None). bunkers_deduction_mt : float, optional - Total bunker CO2 emissions from 2020-2100 in Mt * CO2e (default: 0.0). - Always positive; subtracted from budget. + Total bunker CO2 emissions from 2020 to net zero in Mt * CO2e + (default: 0.0). Always positive; subtracted from budget. lulucf_future_deduction_mt : float, optional Projected future (2020/base → NZ) BM LULUCF adjustment in Mt * CO2e, sign-ready (default: 0.0). Non-zero for co2-ffi only, where it @@ -265,9 +596,11 @@ def process_rcb_to_2020_baseline( - 'rcb_original_unit': Original RCB unit - 'baseline_year': Original baseline year - 'rebase_total_mt': Emissions added to rebase from source year to 2020 - (positive, Mt * CO2e); fossil only for co2-ffi, fossil + actual BM - LULUCF for co2 + (positive, Mt * CO2e); fossil + bunkers for co2-ffi, fossil + bunkers + + actual BM LULUCF for co2 - 'rebase_fossil_mt': Fossil-only component of rebase (Mt * CO2e) + - 'rebase_bunkers_mt': International bunker component of rebase + (Mt * CO2e) - 'rebase_lulucf_mt': Actual BM LULUCF component of rebase (Mt * CO2e); only non-zero for co2 - 'deduction_bunkers_mt': Bunker fuel deduction (negative, Mt * CO2e) @@ -277,6 +610,12 @@ def process_rcb_to_2020_baseline( Non-zero for co2, zero for co2-ffi. - 'net_adjustment_mt': Total change from original to 2020 baseline (rebase + deductions + correction, Mt * CO2e) + + Raises + ------ + DataProcessingError + If a timeseries lacks a year of the rebase, or if baseline_year > 2020 + and bunkers are deducted without ``world_bunker_emissions`` """ # Get unit registry ureg = get_default_unit_registry() @@ -293,41 +632,72 @@ def process_rcb_to_2020_baseline( # Initialize rebase (baseline year shift) values rebase_total_mt = 0.0 rebase_fossil_mt = 0.0 + rebase_bunkers_mt = 0.0 rebase_lulucf_mt = 0.0 # Calculate emissions adjustment based on baseline year if rcb_baseline_year > target_baseline_year: # Need to add emissions from 2020 to (baseline_year - 1) - year_cols = [ - str(y) - for y in range(target_baseline_year, rcb_baseline_year) - if str(y) in world_co2_ffi_emissions.columns - ] + year_cols = [str(y) for y in range(target_baseline_year, rcb_baseline_year)] - if not year_cols: + # A partial rebase understates the budget, so every year must be present. + missing_years = missing_rebase_years( + rcb_baseline_year, world_co2_ffi_emissions, target_baseline_year + ) + if missing_years: raise DataProcessingError( - f"No CO2-FFI emission data found for years " - f"{target_baseline_year}-{rcb_baseline_year - 1}. " - f"Cannot calculate emissions adjustment for RCB conversion." + f"RCB source '{source_name}' has baseline year {rcb_baseline_year}. " + f"Rebasing to {target_baseline_year} needs CO2-FFI emissions for " + f"{target_baseline_year}-{rcb_baseline_year - 1}, but the " + f"emissions data lack {missing_years}." ) # Fossil rebase — always from actual PRIMAP data rebase_fossil_mt = world_co2_ffi_emissions[year_cols].sum(axis=1).iloc[0] + # Bunker rebase. The fossil series excludes bunkers and the deduction + # starts in 2020, so the rebase adds the bunkers of these years. + if world_bunker_emissions is not None: + missing_years = missing_rebase_years( + rcb_baseline_year, world_bunker_emissions, target_baseline_year + ) + if missing_years: + raise DataProcessingError( + f"RCB source '{source_name}' has baseline year " + f"{rcb_baseline_year}. Rebasing to {target_baseline_year} " + f"needs bunker emissions for " + f"{target_baseline_year}-{rcb_baseline_year - 1}, but the " + f"bunker data lack {missing_years}." + ) + rebase_bunkers_mt = world_bunker_emissions[year_cols].sum(axis=1).iloc[0] + elif bunkers_deduction_mt != 0: + raise DataProcessingError( + f"RCB source '{source_name}' has baseline year {rcb_baseline_year} " + f"and a bunker deduction from {target_baseline_year}. Rebasing " + f"needs the bunker emissions for " + f"{target_baseline_year}-{rcb_baseline_year - 1}: pass " + f"world_bunker_emissions." + ) + # BM LULUCF rebase — only for co2 (total CO2 needs LULUCF in rebase) # For co2-ffi, LULUCF is omitted because it cancels with the LULUCF # decomposition rebase_lulucf_mt = 0.0 if emission_category == "co2" and actual_bm_lulucf_emissions is not None: - lulucf_year_cols = [ - y for y in year_cols if y in actual_bm_lulucf_emissions.columns - ] - if lulucf_year_cols: - rebase_lulucf_mt = ( - actual_bm_lulucf_emissions[lulucf_year_cols].sum(axis=1).iloc[0] + missing_years = missing_rebase_years( + rcb_baseline_year, actual_bm_lulucf_emissions, target_baseline_year + ) + if missing_years: + raise DataProcessingError( + f"RCB source '{source_name}' has baseline year " + f"{rcb_baseline_year}. Rebasing to {target_baseline_year} " + f"needs LULUCF emissions for " + f"{target_baseline_year}-{rcb_baseline_year - 1}, but the " + f"emissions data lack {missing_years}." ) + rebase_lulucf_mt = actual_bm_lulucf_emissions[year_cols].sum(axis=1).iloc[0] - rebase_total_mt = rebase_fossil_mt + rebase_lulucf_mt + rebase_total_mt = rebase_fossil_mt + rebase_bunkers_mt + rebase_lulucf_mt if verbose: print( @@ -339,6 +709,11 @@ def process_rcb_to_2020_baseline( f"({target_baseline_year}-{rcb_baseline_year - 1}): " f"+{rebase_fossil_mt:.1f} Mt * CO2e" ) + print( + f" Adding bunker emissions " + f"({target_baseline_year}-{rcb_baseline_year - 1}): " + f"+{rebase_bunkers_mt:.1f} Mt * CO2e" + ) if emission_category == "co2": print( f" Adding actual BM LULUCF emissions " @@ -386,7 +761,7 @@ def process_rcb_to_2020_baseline( if verbose: if bunkers_deduction_mt > 0: print( - f" Bunkers deduction (2020-2100): " + f" Bunkers deduction ({target_baseline_year}-NZ): " f"{deduction_bunkers_mt:.1f} Mt * CO2e" ) if deduction_lulucf_future_mt != 0: @@ -411,6 +786,7 @@ def process_rcb_to_2020_baseline( "baseline_year": rcb_baseline_year, "rebase_total_mt": round(rebase_total_mt), "rebase_fossil_mt": round(rebase_fossil_mt), + "rebase_bunkers_mt": round(rebase_bunkers_mt), "rebase_lulucf_mt": round(rebase_lulucf_mt), "deduction_bunkers_mt": round(deduction_bunkers_mt), "deduction_lulucf_future_mt": round(deduction_lulucf_future_mt), diff --git a/src/fair_shares/library/validation/config.py b/src/fair_shares/library/validation/config.py index 5c76648..ca81784 100644 --- a/src/fair_shares/library/validation/config.py +++ b/src/fair_shares/library/validation/config.py @@ -116,6 +116,7 @@ def validate_allocation_year_for_co2( allocations_config: dict[str, list[dict[str, Any]]], emission_category: str, nghgi_min_year: int | None = None, + responsibility_min_year: int | None = None, ) -> None: """ Enforce year parameters >= nghgi_min_year for LULUCF-containing categories. @@ -129,6 +130,11 @@ def validate_allocation_year_for_co2( approaches (``pre_allocation_responsibility_year``) to ensure methodological consistency. + The pre-allocation responsibility window reads its own emissions frame, + which for these categories can be the fossil CO2 series. When the caller + passes the first year of that frame as ``responsibility_min_year``, + ``pre_allocation_responsibility_year`` is checked against it instead. + Parameters ---------- allocations_config : dict[str, list[dict[str, Any]]] @@ -138,12 +144,18 @@ def validate_allocation_year_for_co2( nghgi_min_year : int or None Minimum year for NGHGI-consistent allocations (derived from data). If None, uses the default (currently 2000). + responsibility_min_year : int or None + First year of the emissions frame used for pre-allocation + responsibility. If None, ``pre_allocation_responsibility_year`` is + checked against the NGHGI minimum year. Raises ------ AllocationError - If allocation start year or pre_allocation_responsibility_year < nghgi_min_year - for LULUCF-containing emission categories ("co2", "all-ghg") + If allocation start year < nghgi_min_year, or + pre_allocation_responsibility_year is before the first year of its + emissions frame (nghgi_min_year when ``responsibility_min_year`` is + None), for LULUCF-containing emission categories ("co2", "all-ghg") """ # Resolve NGHGI min year min_year = nghgi_min_year if nghgi_min_year is not None else _NGHGI_MIN_YEAR_DEFAULT @@ -177,7 +189,16 @@ def validate_allocation_year_for_co2( hist_year if isinstance(hist_year, (list, tuple)) else [hist_year] ) for hy in hist_years: - if hy < min_year: + if responsibility_min_year is not None: + if hy < responsibility_min_year: + raise AllocationError( + f"Configuration error for approach '{approach}':\n" + f" pre_allocation_responsibility_year = {hy} is " + f"before {responsibility_min_year}, the first year " + f"of the emissions data used for pre-allocation " + f"responsibility." + ) + elif hy < min_year: _raise_nghgi_year_error( approach, "pre_allocation_responsibility_year", diff --git a/src/fair_shares/library/validation/models.py b/src/fair_shares/library/validation/models.py index 8144b2f..5ab8bec 100644 --- a/src/fair_shares/library/validation/models.py +++ b/src/fair_shares/library/validation/models.py @@ -54,13 +54,13 @@ class AllocationInputs(BaseModel): ) first_allocation_year: int = Field( ..., - ge=1900, + ge=1850, le=2100, description="First year to allocate (must exist in data)", ) last_allocation_year: int = Field( ..., - ge=1900, + ge=1850, le=2100, description="Last year to allocate (must exist in data)", ) @@ -68,7 +68,10 @@ class AllocationInputs(BaseModel): # Optional inputs for adjustments gdp_ts: TimeseriesDataFrame | None = Field( None, - description="GDP time series data (required for capability adjustments, used from allocation year onwards)", + description=( + "GDP time series data (required for capability adjustments, used from " + "allocation year onwards, or at capability_reference_year when set)" + ), ) gini_s: pd.DataFrame | None = Field( None, @@ -91,6 +94,12 @@ class AllocationInputs(BaseModel): description="Base year for pre-allocation responsibility calculation", ) + # Capability snapshot year (when applicable) + capability_reference_year: int | None = Field( + None, + description="Capability snapshot year (GDP is read at this year only)", + ) + model_config = {"arbitrary_types_allowed": True} @field_validator("population_ts") @@ -182,8 +191,9 @@ def validate_year_coverage(self) -> AllocationInputs: "Population", ) - # Check GDP if provided - only validate first year to match decorator behavior - if self.gdp_ts is not None: + # Check GDP at the first year only. A capability snapshot reads GDP at its + # reference year instead, which the allocation function checks. + if self.gdp_ts is not None and self.capability_reference_year is None: validate_year_in_data( self.first_allocation_year, self.gdp_ts, diff --git a/tests/fixtures/rcb_golden_master.yaml b/tests/fixtures/rcb_golden_master.yaml new file mode 100644 index 0000000..bf29219 --- /dev/null +++ b/tests/fixtures/rcb_golden_master.yaml @@ -0,0 +1,122 @@ +# Golden master for the adjusted budgets of lamboll_2023, forster_2024 and ar6_2020. +# Inputs come from the pipeline outputs of primap-202503 with melo-2026 and cover +# 2020 to 2023 in Mt CO2. The test pins these values; do not regenerate. +# `expected` holds the budgets with the bunker rebase: the rebase adds the bunkers of +# 2020 to the year before the baseline (rebase_bunkers_mt). +# For co2 the rebase adds observed NGHGI LULUCF for the same years (rebase_lulucf_mt) +# and the convention gap runs from the baseline year of the source to net zero +# (`convention_gap_median_from`, keyed by baseline year). +# `rcb_2020_without_bunker_rebase_mt` holds the budgets captured 2026-10-01 from +# rcbs_co2-ffi.csv and rcbs_co2.csv, when the rebase added fossil emissions only. +# `rcb_2020_with_gap_from_2020_mt` holds the co2 budgets captured 2026-10-01 from +# rcbs_co2.csv, when every source took the convention gap from 2020 +# (`convention_gap_median_from_2020_captured_mt`). +inputs: + world_fossil_co2_mt: + 2020: 34343.1362 + 2021: 36068.3054 + 2022: 36228.508400000006 + 2023: 36737.4233 + world_co2_lulucf_mt: + 2020: -4121.601528 + 2021: -3756.03238 + 2022: -4209.201465 + 2023: -4274.392925 + bunkers_mt: + 2020: 870.9263603658384 + 2021: 911.739887821367 + 2022: 1039.5388075214562 + 2023: 1137.0650964616757 + scenario_adjustments: + 1.5p50: + bm_lulucf_cumulative_median: -53642.7 + convention_gap_median_from: {2020: -90280.9, 2023: -71238.1, 2024: -65410.0} + nz_year_median: 2050 + nz_year_min: 2034 + nz_year_max: 2075 + n_scenarios: 70 + n_reaching_nz: 70 + 2p83: + bm_lulucf_cumulative_median: -58710.7 + convention_gap_median_from: {2020: -119745.7, 2023: -100236.4, 2024: -94415.2} + nz_year_median: 2057 + nz_year_min: 2040 + nz_year_max: 2078 + n_scenarios: 106 + n_reaching_nz: 106 + 2p66: + bm_lulucf_cumulative_median: -87539.1 + convention_gap_median_from: {2020: -145477.8, 2023: -125793.3, 2024: -119566.0} + nz_year_median: 2070 + nz_year_min: 2044 + nz_year_max: 2100 + n_scenarios: 231 + n_reaching_nz: 191 + lulucf_shift_median_mt: + 1.5p50: + 2020: 2835.98316 + 2021: 2422.07858775 + 2022: 1649.3290775 + 2023: 1180.521057 + 2p83: + 2020: 2853.994815 + 2021: 2522.731611 + 2022: 1829.732873 + 2023: 1462.5375215 + 2p66: + 2020: 2901.91244 + 2021: 2524.902436 + 2022: 1961.33544 + 2023: 1621.06979 +expected: + co2-ffi: + - {source: lamboll_2023, scenario: 1.5p50, climate-assessment: 1.5C, quantile: 0.5, rcb_2020_nghgi_mt: 324802, rebase_fossil_mt: 106640, rebase_bunkers_mt: 2822, rebase_lulucf_mt: 0, deduction_bunkers_mt: -34660, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + - {source: lamboll_2023, scenario: 2p66, climate-assessment: 2C, quantile: 0.66, rcb_2020_nghgi_mt: 992061, rebase_fossil_mt: 106640, rebase_bunkers_mt: 2822, rebase_lulucf_mt: 0, deduction_bunkers_mt: -57401, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + - {source: forster_2024, scenario: 1.5p50, climate-assessment: 1.5C, quantile: 0.5, rcb_2020_nghgi_mt: 312677, rebase_fossil_mt: 143377, rebase_bunkers_mt: 3959, rebase_lulucf_mt: 0, deduction_bunkers_mt: -34660, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + - {source: forster_2024, scenario: 2p66, climate-assessment: 2C, quantile: 0.66, rcb_2020_nghgi_mt: 989935, rebase_fossil_mt: 143377, rebase_bunkers_mt: 3959, rebase_lulucf_mt: 0, deduction_bunkers_mt: -57401, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + - {source: forster_2024, scenario: 2p83, climate-assessment: 2C, quantile: 0.83, rcb_2020_nghgi_mt: 854717, rebase_fossil_mt: 143377, rebase_bunkers_mt: 3959, rebase_lulucf_mt: 0, deduction_bunkers_mt: -42619, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + - {source: ar6_2020, scenario: 1.5p50, climate-assessment: 1.5C, quantile: 0.5, rcb_2020_nghgi_mt: 465340, rebase_fossil_mt: 0, rebase_bunkers_mt: 0, rebase_lulucf_mt: 0, deduction_bunkers_mt: -34660, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + - {source: ar6_2020, scenario: 2p66, climate-assessment: 2C, quantile: 0.66, rcb_2020_nghgi_mt: 1092599, rebase_fossil_mt: 0, rebase_bunkers_mt: 0, rebase_lulucf_mt: 0, deduction_bunkers_mt: -57401, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + - {source: ar6_2020, scenario: 2p83, climate-assessment: 2C, quantile: 0.83, rcb_2020_nghgi_mt: 857381, rebase_fossil_mt: 0, rebase_bunkers_mt: 0, rebase_lulucf_mt: 0, deduction_bunkers_mt: -42619, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: 0} + co2: + - {source: lamboll_2023, scenario: 1.5p50, climate-assessment: 1.5C, quantile: 0.5, rcb_2020_nghgi_mt: 241477, rebase_fossil_mt: 106640, rebase_bunkers_mt: 2822, rebase_lulucf_mt: -12087, deduction_bunkers_mt: -34660, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -71238} + - {source: lamboll_2023, scenario: 2p66, climate-assessment: 2C, quantile: 0.66, rcb_2020_nghgi_mt: 854181, rebase_fossil_mt: 106640, rebase_bunkers_mt: 2822, rebase_lulucf_mt: -12087, deduction_bunkers_mt: -57401, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -125793} + - {source: forster_2024, scenario: 1.5p50, climate-assessment: 1.5C, quantile: 0.5, rcb_2020_nghgi_mt: 230905, rebase_fossil_mt: 143377, rebase_bunkers_mt: 3959, rebase_lulucf_mt: -16361, deduction_bunkers_mt: -34660, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -65410} + - {source: forster_2024, scenario: 2p66, climate-assessment: 2C, quantile: 0.66, rcb_2020_nghgi_mt: 854008, rebase_fossil_mt: 143377, rebase_bunkers_mt: 3959, rebase_lulucf_mt: -16361, deduction_bunkers_mt: -57401, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -119566} + - {source: forster_2024, scenario: 2p83, climate-assessment: 2C, quantile: 0.83, rcb_2020_nghgi_mt: 743941, rebase_fossil_mt: 143377, rebase_bunkers_mt: 3959, rebase_lulucf_mt: -16361, deduction_bunkers_mt: -42619, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -94415} + - {source: ar6_2020, scenario: 1.5p50, climate-assessment: 1.5C, quantile: 0.5, rcb_2020_nghgi_mt: 375059, rebase_fossil_mt: 0, rebase_bunkers_mt: 0, rebase_lulucf_mt: 0, deduction_bunkers_mt: -34660, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -90281} + - {source: ar6_2020, scenario: 2p66, climate-assessment: 2C, quantile: 0.66, rcb_2020_nghgi_mt: 947121, rebase_fossil_mt: 0, rebase_bunkers_mt: 0, rebase_lulucf_mt: 0, deduction_bunkers_mt: -57401, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -145478} + - {source: ar6_2020, scenario: 2p83, climate-assessment: 2C, quantile: 0.83, rcb_2020_nghgi_mt: 737635, rebase_fossil_mt: 0, rebase_bunkers_mt: 0, rebase_lulucf_mt: 0, deduction_bunkers_mt: -42619, deduction_lulucf_future_mt: 0, correction_lulucf_nghgi_mt: -119746} +rcb_2020_without_bunker_rebase_mt: + co2-ffi: + - {source: lamboll_2023, scenario: 1.5p50, rcb_2020_nghgi_mt: 321980} + - {source: lamboll_2023, scenario: 2p66, rcb_2020_nghgi_mt: 989239} + - {source: forster_2024, scenario: 1.5p50, rcb_2020_nghgi_mt: 308717} + - {source: forster_2024, scenario: 2p66, rcb_2020_nghgi_mt: 985976} + - {source: forster_2024, scenario: 2p83, rcb_2020_nghgi_mt: 850758} + - {source: ar6_2020, scenario: 1.5p50, rcb_2020_nghgi_mt: 465340} + - {source: ar6_2020, scenario: 2p66, rcb_2020_nghgi_mt: 1092599} + - {source: ar6_2020, scenario: 2p83, rcb_2020_nghgi_mt: 857381} + co2: + - {source: lamboll_2023, scenario: 1.5p50, rcb_2020_nghgi_mt: 219612} + - {source: lamboll_2023, scenario: 2p66, rcb_2020_nghgi_mt: 831674} + - {source: forster_2024, scenario: 1.5p50, rcb_2020_nghgi_mt: 202075} + - {source: forster_2024, scenario: 2p66, rcb_2020_nghgi_mt: 824137} + - {source: forster_2024, scenario: 2p83, rcb_2020_nghgi_mt: 714651} + - {source: ar6_2020, scenario: 1.5p50, rcb_2020_nghgi_mt: 375059} + - {source: ar6_2020, scenario: 2p66, rcb_2020_nghgi_mt: 947121} + - {source: ar6_2020, scenario: 2p83, rcb_2020_nghgi_mt: 737635} +rcb_2020_with_gap_from_2020_mt: + co2: + - {source: lamboll_2023, scenario: 1.5p50, rcb_2020_nghgi_mt: 222434} + - {source: lamboll_2023, scenario: 2p66, rcb_2020_nghgi_mt: 834496} + - {source: forster_2024, scenario: 1.5p50, rcb_2020_nghgi_mt: 206034} + - {source: forster_2024, scenario: 2p66, rcb_2020_nghgi_mt: 828096} + - {source: forster_2024, scenario: 2p83, rcb_2020_nghgi_mt: 718610} + - {source: ar6_2020, scenario: 1.5p50, rcb_2020_nghgi_mt: 375059} + - {source: ar6_2020, scenario: 2p66, rcb_2020_nghgi_mt: 947121} + - {source: ar6_2020, scenario: 2p83, rcb_2020_nghgi_mt: 737635} +convention_gap_median_from_2020_captured_mt: + 1.5p50: -90280.9 + 2p83: -119745.7 + 2p66: -145477.8 diff --git a/tests/fixtures/verified_dois.yaml b/tests/fixtures/verified_dois.yaml index 313c9a9..0202ca8 100644 --- a/tests/fixtures/verified_dois.yaml +++ b/tests/fixtures/verified_dois.yaml @@ -49,6 +49,14 @@ verified: publicationYear 2026, rights cc-by-4.0, access_right open. Confirms the record is the 3.1.1 release even though the file inside is named v3.1. + - doi: "10.5281/zenodo.22828743" + used_by: melo-2026-v4 + verified: 2026-10-01 + registrar: DataCite + evidence: >- + The LULUCF Data Hub, Melo et al. Zenodo record reports version 4.0.0, + published 2026-09-18, licence cc-by-4.0, access_right open. + - doi: "10.5281/zenodo.17845154" used_by: cmip7-historical-2025.12.07 verified: 2026-08-03 @@ -106,6 +114,25 @@ verified: Data 17, 965-1039, 2025, CC BY 4.0. This is the correct paper DOI; see the known_bad entry below for the one it replaces. + - doi: "10.5281/zenodo.17417124" + used_by: gcb-2025 + verified: 2026-10-01 + registrar: DataCite + evidence: >- + "The Global Carbon Project's fossil CO2 emissions dataset", Andrew and + Peters, Zenodo, version 2025v15, published 2025-10-22, rights cc-by-4.0, + access_right open. The record lists GCB2025v15_MtCO2_flat.csv at + 3,147,221 bytes with the md5 pinned in the registry. + + - doi: "10.5194/essd-18-3211-2026" + used_by: gcb-2025 + verified: 2026-10-01 + registrar: Crossref + evidence: >- + Friedlingstein et al., "Global Carbon Budget 2025", Earth System Science + Data 18, 3211-3288, issued 2026-05-13, CC BY 4.0. The paper behind the + dataset above. + - doi: "10.1038/s41558-023-01848-5" used_by: rcbs verified: 2026-08-03 @@ -124,6 +151,25 @@ verified: Science Data 16, 2625-2658, CC BY 4.0. The other published source behind the budget table. + - doi: "10.5194/essd-18-3889-2026" + used_by: rcbs + verified: 2026-10-01 + registrar: Crossref + evidence: >- + Forster et al., "Indicators of Global Climate Change 2025: annual update + of key indicators of the state of the climate system and human + influence", Earth System Science Data 18, 3889-3933, published + 2026-06-11. Source of the `forster_2026` budgets. + + - doi: "10.1017/9781009157896.001" + used_by: rcbs + verified: 2026-10-01 + registrar: Crossref + evidence: >- + "Summary for Policymakers", book chapter in "Climate Change 2021 – The + Physical Science Basis", Cambridge University Press, pages 3-32. Source + of the `ar6_wg1_2021` budgets (Table SPM.2). + # DOIs known to be wrong. The registry must never carry one of these. known_bad: - doi: "10.5194/essd-16-5567-2024" diff --git a/tests/integration/test_gcb_2025_smoke.py b/tests/integration/test_gcb_2025_smoke.py new file mode 100644 index 0000000..a524f68 --- /dev/null +++ b/tests/integration/test_gcb_2025_smoke.py @@ -0,0 +1,64 @@ +"""End-to-end smoke test: equal per capita budget on ``gcb-2025`` emissions. + +Reads the processed tree of a ``gcb-2025`` + ``co2-ffi`` + ``rcbs`` pipeline run +and skips when it has not been built:: + + uv run snakemake --cores 1 --config emission_category=co2-ffi \ + active_emissions_source=gcb-2025 active_gdp_source=wdi-2025 \ + active_population_source=un-owid-2025 active_gini_source=wdi-2025 \ + active_target_source=rcbs +""" + +from __future__ import annotations + +import pandas as pd +import pytest +from pyprojroot import here + +from fair_shares.library.allocations.manager import run_allocation +from fair_shares.library.utils import ensure_string_year_columns +from fair_shares.library.utils.data.rcb import calculate_budget_from_rcb + +PROCESSED = ( + here() + / "output/gcb-2025_wdi-2025_un-owid-2025_wdi-2025_rcbs_co2-ffi" + / "intermediate/processed" +) +ALLOCATION_YEAR = 1990 + + +def _read(name: str, index: list[str]) -> pd.DataFrame: + return ensure_string_year_columns(pd.read_csv(PROCESSED / name).set_index(index)) + + +@pytest.mark.parametrize("rcb_source", ["forster_2026", "ar6_wg1_2021"]) +def test_shares_sum_to_one_and_budgets_sum_to_the_adjusted_total(rcb_source): + if not (PROCESSED / "rcbs_co2-ffi.csv").is_file(): + pytest.skip("gcb-2025 processed data not built") + rcbs = pd.read_csv(PROCESSED / "rcbs_co2-ffi.csv") + row = rcbs[(rcbs["source"] == rcb_source) & (rcbs["scenario"] == "1.7p50")] + if row.empty: + pytest.skip(f"{rcb_source} 1.7p50 is not in the processed budgets") + + population = _read("country_population_timeseries.csv", ["iso3c", "unit"]) + world = _read( + "world_emissions_co2-ffi_timeseries.csv", + ["iso3c", "unit", "emission-category"], + ) + result = run_allocation( + "equal-per-capita-budget", + population_ts=population, + allocation_year=ALLOCATION_YEAR, + emission_category="co2-ffi", + ) + shares = result.relative_shares_cumulative_emission[str(ALLOCATION_YEAR)] + assert shares.sum() == pytest.approx(1.0, abs=1e-9) + + # Adjusted total = world emissions 1990-2019 + the budget rebased to 2020. + total = calculate_budget_from_rcb( + row["rcb_2020_nghgi_mt"].iloc[0], ALLOCATION_YEAR, world, verbose=False + ) + budget = pd.DataFrame({str(ALLOCATION_YEAR): [total]}, index=world.index) + absolute = result.get_absolute_budgets(budget)[str(ALLOCATION_YEAR)] + assert absolute.sum() == pytest.approx(total, rel=1e-9) + assert total > row["rcb_2020_nghgi_mt"].iloc[0] > 0 diff --git a/tests/unit/test_early_start_years.py b/tests/unit/test_early_start_years.py new file mode 100644 index 0000000..29f94a6 --- /dev/null +++ b/tests/unit/test_early_start_years.py @@ -0,0 +1,327 @@ +"""Budget allocations from start years before the GDP series. + +Population and fossil CO2 start in 1850; GDP starts in 1990. A capability +snapshot (``capability_reference_year``) needs GDP at the reference year only, +so the adjusted budget approaches run from 1850. Year-by-year capability still +needs GDP at the allocation year. +""" + +from __future__ import annotations + +import numpy as np +import pandas as pd +import pytest +from pydantic import ValidationError + +from fair_shares.library.allocations import run_parameter_grid +from fair_shares.library.allocations.budgets import ( + equal_per_capita_budget, + per_capita_adjusted_budget, + per_capita_adjusted_gini_budget, +) +from fair_shares.library.exceptions import AllocationError, DataProcessingError + +COUNTRIES = ["AAA", "BBB", "CCC", "DDD"] +POP_YEARS = [1850, 1900, 1950, 1990, 2000, 2015, 2020, 2023, 2050] +GDP_YEARS = [1990, 2000, 2015, 2020, 2023] +EMISSION_YEARS = [1850, 1900, 1950, 1990, 2000, 2015, 2020, 2023] +# GDP per capita in 2020 (USD): two countries below a 7500 floor, two above. +GDP_PER_CAPITA_2020 = [2000.0, 6000.0, 25000.0, 60000.0] + + +def _frames() -> dict[str, pd.DataFrame]: + """Population from 1850, GDP from 1990, fossil emissions from 1850.""" + population = pd.DataFrame( + { + str(y): [(10.0 + 5.0 * i) * (1.0 + 0.004 * (y - 1850)) for i in range(4)] + for y in POP_YEARS + }, + index=pd.MultiIndex.from_product( + [COUNTRIES, ["million"]], names=["iso3c", "unit"] + ), + ) + # GDP in million USD so that GDP / population (million) is USD per capita. + gdp = pd.DataFrame( + { + str(y): [ + GDP_PER_CAPITA_2020[i] + * (1.0 + 0.02 * (i + 1) * (y - 2020) / 10.0) + * population[str(y)].iloc[i] + for i in range(4) + ] + for y in GDP_YEARS + }, + index=pd.MultiIndex.from_product( + [COUNTRIES, ["million"]], names=["iso3c", "unit"] + ), + ) + emissions = pd.DataFrame( + { + str(y): [(1.0 + 3.0 * i) * (1.0 + 0.01 * (y - 1850)) for i in range(4)] + for y in EMISSION_YEARS + }, + index=pd.MultiIndex.from_product( + [COUNTRIES, ["Mt * CO2e"], ["co2-ffi"]], + names=["iso3c", "unit", "emission-category"], + ), + ) + gini = pd.DataFrame({"iso3c": COUNTRIES, "gini": [0.30, 0.45, 0.35, 0.40]}) + return {"population": population, "gdp": gdp, "emissions": emissions, "gini": gini} + + +def _shares(result) -> pd.Series: + df = result.relative_shares_cumulative_emission + return df.iloc[:, 0].droplevel(["unit", "emission-category"]) + + +def _adjusted(f, **kwargs) -> pd.Series: + return _shares( + per_capita_adjusted_budget( + population_ts=f["population"], + gdp_ts=f["gdp"], + emission_category="co2-ffi", + **kwargs, + ) + ) + + +def _gini(f, **kwargs) -> pd.Series: + return _shares( + per_capita_adjusted_gini_budget( + population_ts=f["population"], + gdp_ts=f["gdp"], + gini_s=f["gini"], + emission_category="co2-ffi", + income_floor=7500.0, + **kwargs, + ) + ) + + +def test_equal_per_capita_budget_runs_from_1850(): + f = _frames() + shares = _shares( + equal_per_capita_budget( + population_ts=f["population"], + allocation_year=1850, + emission_category="co2-ffi", + ) + ) + cumulative_population = f["population"].sum(axis=1).droplevel("unit") + expected = cumulative_population / cumulative_population.sum() + np.testing.assert_allclose(shares.to_numpy(), expected.to_numpy(), rtol=1e-12) + + +def test_allocation_year_before_1850_raises(): + f = _frames() + with pytest.raises(ValidationError, match="greater than or equal to 1850"): + equal_per_capita_budget( + population_ts=f["population"], + allocation_year=1849, + emission_category="co2-ffi", + ) + + +@pytest.mark.parametrize("allocation_year", [1850, 1990]) +@pytest.mark.parametrize("run", [_adjusted, _gini]) +def test_capability_snapshot_runs_from_early_start_years(run, allocation_year): + shares = run( + _frames(), + allocation_year=allocation_year, + capability_weight=1.0, + capability_reference_year=2020, + ) + assert shares.notna().all() + assert shares.sum() == pytest.approx(1.0, abs=1e-12) + # The poorest country gains over its equal per capita share. + assert shares["AAA"] > 10.0 / 70.0 + + +def test_snapshot_with_a_window_that_ends_before_the_gdp_series(): + shares = _adjusted( + _frames(), + allocation_year=1850, + cumulative_end_year=1950, + capability_weight=1.0, + capability_reference_year=2020, + ) + assert shares.sum() == pytest.approx(1.0, abs=1e-12) + + +def test_year_by_year_capability_before_the_gdp_series_raises(): + with pytest.raises(DataProcessingError, match="Required years not found in GDP"): + _adjusted(_frames(), allocation_year=1850, capability_weight=1.0) + + +def test_reference_year_outside_the_gdp_series_raises(): + with pytest.raises(AllocationError, match="outside the GDP data range"): + _adjusted( + _frames(), + allocation_year=1850, + capability_weight=1.0, + capability_reference_year=1950, + ) + + +def test_capability_only_shares_do_not_depend_on_the_weight(): + """Weights are normalised to their sum, so a lone capability weight acts as 1.""" + kwargs = dict(allocation_year=1850, capability_reference_year=2020) + pd.testing.assert_series_equal( + _adjusted(_frames(), capability_weight=0.3, **kwargs), + _adjusted(_frames(), capability_weight=1.0, **kwargs), + ) + + +def test_responsibility_only_run_with_a_reference_year_does_not_read_gdp(): + """The grid passes GDP to every adjusted run, also when capability is off.""" + f = _frames() + kwargs = dict( + allocation_year=1950, + country_actual_emissions_ts=f["emissions"], + pre_allocation_responsibility_weight=1.0, + pre_allocation_responsibility_year=1850, + capability_reference_year=2020, + ) + without_gdp = _shares( + per_capita_adjusted_budget( + population_ts=f["population"], emission_category="co2-ffi", **kwargs + ) + ) + pd.testing.assert_series_equal(_adjusted(f, **kwargs), without_gdp) + + +# Shares from the code before the snapshot change (allocation years inside the +# GDP series), in COUNTRIES order. +PINNED = { + "adjusted, 1990, year-by-year": ( + dict(allocation_year=1990, capability_weight=1.0), + [ + 0.5282854161360591, + 0.27415035675052307, + 0.11178139292044748, + 0.08578283419297027, + ], + ), + "adjusted, 1990, snapshot 2020": ( + dict( + allocation_year=1990, capability_weight=1.0, capability_reference_year=2020 + ), + [ + 0.5343436171274648, + 0.2728272964878631, + 0.1095039618388284, + 0.08332512454584375, + ], + ), + "adjusted, 2015, snapshot 2000, responsibility from 1850": ( + dict( + allocation_year=2015, + capability_weight=0.5, + capability_reference_year=2000, + pre_allocation_responsibility_weight=0.5, + pre_allocation_responsibility_year=1850, + ), + [ + 0.5054500871798192, + 0.23403826224142912, + 0.1392553692665111, + 0.12125628131224056, + ], + ), + "gini, 1990, year-by-year": ( + dict(allocation_year=1990), + [ + 0.6557159057156675, + 0.2719315511156184, + 0.04220255322242418, + 0.030149989946289923, + ], + ), + "gini, 1990, snapshot 2020": ( + dict(allocation_year=1990, capability_reference_year=2020), + [ + 0.6677068995500234, + 0.2625082675903675, + 0.04075970083585096, + 0.029025132023758147, + ], + ), + "gini, 2015, snapshot 2000": ( + dict(allocation_year=2015, capability_reference_year=2000), + [ + 0.6346141754907716, + 0.288667408408946, + 0.04466689143303458, + 0.032051524667247644, + ], + ), +} + + +@pytest.mark.parametrize("case", PINNED) +def test_results_inside_the_gdp_series_are_unchanged(case): + kwargs, expected = PINNED[case] + f = _frames() + if "pre_allocation_responsibility_year" in kwargs: + kwargs = {**kwargs, "country_actual_emissions_ts": f["emissions"]} + run = _gini if case.startswith("gini") else _adjusted + shares = run(f, **kwargs) + np.testing.assert_allclose(shares.loc[COUNTRIES].to_numpy(), expected, rtol=1e-12) + + +RESPONSIBILITY_FROM_1850 = { + "per-capita-adjusted-budget": [ + { + "allocation-year": 2015, + "pre-allocation-responsibility-weight": 1.0, + "capability-weight": 0.0, + "pre-allocation-responsibility-year": 1850, + } + ] +} + + +class TestResponsibilityWindowForCo2: + """For ``co2`` the responsibility frame is fossil CO2, which starts in 1850.""" + + @staticmethod + def _co2_frame(f) -> pd.DataFrame: + """Composite ``co2`` emissions, available from 2000 only.""" + return ( + f["emissions"] + .loc[:, "2000":] + .rename(index={"co2-ffi": "co2"}, level="emission-category") + ) + + def _grid_shares(self, f, responsibility_emissions_ts) -> pd.Series: + (result,) = run_parameter_grid( + allocations_config=RESPONSIBILITY_FROM_1850, + population_ts=f["population"], + country_actual_emissions_ts=self._co2_frame(f), + responsibility_emissions_ts=responsibility_emissions_ts, + emission_category="co2", + ) + return _shares(result) + + def test_window_from_1850_passes_with_the_fossil_frame(self): + f = _frames() + base = self._grid_shares(f, f["emissions"]) + assert base.sum() == pytest.approx(1.0, abs=1e-12) + + # The window is [1850, 2015): 1850 counts, 2015 does not. + changed_1850 = f["emissions"].copy() + changed_1850.loc["AAA", "1850"] = 500.0 + assert (self._grid_shares(f, changed_1850) - base).abs().max() > 1e-6 + + changed_2015 = f["emissions"].copy() + changed_2015.loc["AAA", "2015"] = 500.0 + pd.testing.assert_series_equal(self._grid_shares(f, changed_2015), base) + + def test_window_before_the_frame_raises(self): + f = _frames() + with pytest.raises(AllocationError, match="is before 1990, the first year"): + self._grid_shares(f, f["emissions"].loc[:, "1990":]) + + def test_without_a_separate_frame_the_nghgi_floor_stands(self): + with pytest.raises(AllocationError, match="is before 2000"): + self._grid_shares(_frames(), None) diff --git a/tests/unit/test_emissions_gcb_2025.py b/tests/unit/test_emissions_gcb_2025.py new file mode 100644 index 0000000..c60ad0e --- /dev/null +++ b/tests/unit/test_emissions_gcb_2025.py @@ -0,0 +1,196 @@ +"""The opt-in Global Carbon Budget 2025 emissions source (``gcb-2025``).""" + +from __future__ import annotations + +from types import SimpleNamespace + +import pandas as pd +import pytest +import yaml + +from fair_shares.library import citations, paths +from fair_shares.library.config.models import ( + DataSourcesConfig, + EmissionsDataParameters, +) +from fair_shares.library.data_registry import load_registry, normalise_target +from fair_shares.library.exceptions import ConfigurationError +from fair_shares.library.utils.data.config import ( + get_bunkers_source, + get_emission_preprocessing_categories, +) +from fair_shares.library.utils.data.gcb import ( + AVIATION, + GLOBAL, + ISO, + NAME, + OIL_FIRES, + SHIPPING, + VALUE, + YEAR, + gcb_bunkers, + gcb_fossil_co2, +) + +KEY = "gcb-2025" +ALL_CATEGORIES = [ + "co2-ffi", + "co2", + "co2-lulucf", + "non-co2", + "all-ghg", + "all-ghg-ex-co2-lulucf", +] + + +def _config() -> dict: + raw = yaml.safe_load( + paths.packaged_config("data_sources/data_sources_unified.yaml").read_text( + encoding="utf-8" + ) + ) + return raw["emissions"][KEY] + + +def _long(rows: dict[tuple[str, str | None], dict[int, float | None]]) -> pd.DataFrame: + """Build a GCB-shaped long frame from {(name, iso): {year: value}}.""" + return pd.DataFrame( + [ + {NAME: name, ISO: iso, YEAR: year, VALUE: value} + for (name, iso), series in rows.items() + for year, value in series.items() + ] + ) + + +def test_registry_entry_is_opt_in_and_matches_config(): + source = load_registry()[KEY] + assert source.tier == "optional" + assert source.doi == "10.5281/zenodo.17417124" + assert source.license == "CC-BY-4.0" + (download,) = source.downloads + assert normalise_target(_config()["path"]) == download.target + + +def test_a_co2_ffi_only_source_is_asked_for_no_other_category(): + available = _config()["data_parameters"]["available_categories"] + assert available == ["co2-ffi"] + for target in ("rcbs", "rcb-pathways"): + requested = get_emission_preprocessing_categories(target, "co2-ffi", available) + assert requested == ("co2-ffi",) + # A source that declares every category is asked for the LULUCF primitives too. + assert get_emission_preprocessing_categories("rcbs", "co2-ffi", ALL_CATEGORIES) == ( + "all-ghg-ex-co2-lulucf", + "co2-ffi", + "co2-lulucf", + ) + # The config entry validates without a historical scenario. + assert EmissionsDataParameters(**_config()["data_parameters"]).scenario is None + + +def test_co2_is_valid_for_a_co2_ffi_only_source_with_a_lulucf_source(): + """``co2`` = ``co2-ffi`` + inventory LULUCF, so it needs an active LULUCF source.""" + available = _config()["data_parameters"]["available_categories"] + + def config(category: str, lulucf: str | None) -> SimpleNamespace: + parameters = SimpleNamespace(available_categories=available) + return SimpleNamespace( + active_emissions_source=KEY, + emission_category=category, + active_lulucf_source=lulucf, + emissions={KEY: SimpleNamespace(data_parameters=parameters)}, + ) + + validate = DataSourcesConfig.validate_emission_category + validate(config("co2", "melo-2026-v4")) + with pytest.raises(ConfigurationError, match="when a LULUCF source is active"): + validate(config("co2", None)) + with pytest.raises(ConfigurationError, match="only provides: co2-ffi"): + validate(config("all-ghg", "melo-2026-v4")) + # The pipeline still asks the emissions source for co2-ffi alone. + assert get_emission_preprocessing_categories("rcbs", "co2", available) == ( + "co2-ffi", + ) + + +def test_bunkers_follow_the_emissions_source(): + assert get_bunkers_source(KEY) == KEY + assert get_bunkers_source("primap-202503") == "gcb-2024" + run = {"target": "rcbs", "emissions": KEY, "gdp": "wdi-2025"} + names = citations.resolve_source_names(run, emission_category="co2-ffi") + assert KEY in names + assert "gcb-2024" not in names + + +def test_blank_years_special_rows_and_world_row(): + """Synthetic file: two countries, one unmapped code, one row without a code.""" + raw = _long( + { + ("Aland", "AAA"): {2000: None, 2001: None, 2002: 5.0, 2003: 6.0}, + # 1999 precedes first_year and is dropped. + ("Beland", "BBB"): { + 1999: 9.0, + 2000: 10.0, + 2001: None, + 2002: 12.0, + 2003: 13.0, + }, + ("Unmapped", "UUU"): {2000: 1.0, 2001: 1.0, 2002: 1.0, 2003: 1.0}, + ("Some Islands", None): {2000: 0.5, 2001: 0.5, 2002: None, 2003: None}, + ("International Shipping", SHIPPING): {2000: 3, 2001: 3, 2002: 3, 2003: 3}, + ("International Aviation", AVIATION): {2000: 2, 2001: 2, 2002: 2, 2003: 2}, + (OIL_FIRES, None): {2000: None, 2001: 7.0, 2002: 0.0, 2003: 0.0}, + ("Global", GLOBAL): {2000: 16.5, 2001: 13.5, 2002: 23.0, 2003: 25.0}, + } + ) + emissions, excluded = gcb_fossil_co2(raw, {"AAA", "BBB"}, "WLD", first_year=2000) + + values = emissions.droplevel(["unit", "emission-category"]) + assert list(values.index) == ["AAA", "BBB", "WLD"] + assert list(values.columns) == ["2000", "2001", "2002", "2003"] + assert emissions.index.get_level_values("unit").unique().tolist() == ["Mt * CO2e"] + # Blanks count as zero, before the first record and inside a series. + assert values.loc["AAA"].tolist() == [0.0, 0.0, 5.0, 6.0] + assert values.loc["BBB"].tolist() == [10.0, 0.0, 12.0, 13.0] + # World row = Global - shipping - aviation - oil fires. + assert values.loc["WLD"].tolist() == [11.5, 1.5, 18.0, 20.0] + # The unmapped code and the row without a code stay in the world row only. + rest = values.loc["WLD"] - values.loc[["AAA", "BBB"]].sum() + assert rest.tolist() == [1.5, 1.5, 1.0, 1.0] + + assert excluded.loc[OIL_FIRES].tolist() == [0.0, 7.0, 0.0, 0.0] + assert gcb_bunkers(raw, first_year=2000).loc["bunkers"].tolist() == [5.0] * 4 + + +def test_world_closure_on_the_real_file(): + """Countries + other rows + bunkers + oil fires = GCB Global, 1850-2024.""" + config = _config() + # Another test seeds the cached data directory with a temp path. + paths.reset_path_cache() + path = paths.resolve_source_path(config["path"]) + if not path.exists(): + pytest.skip("GCB 2025 file not fetched") + raw = pd.read_csv(path) + world_key = config["data_parameters"]["world_key"] + every_code = set(raw[ISO].dropna()) - {GLOBAL, SHIPPING, AVIATION} + + emissions, excluded = gcb_fossil_co2(raw, every_code, world_key) + values = emissions.droplevel(["unit", "emission-category"]) + world = values.loc[world_key] + assert list(values.columns) == [str(y) for y in range(1850, 2025)] + assert not values.isna().any().any() + + raw = raw[raw[YEAR] >= 1850] + global_total = raw[raw[ISO] == GLOBAL].set_index(YEAR)[VALUE] + global_total.index = global_total.index.astype(str) + no_code = raw[raw[ISO].isna() & (raw[NAME] != OIL_FIRES)] + no_code = no_code.groupby(YEAR)[VALUE].sum().reindex(range(1850, 2025)).fillna(0) + no_code.index = no_code.index.astype(str) + + # The file rounds to six decimals, so sums over 220 rows agree to about 1e-5. + countries = values.drop(index=world_key).sum() + assert (countries + no_code - world).abs().max() < 1e-4 + assert (world + excluded.sum() - global_total).abs().max() < 1e-9 + bunkers = gcb_bunkers(raw).loc["bunkers"] + assert (bunkers - excluded.loc[[SHIPPING, AVIATION]].sum()).abs().max() == 0 + assert excluded.loc[OIL_FIRES, "1991"] == pytest.approx(477.924832) diff --git a/tests/unit/test_lulucf_melo_v4.py b/tests/unit/test_lulucf_melo_v4.py new file mode 100644 index 0000000..529b456 --- /dev/null +++ b/tests/unit/test_lulucf_melo_v4.py @@ -0,0 +1,62 @@ +"""The opt-in LULUCF Data Hub v4.0.0 source (``melo-2026-v4``).""" + +from __future__ import annotations + +import pandas as pd +import pytest +import yaml + +from fair_shares.library import paths +from fair_shares.library.data_registry import load_registry, normalise_target + +KEY = "melo-2026-v4" + + +def _config() -> dict: + raw = yaml.safe_load( + paths.packaged_config("data_sources/data_sources_unified.yaml").read_text( + encoding="utf-8" + ) + ) + return raw["lulucf"][KEY] + + +def test_registry_entry_is_opt_in_and_matches_config(): + source = load_registry()[KEY] + assert source.tier == "optional" + assert source.doi == "10.5281/zenodo.22828743" + assert source.license == "CC-BY-4.0" + (download,) = source.downloads + assert len(download.sha256) == 64 + assert normalise_target(_config()["path"]) == download.target + + +def test_world_row_and_years_come_from_the_gap_filled_file(): + config = _config() + params = config["data_parameters"] + # Another test seeds the cached data directory with a temp path. + paths.reset_path_cache() + path = paths.resolve_source_path(config["path"]) + if not path.exists(): + pytest.skip("v4.0.0 LULUCF file not fetched") + + raw = pd.read_csv(path) + lulucf = raw[ + (raw[params["iso3_column"]] != "EU27") + & (raw["Category"] == params["category_filter"]) + & (raw["Gas"] == params["gas_filter"]) + ] + wide = lulucf.pivot_table( + index=params["iso3_column"], + columns=params["year_column"], + values=params["value_column"], + aggfunc="sum", + ) + assert list(wide.columns) == list(range(2000, 2025)) + expected = raw[ + (raw[params["iso3_column"]] == params["world_key"]) + & (raw["Category"] == "LULUCF") + ].set_index(params["year_column"])[params["value_column"]] + pd.testing.assert_series_equal( + wide.loc[params["world_key"]], expected, check_names=False + ) diff --git a/tests/unit/test_nghgi_corrections.py b/tests/unit/test_nghgi_corrections.py index 7ce1673..1f69945 100644 --- a/tests/unit/test_nghgi_corrections.py +++ b/tests/unit/test_nghgi_corrections.py @@ -284,6 +284,19 @@ def test_single_year(self, bunker_ts): ) assert result == pytest.approx(1000.0) # 2020 only + def test_end_year_comes_from_the_data(self): + """The last observed year is used as observed; later years take its rate.""" + observed_to_2024 = _make_timeseries( + {2020: 800.0, 2021: 900.0, 2022: 1000.0, 2023: 1100.0, 2024: 1200.0}, + row_label="bunkers", + ) + result = compute_bunker_deduction( + bunker_ts=observed_to_2024, start_year=2020, net_zero_year=2030 + ) + observed = 800.0 + 900.0 + 1000.0 + 1100.0 + 1200.0 + extrapolated = 1200.0 * (2030 - 2024) + assert result == pytest.approx(observed + extrapolated) + def test_shorter_nz_year_smaller_deduction(self, bunker_ts): """Using a shorter net-zero year reduces the total deduction.""" result_short = compute_bunker_deduction( @@ -388,10 +401,15 @@ def test_net_adjustment_matches_components(self, ffi_emissions): rcb_baseline_year=2023, emission_category="co2-ffi", world_co2_ffi_emissions=ffi_emissions, + world_bunker_emissions=_make_timeseries( + {2020: 800.0, 2021: 900.0, 2022: 1000.0} + ), bunkers_deduction_mt=47_000.0, lulucf_future_deduction_mt=20_000.0, verbose=False, ) + assert result["rebase_bunkers_mt"] == 2_700 + assert result["rebase_total_mt"] == 27_300 + 2_700 expected_total = ( result["rebase_total_mt"] + result["deduction_bunkers_mt"] @@ -417,6 +435,7 @@ def test_output_dict_has_required_keys(self, ffi_emissions): "baseline_year", "rebase_total_mt", "rebase_fossil_mt", + "rebase_bunkers_mt", "rebase_lulucf_mt", "deduction_bunkers_mt", "deduction_lulucf_future_mt", @@ -570,60 +589,41 @@ def nghgi_ts(self) -> pd.DataFrame: {1990: -400.0, 2000: -500.0, 2020: -600.0}, row_label="nghgi_lulucf" ) - @pytest.fixture - def bunker_ts(self) -> pd.DataFrame: - return _make_timeseries( - {1980: 100.0, 1990: 200.0, 2000: 300.0, 2020: 400.0}, row_label="bunkers" - ) - - def test_pre_nghgi_years_are_nan(self, fossil_ts, nghgi_ts, bunker_ts): + def test_pre_nghgi_years_are_nan(self, fossil_ts, nghgi_ts): """Years outside NGHGI coverage should be NaN (no BM fallback).""" result = build_nghgi_world_co2_timeseries( fossil_ts=fossil_ts, nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) # 1980: no NGHGI data -> NaN assert pd.isna(result["1980"].iloc[0]) - def test_nghgi_years_use_nghgi(self, fossil_ts, nghgi_ts, bunker_ts): - """Years with NGHGI data should use NGHGI LULUCF.""" + def test_world_co2_is_fossil_plus_nghgi_lulucf(self, fossil_ts, nghgi_ts): + """World CO2 = fossil + NGHGI LULUCF. The fossil series excludes bunkers.""" result = build_nghgi_world_co2_timeseries( fossil_ts=fossil_ts, nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) - # 1990: fossil(6000) + NGHGI(-400) - bunkers(200) = 5400 - assert result["1990"].iloc[0] == pytest.approx(5400.0) - # 2000: fossil(7000) + NGHGI(-500) - bunkers(300) = 6200 - assert result["2000"].iloc[0] == pytest.approx(6200.0) + # 1990: fossil(6000) + NGHGI(-400) = 5600 + assert result["1990"].iloc[0] == pytest.approx(5600.0) + # 2000: fossil(7000) + NGHGI(-500) = 6500 + assert result["2000"].iloc[0] == pytest.approx(6500.0) + # 2020: fossil(9000) + NGHGI(-600) = 8400 + assert result["2020"].iloc[0] == pytest.approx(8400.0) - def test_bunkers_subtracted(self, fossil_ts, nghgi_ts, bunker_ts): - """Bunker emissions are subtracted in years with NGHGI data.""" - result = build_nghgi_world_co2_timeseries( - fossil_ts=fossil_ts, - nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, - ) - # Years with NGHGI data should have bunkers subtracted - for y in ["1990", "2000", "2020"]: - assert result[y].iloc[0] < fossil_ts[y].iloc[0] - - def test_emission_category_label_is_co2(self, fossil_ts, nghgi_ts, bunker_ts): + def test_emission_category_label_is_co2(self, fossil_ts, nghgi_ts): """Output emission-category label should be 'co2'.""" result = build_nghgi_world_co2_timeseries( fossil_ts=fossil_ts, nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) assert result.index.get_level_values("emission-category")[0] == "co2" - def test_index_structure_matches_fossil_ts(self, fossil_ts, nghgi_ts, bunker_ts): + def test_index_structure_matches_fossil_ts(self, fossil_ts, nghgi_ts): """Output index structure matches fossil_ts (same names, same iso3c/unit).""" result = build_nghgi_world_co2_timeseries( fossil_ts=fossil_ts, nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) assert result.index.names == fossil_ts.index.names assert result.index.get_level_values("iso3c")[0] == "World" diff --git a/tests/unit/test_notebook_106_nghgi_co2.py b/tests/unit/test_notebook_106_nghgi_co2.py index 5b5d99a..9bd12c2 100644 --- a/tests/unit/test_notebook_106_nghgi_co2.py +++ b/tests/unit/test_notebook_106_nghgi_co2.py @@ -1,10 +1,9 @@ """ -Tests for BUG 7 fix: NGHGI-consistent world CO2 in notebook 106. +Tests for the NGHGI-consistent world CO2 in notebook 106. Verifies that when emission_category=co2, notebook 106 constructs the world -emissions timeseries using the 3-parameter build_nghgi_world_co2_timeseries() -from nghgi.py (fossil, nghgi, bunker), NOT a simplified co2_ffi + -co2_lulucf sum. +emissions timeseries with build_nghgi_world_co2_timeseries() from nghgi.py: +fossil CO2 (which excludes international bunkers) plus NGHGI LULUCF. These tests use synthetic data to validate the notebook's NGHGI loading logic in isolation, without requiring actual data files. @@ -41,28 +40,16 @@ def _make_nghgi_ts(year_values: dict[int, float]) -> pd.DataFrame: ) -def _make_bunker_ts(year_values: dict[int, float]) -> pd.DataFrame: - """Build a single-row bunker timeseries (GCB format).""" - return pd.DataFrame( - [[year_values[y] for y in sorted(year_values)]], - columns=[str(y) for y in sorted(year_values)], - index=pd.Index(["bunkers"], name="source"), - ) - - # --------------------------------------------------------------------------- # Test: build_nghgi_world_co2_timeseries is used for co2 category # --------------------------------------------------------------------------- class TestNotebook106NghgiCo2: - """Verify notebook 106 uses the 3-parameter build_nghgi_world_co2_timeseries.""" + """Verify the world CO2 that notebook 106 builds for the co2 category.""" - def test_co2_uses_build_nghgi_world_co2_timeseries(self): - """When emission_category=co2, the notebook must call - build_nghgi_world_co2_timeseries with 3 parameters (fossil, nghgi, - bunker), not a simplified 2-parameter version. - """ + def test_co2_is_fossil_plus_nghgi_lulucf(self): + """World CO2 = fossil + LULUCF(NGHGI). The fossil series excludes bunkers.""" from fair_shares.library.utils.data.nghgi import ( build_nghgi_world_co2_timeseries, ) @@ -72,68 +59,18 @@ def test_co2_uses_build_nghgi_world_co2_timeseries(self): {1990: 6000.0, 2000: 7000.0, 2020: 9000.0}, "co2-ffi" ) nghgi_ts = _make_nghgi_ts({1990: -400.0, 2000: -500.0, 2020: -600.0}) - bunker_ts = _make_bunker_ts({1990: 200.0, 2000: 300.0, 2020: 400.0}) - - result = build_nghgi_world_co2_timeseries( - fossil_ts=fossil_ts, - nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, - ) - - # Verify the formula: total CO2 = fossil - bunkers + LULUCF(NGHGI) - # 1990: 6000 - 200 + (-400) = 5400 - assert result["1990"].iloc[0] == pytest.approx(5400.0) - # 2000: 7000 - 300 + (-500) = 6200 - assert result["2000"].iloc[0] == pytest.approx(6200.0) - # 2020: 9000 - 400 + (-600) = 8000 - assert result["2020"].iloc[0] == pytest.approx(8000.0) - - def test_co2_result_includes_bunker_deduction(self): - """The NGHGI world CO2 must include bunker deduction. - - A simplified co2_ffi + co2_lulucf would miss the bunker deduction - entirely, producing higher emissions than correct. - """ - from fair_shares.library.utils.data.nghgi import ( - build_nghgi_world_co2_timeseries, - ) - - fossil_ts = _make_world_emissions({2020: 10000.0}, "co2-ffi") - nghgi_ts = _make_nghgi_ts({2020: -500.0}) - bunker_ts = _make_bunker_ts({2020: 600.0}) - - result = build_nghgi_world_co2_timeseries( - fossil_ts=fossil_ts, - nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, - ) - - # With bunkers: 10000 - 600 + (-500) = 8900 - expected_with_bunkers = 8900.0 - # Without bunkers (the bug): 10000 + (-500) = 9500 - wrong_without_bunkers = 9500.0 - - assert result["2020"].iloc[0] == pytest.approx(expected_with_bunkers) - assert result["2020"].iloc[0] != pytest.approx(wrong_without_bunkers) - - def test_co2_result_uses_nghgi_lulucf(self): - """The NGHGI world CO2 must use Melo NGHGI LULUCF where available.""" - from fair_shares.library.utils.data.nghgi import ( - build_nghgi_world_co2_timeseries, - ) - - fossil_ts = _make_world_emissions({2000: 7000.0}, "co2-ffi") - nghgi_ts = _make_nghgi_ts({2000: -800.0}) - bunker_ts = _make_bunker_ts({2000: 200.0}) result = build_nghgi_world_co2_timeseries( fossil_ts=fossil_ts, nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) - # With NGHGI: 7000 - 200 + (-800) = 6000 - assert result["2000"].iloc[0] == pytest.approx(6000.0) + # 1990: 6000 + (-400) = 5600 + assert result["1990"].iloc[0] == pytest.approx(5600.0) + # 2000: 7000 + (-500) = 6500 + assert result["2000"].iloc[0] == pytest.approx(6500.0) + # 2020: 9000 + (-600) = 8400 + assert result["2020"].iloc[0] == pytest.approx(8400.0) def test_co2_result_category_label_is_co2(self): """The result emission-category label should be 'co2'.""" @@ -143,12 +80,10 @@ def test_co2_result_category_label_is_co2(self): fossil_ts = _make_world_emissions({2020: 9000.0}, "co2-ffi") nghgi_ts = _make_nghgi_ts({2020: -600.0}) - bunker_ts = _make_bunker_ts({2020: 400.0}) result = build_nghgi_world_co2_timeseries( fossil_ts=fossil_ts, nghgi_ts=nghgi_ts, - bunker_ts=bunker_ts, ) # Result should have co2 as emission-category diff --git a/tests/unit/test_rcb_calculations.py b/tests/unit/test_rcb_calculations.py index 213ee12..b5fa8b0 100644 --- a/tests/unit/test_rcb_calculations.py +++ b/tests/unit/test_rcb_calculations.py @@ -159,6 +159,28 @@ def test_verbose_output(self, world_scenario_emissions_ts, capsys): assert "Allocation year 2025 > 2020" in captured.out assert "Used" in captured.out + def test_allocation_year_before_the_world_series_raises(self): + """A start year before the first year of the world series is an error.""" + index = pd.MultiIndex.from_tuples( + [("World", "Mt * CO2e", "co2")], + names=["iso3c", "unit", "emission-category"], + ) + from_2000 = pd.DataFrame( + {str(y): [10.0] for y in range(2000, 2024)}, index=index + ) + with pytest.raises(DataProcessingError) as error: + calculate_budget_from_rcb(500.0, 1990, from_2000, verbose=False) + assert "lack 1990-1999" in str(error.value) + assert "first available year is 2000" in str(error.value) + + # A column that holds no value counts as missing. + with_nan = from_2000.copy() + with_nan.insert(0, "1999", float("nan")) + with pytest.raises(DataProcessingError, match="lack 1999"): + calculate_budget_from_rcb(500.0, 1999, with_nan, verbose=False) + + assert calculate_budget_from_rcb(500.0, 2000, from_2000, verbose=False) == 700 + def test_with_variable_emissions(self): """Test with variable emissions to ensure correct summation.""" # Create variable emissions data diff --git a/tests/unit/test_rcb_sources.py b/tests/unit/test_rcb_sources.py new file mode 100644 index 0000000..b539bfe --- /dev/null +++ b/tests/unit/test_rcb_sources.py @@ -0,0 +1,611 @@ +"""Tests for the RCB sources in rcbs.yaml and the scenario sets behind their deductions.""" + +from __future__ import annotations + +import warnings +from pathlib import Path + +import pandas as pd +import pytest +import yaml + +from fair_shares.library.config.models import AdjustmentsConfig +from fair_shares.library.exceptions import ( + ConfigurationError, + DataLoadingError, + DataProcessingError, +) +from fair_shares.library.preprocessing.rcbs import load_and_process_rcbs +from fair_shares.library.utils.data.nghgi import compute_bunker_deduction +from fair_shares.library.utils.data.rcb import ( + NET_ZERO_YEAR_COLUMN, + PEAK_WARMING_COLUMN, + build_rcb_scenario_sets, + convention_gap_from_baseline, + fill_rebase_years, + missing_rebase_years, + net_zero_year, + parse_rcb_scenario, + process_rcb_to_2020_baseline, + rcb_scenario_set_key, + select_rcb_scenario_set, + validate_rebase_fill_max_years, +) + +REPO_ROOT = Path(__file__).resolve().parents[2] +RCB_YAML = REPO_ROOT / "data" / "rcbs" / "rcbs.yaml" +GOLDEN_MASTER = REPO_ROOT / "tests" / "fixtures" / "rcb_golden_master.yaml" +AR6_METADATA = ( + REPO_ROOT / "data" / "scenarios" / "ipcc_ar6_gidden" / "metadata_ar6_gidden.xlsx" +) + +# Scenario sets written by notebook 104 in a gcb-2025 pipeline run. +PIPELINE_ADJUSTMENTS = ( + REPO_ROOT + / "output" + / "gcb-2025_wdi-2025_un-owid-2025_wdi-2025_rcbs_co2-ffi" + / "intermediate" + / "scenarios" + / "rcb_scenario_adjustments.yaml" +) + +# Scenario sets written by notebook 104 in the PRIMAP run with melo-2026 LULUCF. +PIPELINE_CO2_ADJUSTMENTS = ( + REPO_ROOT + / "output" + / "primap-202503_wdi-2025_un-owid-2025_wdi-2025_melo-2026_rcbs_all-ghg" + / "intermediate" + / "scenarios" + / "rcb_scenario_adjustments.yaml" +) + +EXISTING_SOURCES = ["lamboll_2023", "forster_2024", "ar6_2020"] +LABELS = ["1.5p50", "1.5p67", "1.7p50", "1.7p67", "2p50", "2p67", "2p83"] +BAND = "peak-warming-band" + + +def test_new_sources_hold_the_published_budgets(): + """forster_2026 (IGCC 2025, Table 8) and ar6_wg1_2021 (AR6 WGI, Table SPM.2).""" + sources = yaml.safe_load(RCB_YAML.read_text())["rcb_data"] + + forster = sources["forster_2026"] + assert forster["baseline_year"] == 2026 + assert forster["unit"] == "Gt * CO2" + assert forster["scenario_selection"] == BAND + assert forster["scenarios"] == dict( + zip(LABELS, [130, 80, 500, 390, 1050, 860, 690]) + ) + + ar6 = sources["ar6_wg1_2021"] + assert ar6["baseline_year"] == 2020 + assert ar6["unit"] == "Gt * CO2" + assert ar6["scenario_selection"] == BAND + assert ar6["scenarios"] == dict(zip(LABELS, [500, 400, 850, 700, 1350, 1150, 900])) + + +def test_new_labels_parse_and_share_one_band_per_temperature(): + """Each label keeps its own quantile; likelihoods of one temperature share a band.""" + assert parse_rcb_scenario("1.7p50") == ("1.7C", "0.5") + assert parse_rcb_scenario("2p67") == ("2C", "0.67") + assert parse_rcb_scenario("2p66") == ("2C", "0.66") + + assert rcb_scenario_set_key("forster_2026", "1.7p50", BAND) == "peak-warming-1.7C" + assert rcb_scenario_set_key("forster_2026", "1.7p67", BAND) == "peak-warming-1.7C" + assert rcb_scenario_set_key("forster_2026", "2p83", BAND) == "peak-warming-2C" + assert rcb_scenario_set_key("forster_2024", "2p83", "ar6-category") == "2p83" + + +def test_band_is_closed_below_and_open_above(): + """The band is [T - 0.05, T + 0.05); the half-width is configurable.""" + metadata = pd.DataFrame( + { + "scenario": ["below", "lower_bound", "centre", "upper_bound"], + "Category": ["C1", "C1", "C3", "C3"], + PEAK_WARMING_COLUMN: [1.6499, 1.65, 1.7, 1.75], + NET_ZERO_YEAR_COLUMN: [2050, 2055, 2060, 2070], + } + ) + + selected = select_rcb_scenario_set(metadata, "forster_2026", "1.7p50", BAND) + assert list(selected["scenario"]) == ["lower_bound", "centre"] + + # One band serves every likelihood of its temperature. + same = select_rcb_scenario_set(metadata, "forster_2026", "1.7p67", BAND) + assert list(same["scenario"]) == ["lower_bound", "centre"] + + wide = select_rcb_scenario_set(metadata, "forster_2026", "1.7p50", BAND, 0.1) + assert list(wide["scenario"]) == ["below", "lower_bound", "centre", "upper_bound"] + + +def test_band_keeps_only_scenarios_that_reach_net_zero(): + """A budget runs to net-zero CO2, so the band drops scenarios that never reach it.""" + assert net_zero_year(pd.Series({"2040": 5.0, "2050": 0.0, "2060": -1.0})) == 2050 + assert net_zero_year(pd.Series({"2040": 5.0, "2100": 0.1})) is None + + metadata = pd.DataFrame( + { + "scenario": ["reaches", "never", "reaches_in_2100"], + "Category": ["C3", "C3", "C3"], + PEAK_WARMING_COLUMN: [2.0, 2.0, 2.0], + NET_ZERO_YEAR_COLUMN: [2070, None, 2100], + } + ) + selected = select_rcb_scenario_set(metadata, "forster_2026", "2p50", BAND) + assert list(selected["scenario"]) == ["reaches", "reaches_in_2100"] + + # The AR6 category rule keeps every scenario of the category. + category_set = select_rcb_scenario_set(metadata, "ar6_2020", "2p66", "ar6-category") + assert len(category_set) == 3 + + never = metadata[metadata["scenario"] == "never"] + with pytest.raises(DataProcessingError, match="net-zero CO2 year"): + select_rcb_scenario_set(never, "forster_2026", "2p50", BAND) + + without_column = metadata.drop(columns=NET_ZERO_YEAR_COLUMN) + with pytest.raises(ConfigurationError, match=NET_ZERO_YEAR_COLUMN): + select_rcb_scenario_set(without_column, "forster_2026", "2p50", BAND) + + +def test_empty_band_raises_naming_temperature_and_band(): + metadata = pd.DataFrame( + { + "Category": ["C1"], + PEAK_WARMING_COLUMN: [1.5], + NET_ZERO_YEAR_COLUMN: [2050], + } + ) + with pytest.raises(DataProcessingError) as error: + select_rcb_scenario_set(metadata, "forster_2026", "2p50", BAND) + assert "2C band [1.95, 2.05)" in str(error.value) + + +def test_unmapped_label_raises_naming_source_and_label(): + """A label with no AR6 category and no band rule is an error, never a zero.""" + with pytest.raises(ConfigurationError, match="'my_source', label '1.7p50'"): + rcb_scenario_set_key("my_source", "1.7p50", "ar6-category") + with pytest.raises(ConfigurationError, match="unknown scenario_selection"): + rcb_scenario_set_key("my_source", "1.7p50", "nearest-category") + + +def test_bands_hold_14_131_69_scenarios_and_14_111_37_reach_net_zero(): + """Band sizes at 1.5, 1.7 and 2 degrees C, before and after the net-zero filter. + + The band sizes come from the AR6 metadata file. The net-zero years come + from the scenario time series, so the sizes after the filter are read + from the scenario sets that notebook 104 writes. + """ + if not AR6_METADATA.exists(): + pytest.skip("AR6 scenario metadata is not redistributable and is absent") + metadata = pd.read_excel(AR6_METADATA) + rcb_yaml = yaml.safe_load(RCB_YAML.read_text()) + + # With a net-zero year for every scenario, each set is its whole band. + metadata[NET_ZERO_YEAR_COLUMN] = 2100 + bands = build_rcb_scenario_sets(rcb_yaml, metadata) + assert len(bands["peak-warming-1.5C"]) == 14 + assert len(bands["peak-warming-1.7C"]) == 131 + assert len(bands["peak-warming-2C"]) == 69 + + if not PIPELINE_ADJUSTMENTS.is_file(): + pytest.skip("gcb-2025 scenario adjustments not built") + adjustments = yaml.safe_load(PIPELINE_ADJUSTMENTS.read_text()) + assert adjustments["peak-warming-1.5C"]["n_scenarios"] == 14 + assert adjustments["peak-warming-1.7C"]["n_scenarios"] == 111 + assert adjustments["peak-warming-2C"]["n_scenarios"] == 37 + + +def test_rebase_raises_when_emissions_end_before_the_baseline_year(): + """A partial rebase understates the budget, so a missing year is an error.""" + emissions = pd.DataFrame({str(y): [36000.0] for y in range(2020, 2024)}) + with pytest.raises(DataProcessingError) as error: + process_rcb_to_2020_baseline( + rcb_value=130, + rcb_unit="Gt * CO2", + rcb_baseline_year=2026, + emission_category="co2-ffi", + world_co2_ffi_emissions=emissions, + source_name="forster_2026", + verbose=False, + ) + assert "lack [2024, 2025]" in str(error.value) + + +def _one_row_csv(path: Path, values_by_year: dict[int, float], label: str) -> None: + """Write a single-row timeseries CSV with a ``source`` column.""" + path.parent.mkdir(parents=True, exist_ok=True) + row = {"source": label, **{str(y): v for y, v in values_by_year.items()}} + pd.DataFrame([row]).to_csv(path, index=False) + + +def _world_row(values_by_year: dict[int, float], category: str) -> pd.DataFrame: + """Build a world emissions row in the format the pipeline passes to the RCB step.""" + index = pd.MultiIndex.from_tuples( + [("World", "Mt * CO2e", category)], + names=["iso3c", "unit", "emission-category"], + ) + return pd.DataFrame({str(y): [v] for y, v in values_by_year.items()}, index=index) + + +@pytest.mark.parametrize("emission_category", ["co2-ffi", "co2"]) +def test_existing_sources_match_golden_master(tmp_path, emission_category): + """Adjusted budgets of lamboll_2023, forster_2024 and ar6_2020. + + The rebase adds the bunkers of 2020 to the year before the baseline, so + ar6_2020 equals its budget without that term, and lamboll_2023 and + forster_2024 exceed theirs by exactly those bunker emissions. + + For co2 the convention gap runs from the baseline year of the source, so + a budget exceeds the one with the gap from 2020 by the gap of 2020 to the + year before the baseline. ar6_2020 and every co2-ffi budget stay the same. + """ + golden = yaml.safe_load(GOLDEN_MASTER.read_text()) + inputs = golden["inputs"] + + emissions_dir = tmp_path / "golden" / "intermediate" / "emissions" + scenarios_dir = tmp_path / "golden" / "intermediate" / "scenarios" + _one_row_csv(emissions_dir / "bunker_timeseries.csv", inputs["bunkers_mt"], "gcb") + _one_row_csv( + emissions_dir / "world_co2-lulucf_timeseries.csv", + inputs["world_co2_lulucf_mt"], + "nghgi", + ) + scenarios_dir.mkdir(parents=True) + (scenarios_dir / "rcb_scenario_adjustments.yaml").write_text( + yaml.safe_dump(inputs["scenario_adjustments"], sort_keys=False) + ) + for key, values_by_year in inputs["lulucf_shift_median_mt"].items(): + _one_row_csv( + scenarios_dir / f"lulucf_shift_median_{key}.csv", values_by_year, key + ) + + all_sources = yaml.safe_load(RCB_YAML.read_text())["rcb_data"] + rcb_yaml = tmp_path / "rcbs.yaml" + existing = {"rcb_data": {s: all_sources[s] for s in EXISTING_SOURCES}} + rcb_yaml.write_text(yaml.safe_dump(existing, sort_keys=False)) + + adjustments_config = AdjustmentsConfig.model_validate( + { + "lulucf_nghgi": { + "path": "output/{source_id}/intermediate/emissions/" + "world_co2-lulucf_timeseries.csv" + }, + "bunkers": { + "path": "output/{source_id}/intermediate/emissions/bunker_timeseries.csv" + }, + } + ) + # The inputs cover every rebase year, so a placeholder fill is an error. + with warnings.catch_warnings(): + warnings.simplefilter("error") + result = load_and_process_rcbs( + rcb_yaml_path=rcb_yaml, + world_fossil_emissions=_world_row(inputs["world_fossil_co2_mt"], "co2-ffi"), + emission_category=emission_category, + adjustments_config=adjustments_config, + data_dir=tmp_path, + source_id="golden", + world_nghgi_lulucf_emissions=_world_row( + inputs["world_co2_lulucf_mt"], "co2-lulucf" + ), + verbose=False, + output_dir=tmp_path, + ) + + expected = pd.DataFrame(golden["expected"][emission_category]) + actual = result[expected.columns].reset_index(drop=True) + actual["quantile"] = actual["quantile"].astype(float) + pd.testing.assert_frame_equal(actual, expected, check_dtype=False) + + without_rebase = pd.DataFrame( + golden["rcb_2020_without_bunker_rebase_mt"][emission_category] + ) + assert list(without_rebase["source"]) == list(actual["source"]) + assert list(without_rebase["scenario"]) == list(actual["scenario"]) + increase = actual["rcb_2020_nghgi_mt"] - without_rebase["rcb_2020_nghgi_mt"] + # The co2 budgets with the convention gap from 2020 for every source. + if emission_category == "co2": + gap_from_2020 = pd.DataFrame(golden["rcb_2020_with_gap_from_2020_mt"]["co2"]) + assert list(gap_from_2020["source"]) == list(actual["source"]) + assert list(gap_from_2020["scenario"]) == list(actual["scenario"]) + gap_change = actual["rcb_2020_nghgi_mt"] - gap_from_2020["rcb_2020_nghgi_mt"] + for row, (source, label) in enumerate(zip(actual["source"], actual["scenario"])): + baseline_year = all_sources[source]["baseline_year"] + rebase_years = range(2020, baseline_year) + bunkers = sum(inputs["bunkers_mt"][y] for y in rebase_years) + assert actual["rebase_bunkers_mt"][row] == round(bunkers) + + # The gap of 2020 to the year before the baseline (negative). + gaps = inputs["scenario_adjustments"][label]["convention_gap_median_from"] + gap_before_baseline = gaps[2020] - gaps[baseline_year] + if emission_category == "co2": + assert actual["correction_lulucf_nghgi_mt"][row] == round( + gaps[baseline_year] + ) + assert gap_change[row] == pytest.approx(-gap_before_baseline, abs=1) + # It is the observed NGHGI LULUCF minus the scenario BM LULUCF of + # those years. The median of per-scenario sums differs from the sum + # of per-year medians by up to 3%. + nghgi_minus_bm = sum( + inputs["world_co2_lulucf_mt"][y] + - inputs["lulucf_shift_median_mt"][label][y] + for y in rebase_years + ) + assert gap_before_baseline == pytest.approx(nghgi_minus_bm, rel=0.03) + bunkers -= gap_before_baseline + # Each budget is rounded to 1 Mt, so the difference holds within 1 Mt. + assert increase[row] == pytest.approx(bunkers, abs=1) + assert (increase[actual["source"] == "ar6_2020"] == 0).all() + + +def test_convention_gap_starts_at_the_baseline_year(): + """Hand calculation: gap per scenario from the baseline year, then the median. + + Observed NGHGI LULUCF is -4 Mt in each year to the splice year 2023. + Scenario A reaches net zero in 2030 with Direct 1 and Indirect -5 each year. + Scenario B reaches net zero in 2022 with Direct 2 and Indirect -3 each year. + """ + years = [str(y) for y in range(2020, 2031)] + nghgi = pd.Series(-4.0, index=years[:4]) + scenarios = { + "A": (pd.Series(1.0, index=years), pd.Series(-5.0, index=years), 2030), + "B": (pd.Series(2.0, index=years), pd.Series(-3.0, index=years), 2022), + } + + def gaps(baseline_year: int) -> dict[str, float]: + return { + name: convention_gap_from_baseline( + nghgi, direct, indirect, baseline_year, nz_year, splice_year=2023 + ) + for name, (direct, indirect, nz_year) in scenarios.items() + } + + # From 2020. A: 4 x (-4 - 1) + 7 x -5 = -55. B: 3 x (-4 - 2) = -18. + assert gaps(2020) == {"A": -55.0, "B": -18.0} + assert pd.Series(gaps(2020)).median() == -36.5 + # From 2023. A: (-4 - 1) + 7 x -5 = -40. B reaches net zero before 2023. + assert gaps(2023) == {"A": -40.0, "B": 0.0} + assert pd.Series(gaps(2023)).median() == -20.0 + # From 2026, after the splice year. A: Indirect only, 5 x -5 = -25. + assert gaps(2026) == {"A": -25.0, "B": 0.0} + # A baseline in the net-zero year keeps that one year: -4 - 2 = -6. + assert gaps(2022)["B"] == -6.0 + + +def test_co2_budget_needs_a_convention_gap_from_its_baseline_year(tmp_path): + """Adjustments without a gap from the baseline year name notebook 104.""" + emissions_dir = tmp_path / "stale" / "intermediate" / "emissions" + scenarios_dir = tmp_path / "stale" / "intermediate" / "scenarios" + years = {y: 100.0 for y in range(2020, 2024)} + _one_row_csv(emissions_dir / "bunker_timeseries.csv", years, "gcb") + scenarios_dir.mkdir(parents=True) + adjustments = { + "1.5p50": { + "bm_lulucf_cumulative_median": 0.0, + "convention_gap_median_from": {2020: -50.0}, + "nz_year_median": 2030, + "n_scenarios": 1, + } + } + (scenarios_dir / "rcb_scenario_adjustments.yaml").write_text( + yaml.safe_dump(adjustments) + ) + _one_row_csv(scenarios_dir / "lulucf_shift_median_1.5p50.csv", years, "1.5p50") + rcb_yaml = tmp_path / "rcbs.yaml" + source = {"baseline_year": 2023, "unit": "Gt * CO2", "scenarios": {"1.5p50": 1}} + rcb_yaml.write_text(yaml.safe_dump({"rcb_data": {"budget_2023": source}})) + adjustments_config = AdjustmentsConfig.model_validate( + { + "lulucf_nghgi": {"path": "output/{source_id}/unused.csv"}, + "bunkers": { + "path": "output/{source_id}/intermediate/emissions/bunker_timeseries.csv" + }, + } + ) + with pytest.raises(DataLoadingError) as error: + load_and_process_rcbs( + rcb_yaml_path=rcb_yaml, + world_fossil_emissions=_world_row(years, "co2-ffi"), + emission_category="co2", + adjustments_config=adjustments_config, + data_dir=tmp_path, + source_id="stale", + world_nghgi_lulucf_emissions=_world_row(years, "co2-lulucf"), + verbose=False, + output_dir=tmp_path, + ) + message = str(error.value) + assert "No convention gap from baseline year 2023 for '1.5p50'" in message + assert "Re-run notebook 104" in message + + +def test_gap_from_2020_equals_the_captured_gap(): + """On the real scenario data the 2020 entry equals the captured gap from 2020.""" + if not PIPELINE_CO2_ADJUSTMENTS.is_file(): + pytest.skip("AR6 scenario adjustments with melo-2026 LULUCF not built") + adjustments = yaml.safe_load(PIPELINE_CO2_ADJUSTMENTS.read_text()) + golden = yaml.safe_load(GOLDEN_MASTER.read_text()) + captured = golden["convention_gap_median_from_2020_captured_mt"] + for set_key, gap in captured.items(): + assert adjustments[set_key]["convention_gap_median_from"][2020] == gap + fixture_set = golden["inputs"]["scenario_adjustments"][set_key] + assert fixture_set["convention_gap_median_from"][2020] == gap + + +@pytest.mark.parametrize("baseline_year", [2020, 2024]) +def test_rebase_counts_each_bunker_year_once(baseline_year): + """Hand calculation: two baselines of one world give one allocatable budget. + + Each year from 2020 to net zero in 2029 emits 100 Mt fossil CO2 without + bunkers and 10 Mt bunker CO2. A published budget covers both, so it is + 1100 Mt from 2020 and 660 Mt from 2024. The budget without bunkers from + 2020 is 10 x 100 = 1000 Mt. + """ + fossil = pd.DataFrame({str(y): [100.0] for y in range(2020, 2024)}) + bunkers = pd.DataFrame({str(y): [10.0] for y in range(2020, 2024)}) + published = {2020: 1100.0, 2024: 660.0}[baseline_year] + + # Observed 2020-2023 (40 Mt) plus the 2023 rate for 2024-2029 (60 Mt). + deduction = compute_bunker_deduction(bunkers, start_year=2020, net_zero_year=2029) + assert deduction == pytest.approx(100.0) + + result = process_rcb_to_2020_baseline( + rcb_value=published, + rcb_unit="Mt * CO2", + rcb_baseline_year=baseline_year, + emission_category="co2-ffi", + world_co2_ffi_emissions=fossil, + world_bunker_emissions=bunkers, + bunkers_deduction_mt=deduction, + verbose=False, + ) + + assert result["rebase_fossil_mt"] == {2020: 0, 2024: 400}[baseline_year] + assert result["rebase_bunkers_mt"] == {2020: 0, 2024: 40}[baseline_year] + assert result["deduction_bunkers_mt"] == -100 + assert result["rcb_2020_nghgi_mt"] == 1000 + + +def test_rebase_with_a_bunker_deduction_needs_the_bunker_series(): + """A deduction from 2020 without the bunkers of the rebase years is an error.""" + fossil = pd.DataFrame({str(y): [100.0] for y in range(2020, 2024)}) + with pytest.raises(DataProcessingError, match="pass world_bunker_emissions"): + process_rcb_to_2020_baseline( + rcb_value=660.0, + rcb_unit="Mt * CO2", + rcb_baseline_year=2024, + emission_category="co2-ffi", + world_co2_ffi_emissions=fossil, + bunkers_deduction_mt=100.0, + verbose=False, + ) + + +def test_co2_rebase_needs_the_inventory_lulucf_series(): + """A co2 budget from after 2020 raises without LULUCF; a 2020 budget runs.""" + fossil = pd.DataFrame({str(y): [100.0] for y in range(2020, 2024)}) + kwargs = { + "rcb_unit": "Mt * CO2", + "emission_category": "co2", + "world_co2_ffi_emissions": fossil, + "verbose": False, + } + with pytest.raises(DataProcessingError, match="pass world_nghgi_lulucf_emissions"): + process_rcb_to_2020_baseline(rcb_value=660.0, rcb_baseline_year=2024, **kwargs) + + result = process_rcb_to_2020_baseline( + rcb_value=1000.0, rcb_baseline_year=2020, **kwargs + ) + assert result["rebase_lulucf_mt"] == 0 + assert result["rcb_2020_nghgi_mt"] == 1000 + + +def test_rebase_fill_holds_the_last_observed_value(): + """Observed to 2024, baseline 2026: 2025 takes the 2024 value, with a warning. + + Hand calculation: 100 Mt fossil CO2 and 10 Mt bunker CO2 each year to net + zero in 2029. The published budget from 2026 is 4 x 110 = 440 Mt and the + budget without bunkers from 2020 is 1000 Mt. + """ + fossil = pd.DataFrame({str(y): [100.0] for y in range(2020, 2025)}) + bunkers = pd.DataFrame({str(y): [10.0] for y in range(2020, 2025)}) + + with pytest.warns(UserWarning) as record: + filled_fossil = fill_rebase_years( + fossil, 2026, 1, "world fossil CO2 emissions", "forster_2026" + ) + message = str(record[0].message) + assert "'forster_2026'" in message + assert "world fossil CO2 emissions end in 2024" in message + assert "2024 value (100.0 Mt CO2) for [2025]" in message + assert "placeholder until observed data are published" in message + assert filled_fossil["2025"].iloc[0] == fossil["2024"].iloc[0] + assert "2025" not in fossil.columns + + with pytest.warns(UserWarning): + filled_bunkers = fill_rebase_years(bunkers, 2026, 1, "bunkers", "forster_2026") + result = process_rcb_to_2020_baseline( + rcb_value=440.0, + rcb_unit="Mt * CO2", + rcb_baseline_year=2026, + emission_category="co2-ffi", + world_co2_ffi_emissions=filled_fossil, + world_bunker_emissions=filled_bunkers, + bunkers_deduction_mt=compute_bunker_deduction(bunkers, 2020, 2029), + verbose=False, + ) + assert result["rebase_fossil_mt"] == 600 + assert result["rebase_bunkers_mt"] == 60 + assert result["deduction_bunkers_mt"] == -100 + assert result["rcb_2020_nghgi_mt"] == 1000 + + +def test_rebase_fill_stops_at_the_limit(): + """More missing years than the limit, or a limit of 0, leave the series as is.""" + to_2023 = pd.DataFrame({str(y): [100.0] for y in range(2020, 2024)}) + to_2024 = pd.DataFrame({str(y): [100.0] for y in range(2020, 2025)}) + + with warnings.catch_warnings(): + warnings.simplefilter("error") + assert fill_rebase_years(to_2023, 2026, 1).equals(to_2023) + assert fill_rebase_years(to_2024, 2026, 0).equals(to_2024) + # A series that covers every rebase year needs no fill. + assert fill_rebase_years(to_2023, 2024, 1).equals(to_2023) + + with pytest.raises(DataProcessingError, match=r"lack \[2024, 2025\]"): + process_rcb_to_2020_baseline( + rcb_value=440.0, + rcb_unit="Mt * CO2", + rcb_baseline_year=2026, + emission_category="co2-ffi", + world_co2_ffi_emissions=fill_rebase_years(to_2023, 2026, 1), + verbose=False, + ) + + +def test_rebase_counts_a_year_without_a_value_as_missing(): + """NaN-padded trailing years are lacking, so the rebase raises instead of summing less.""" + padded = pd.DataFrame({str(y): [100.0] for y in range(2020, 2026)}) + padded[["2023", "2024", "2025"]] = float("nan") + assert missing_rebase_years(2026, padded) == [2023, 2024, 2025] + + with pytest.raises(DataProcessingError, match=r"lack \[2023, 2024, 2025\]"): + process_rcb_to_2020_baseline( + rcb_value=440.0, + rcb_unit="Mt * CO2", + rcb_baseline_year=2026, + emission_category="co2-ffi", + world_co2_ffi_emissions=padded, + verbose=False, + ) + + +def test_rebase_nan_gap_beyond_the_fill_limit_is_missing(): + """A NaN gap longer than rebase_fill_max_years stays unfilled and counts as lacking.""" + gap = pd.DataFrame({str(y): [100.0] for y in range(2020, 2025)}) + gap[["2022", "2023", "2024"]] = float("nan") + unfilled = fill_rebase_years(gap, 2026, 1) + assert unfilled.equals(gap) + assert missing_rebase_years(2026, unfilled) == [2022, 2023, 2024, 2025] + + +def test_peak_warming_label_without_a_temperature_raises_configuration_error(): + """A label such as 'abcp50' names itself in a ConfigurationError.""" + metadata = pd.DataFrame( + { + "scenario": ["a"], + "Category": ["C1"], + PEAK_WARMING_COLUMN: [1.5], + NET_ZERO_YEAR_COLUMN: [2050], + } + ) + with pytest.raises(ConfigurationError, match="label 'abcp50'"): + select_rcb_scenario_set(metadata, "forster_2026", "abcp50", BAND) + + +@pytest.mark.parametrize("value", [-1, 1.5, "1", None, True]) +def test_rebase_fill_max_years_must_be_a_non_negative_integer(value): + """Anything other than a count of zero or more is a configuration error.""" + with pytest.raises(ConfigurationError, match="rebase_fill_max_years"): + validate_rebase_fill_max_years(value) + assert validate_rebase_fill_max_years(0) == 0 + assert validate_rebase_fill_max_years(2) == 2 From 699413789b506cf6b093391155453c85954f6681 Mon Sep 17 00:00:00 2001 From: Setu Pelz Date: Thu, 1 Oct 2026 16:01:48 +0200 Subject: [PATCH 2/7] fix: docs corrections, circular import, and year-availability checks that test values Fixes the circular import when fair_shares.library.config is the first import in a process (new test_import_order). calculate_budget_from_rcb now names the missing years and the last available year, and counts a missing value as a missing year. A budget label without a numeric temperature raises a ConfigurationError that names the label. rebase_fill_max_years must be a non-negative integer. Docs corrections across the science and user guides. --- CHANGELOG.md | 3 + data/gdp/wdi-2025/CITATION.md | 6 +- docs/science/allocations.md | 4 +- docs/science/glossary.md | 2 +- docs/science/parameter-effects.md | 8 +- docs/science/principle-to-code.md | 2 +- docs/user-guide/data-sources.md | 2 +- docs/user-guide/index.md | 2 +- notebooks/106_generate_pathways_from_rcbs.py | 1 - notebooks/docs/parameter_effects_examples.py | 6 +- src/fair_shares/conf/data_registry.yaml | 2 +- .../library/allocations/manager.py | 2 +- src/fair_shares/library/preprocessing/rcbs.py | 5 +- src/fair_shares/library/utils/data/config.py | 9 ++- src/fair_shares/library/utils/data/rcb.py | 77 +++++++++++++------ .../library/utils/math/allocation.py | 3 +- tests/unit/test_import_order.py | 26 +++++++ tests/unit/test_rcb_calculations.py | 25 ++++++ 18 files changed, 139 insertions(+), 46 deletions(-) create mode 100644 tests/unit/test_import_order.py diff --git a/CHANGELOG.md b/CHANGELOG.md index a5b03ec..14ca470 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,4 +43,7 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions: [Sem - `build_nghgi_world_co2_timeseries` subtracted bunkers from a world fossil series that already excludes them (871 Mt CO2 in 2020; 20,770 Mt over 2000-2019). World `co2` is now fossil plus LULUCF, as in notebook `100_data_preprocess_rcbs`, and the function no longer takes `bunker_ts`. The error reached `run_rcb_preprocessing` and notebook `106_generate_pathways_from_rcbs`; budget files written by notebook 100 did not contain it. - `compute_bunker_deduction` treated 2023 as the last observed bunker year for every source. It now reads the last year from the bunker data, so `gcb-2025` runs use the observed 2024 value and extrapolate the 2024 rate. Runs with `gcb-2024` bunkers give the same deduction as before. - `calculate_budget_from_rcb` summed only the years present when the allocation year preceded the first year of the world emissions series (for example `co2`, which starts in 2000, with allocation year 1990). It now raises an error that names the missing years and the first available year. +- `calculate_budget_from_rcb` raised no error when the allocation year was after 2020 and the world emissions ended earlier, and summed only the years present. It now raises an error that names the missing years and the last available year. A year with a missing value counts as missing in this check, in the pre-2020 check and in the rebase to 2020, which earlier summed NaN-padded years as zero. +- `import fair_shares.library.config` and `import fair_shares.library.config.models` failed with a circular import when they were the first import in a process. +- A budget label without a numeric temperature under the peak-warming band rule raised a bare `ValueError`; it now raises a `ConfigurationError` that names the label. `rebase_fill_max_years` must be a non-negative integer. - The Gini-adjusted approaches ignored Gini entirely when `capability_reference_year` named a year before `allocation_year`: the capability snapshot was read from the unfiltered inputs without the adjustment, on both the budget and pathway side. Results on that parameterisation change — on the standard sources, China's share of a `per-capita-adjusted-gini-budget` allocation moves from 10.8% to 5.3% and India's from 23.2% to 28.4%. diff --git a/data/gdp/wdi-2025/CITATION.md b/data/gdp/wdi-2025/CITATION.md index 2f68e56..a445372 100644 --- a/data/gdp/wdi-2025/CITATION.md +++ b/data/gdp/wdi-2025/CITATION.md @@ -2,10 +2,10 @@ ## World Bank GDP Data -World Bank. (2025). GDP (constant 2015 US$) and GDP, PPP (constant 2017 international $). World Bank Open Data. https://data.worldbank.org/ +World Bank. (2025). GDP (constant 2015 US$) and GDP, PPP (constant 2021 international $). World Bank Open Data. https://data.worldbank.org/ Files: - `API_NY.GDP.MKTP.KD_DS2_en_csv_v2_213435.csv` — GDP (constant 2015 US$), WDI indicator `NY.GDP.MKTP.KD` -- `API_NY.GDP.MKTP.PP.KD_DS2_en_csv_v2_1004.csv` — GDP, PPP (constant 2017 international $), WDI indicator `NY.GDP.MKTP.PP.KD` +- `API_NY.GDP.MKTP.PP.KD_DS2_en_csv_v2_1004.csv` — GDP, PPP (constant 2021 international $), WDI indicator `NY.GDP.MKTP.PP.KD` -**Why constant-dollar (`.KD`) and not current-dollar (`.CD`):** Constant-dollar series fix prices to a reference year (2015 for MER, 2017 for PPP), so values across years are directly comparable in real terms. Current-dollar series use each year's own prices, which makes long-horizon comparisons silently distorted by price changes. For historical cross-year capability calculations (e.g., allocating a remaining carbon budget from 1990), using current-dollar series understates early-period real GDP by the cumulative inflation between the observation year and the base year — for 1990 values in a 2017-base comparison, this is roughly a factor of two for developed economies. +**Why constant-dollar (`.KD`) and not current-dollar (`.CD`):** Constant-dollar series fix prices to a reference year (2015 for MER, 2021 for PPP), so values across years are directly comparable in real terms. Current-dollar series use each year's own prices, which makes long-horizon comparisons silently distorted by price changes. For historical cross-year capability calculations (e.g., allocating a remaining carbon budget from 1990), using current-dollar series understates early-period real GDP by the cumulative inflation between the observation year and the base year — for 1990 values in a 2021-base comparison, this is roughly a factor of two for developed economies. diff --git a/docs/science/allocations.md b/docs/science/allocations.md index 6d1775c..29566c6 100644 --- a/docs/science/allocations.md +++ b/docs/science/allocations.md @@ -135,7 +135,7 @@ Reference year for calculating cumulative per capita allocations. **GDP window beyond the last observed year:** When the allocation cumulative window extends past the last year of the input GDP time series (the default `wdi-2025` ends at 2023), the per-capita budget and pathway primitives forward-fill GDP per capita from the last observed year to cover every subsequent year of the window. The cross-country capability ratios of the last observed year are then held constant for the rest of the window. The cumulative-per-capita-convergence primitives behave differently: their per-country capability scalar is computed only over the intersection of GDP and population years, with no forward-fill at all. In both cases, users who want different post-observation capability dynamics (SSP2 GDP projections, custom growth assumptions, or a future-extended WDI release) should extend the input `gdp_ts` time series before calling the allocation function. The forward-fill is the minimum-disruption default when no projected GDP data is supplied; the library does not prescribe a projection. -**Capability snapshot mode (`capability_reference_year: int | None = None`):** By default, capability is computed year-by-year — `pf(GDP_per_cap(g, t))` is evaluated for each country and year in the allocation window, then combined with that year's population. Setting `capability_reference_year` to an integer freezes capability at a single reference year instead: `pf(GDP_per_cap(g, t_ref))` is computed once per country from that year's data and broadcast across the rest of the window. Available on the adjusted approaches — `per_capita_adjusted_budget`, `per_capita_adjusted_gini_budget`, `per_capita_adjusted`, and `per_capita_adjusted_gini` — with identical semantics on the budget and pathway side; not available on `equal_per_capita*` (no capability term to freeze) or the convergence family. The reference year can be before, at, or after `allocation_year`. On the budget approaches a snapshot needs GDP at the reference year only, so `allocation_year` can be earlier than the first GDP year (allocation years start at 1850). Year-by-year and snapshot modes are algebraically equivalent only when capability is constant over the window; in practice they diverge substantially for long windows spanning periods of economic change. See [capability_reference_year](parameter-effects.md#capability_reference_year) for the source-case mechanics (in-window, beyond-last-observed-year, pre-window) and the Gini interaction. +**Capability snapshot mode (`capability_reference_year: int | None = None`):** By default, capability is computed year-by-year — `pf(GDP_per_cap(g, t))` is evaluated for each country and year in the allocation window, then combined with that year's population. Setting `capability_reference_year` to an integer freezes capability at a single reference year instead: `pf(GDP_per_cap(g, t_ref))` is computed once per country from that year's data and broadcast across the rest of the window. Available on the adjusted approaches — `per_capita_adjusted_budget`, `per_capita_adjusted_gini_budget`, `per_capita_adjusted`, and `per_capita_adjusted_gini` — with the same snapshot semantics on the budget and pathway side; not available on `equal_per_capita*` (no capability term to freeze) or the convergence family. The reference year can be before, at, or after `allocation_year`. On the budget approaches a snapshot needs GDP at the reference year only, so `allocation_year` can be earlier than the first GDP year (allocation years start at 1850). The pathway approaches still require GDP at `first_allocation_year`, even when a reference year is set. Year-by-year and snapshot modes are algebraically equivalent only when capability is constant over the window; in practice they diverge substantially for long windows spanning periods of economic change. See [capability_reference_year](parameter-effects.md#capability_reference_year) for the source-case mechanics (in-window, beyond-last-observed-year, pre-window) and the Gini interaction. The canonical example of `ref_year < allocation_year` is the PRR2023 lag-1 convention: PRR2023 defines capability as GDP per capita in the year immediately preceding the allocation decision, so `allocation_year=2015` paired with `capability_reference_year=2014` is the reproduction-faithful configuration. The nb601 notebook (PRR2023 reproduction) uses exactly this. More broadly: use `capability_reference_year=1990` with `allocation_year=1990` for ESABCC 2023 `CPCadjCAP` results. @@ -158,7 +158,7 @@ For complete parameter configurations, worked examples, and use-case-to-approach **Why this exists:** National GDP per capita is a crude measure of capability -- it treats every dollar equally, whether it feeds a family or buys a yacht. Within-country inequality means that two countries with identical GDP per capita can have radically different capacity to mitigate if one concentrates wealth while the other distributes it. The Gini adjustment addresses this by modeling how income is distributed within each country and counting only income above a development threshold toward capability. -Implements an interpretation of the Greenhouse Development Rights (GDR) framework's capability metric for entitlements (note: GDR was originally designed for burden-sharing, not entitlement allocation): only income **above** a development threshold counts as "ability to pay." The income floor works like a tax-free personal allowance — each person's first $7,500/year (2010 PPP, the GDR framework's standard development threshold) of income is exempt from capability calculations. +Implements an interpretation of the Greenhouse Development Rights (GDR) framework's capability metric for entitlements (note: GDR was originally designed for burden-sharing, not entitlement allocation): only income **above** a development threshold counts as "ability to pay." The income floor works like a tax-free personal allowance — each person's first slice of income up to the threshold is exempt from capability calculations. [Baer 2013](https://doi.org/10.1002/wcc.201) sets the GDR threshold at $7,500 per capita per year on a 2005 price base and $8,500 on a 2010 base. The floor must be expressed in the price base of the GDP series passed in. The default GDP source is in constant 2021 international dollars, so a threshold from another price year needs converting first. Income distribution is modelled as log-normal, parameterised by each country's Gini coefficient. When combined with the income floor, higher inequality means more national income sits above the development threshold — increasing measured capability. diff --git a/docs/science/glossary.md b/docs/science/glossary.md index 314c040..fcc97da 100644 --- a/docs/science/glossary.md +++ b/docs/science/glossary.md @@ -114,7 +114,7 @@ Only the **ratio** between the two weights matters -- they are normalized by the ### Inequality Parameters **`income_floor`** (type: `float`, default: `0.0`) -: Income below this threshold (USD PPP per capita) is excluded from capability calculations, protecting subsistence needs. The library default is `0.0` (all income counts); the GDR framework's threshold is `7500` ($7,500/year 2010 PPP) and is passed explicitly. Higher floors reduce measured capability for all countries, with the largest effect on middle-income countries where population clusters around the threshold. See [Parameter Effects](parameter-effects.md#income_floor). +: Income below this threshold (USD PPP per capita) is excluded from capability calculations, protecting subsistence needs. The library default is `0.0` (all income counts); the GDR framework's threshold is $7,500 on a 2005 price base ($8,500 on 2010) and must be converted to the GDP series' price base before it is passed. Higher floors reduce measured capability for all countries, with the largest effect on middle-income countries where population clusters around the threshold. See [Parameter Effects](parameter-effects.md#income_floor). **`max_gini_adjustment`** (type: `float`, default: `0.8`) : Maximum proportional reduction from the Gini-based capability correction. Caps the influence of extreme inequality (Gini > 0.6) on measured capability, preventing outsized adjustments from dominating the allocation. At 0.8, the Gini adjustment can reduce a country's measured GDP by at most 80%. Available on `*-gini-*` approaches only. diff --git a/docs/science/parameter-effects.md b/docs/science/parameter-effects.md index 48c6f28..a7a7dd5 100644 --- a/docs/science/parameter-effects.md +++ b/docs/science/parameter-effects.md @@ -55,7 +55,7 @@ _Example uses 1.5°C carbon budget (50% probability). Remaining budget = (cumula `pre_allocation_responsibility_weight` activates per-capita rescaling based on cumulative per-capita emissions in [`pre_allocation_responsibility_year`, `allocation_year`). This is a **separate mechanism** from setting an early `allocation_year` — rescaling is multiplicative and always produces positive allocations if `allocation_year` is the present, whereas cumulative accounting can produce negative allocations (see [comparison table](#if-you-want-x-set-y-guide) below). -`capability_weight` activates capability (ability to pay) adjustments based on GDP per capita from the allocation year onwards. Capability data before the allocation year is not used. When the allocation window extends past the last observed GDP year (default `wdi-2025` ends at 2023), the per-capita budget and pathway primitives forward-fill GDP per capita from the last observed year to cover the rest of the window — holding the cross-country capability ratios of that last year constant for every subsequent year. To use different post-observation capability dynamics (SSP2 projections, custom growth assumptions, or a future-extended WDI release), extend the input `gdp_ts` time series before calling the allocation function. +`capability_weight` activates capability (ability to pay) adjustments based on GDP per capita from the allocation year onwards. Without `capability_reference_year`, capability data before the allocation year is not used; with it, a single snapshot year is used, and that year may precede or follow the allocation year. When the allocation window extends past the last observed GDP year (default `wdi-2025` ends at 2023), the per-capita budget and pathway primitives forward-fill GDP per capita from the last observed year to cover the rest of the window — holding the cross-country capability ratios of that last year constant for every subsequent year. To use different post-observation capability dynamics (SSP2 projections, custom growth assumptions, or a future-extended WDI release), extend the input `gdp_ts` time series before calling the allocation function. **Direction:** @@ -151,8 +151,10 @@ passes through, so both gas components apply the same snapshot. **Direction:** - `floor=0` → All income counts toward capability (no development protection) -- `floor=7500` → $7,500/year (2010 PPP) — the GDR framework's threshold, the level at which basic development indicators (nutrition, infant mortality, education) are broadly met -- `floor=15000` → $15,000/year (2010 PPP) subsistence threshold +- `floor=7500` → 7,500 per person per year, in the units of the GDP series. [Baer 2013](https://doi.org/10.1002/wcc.201) used this value as the GDR development threshold on a 2005 price base and raised it to 8,500 on a 2010 base. +- `floor=15000` → 15,000 per person per year, in the units of the GDP series, a higher subsistence threshold + +The floor must be expressed in the price base of the GDP series passed in. The default GDP source is in constant 2021 international dollars, so a threshold from another price year needs converting first. Higher floors increase the exempt portion, reducing measured capability for all countries and increasing their allocated share of emissions. The effect is largest for middle-income countries where a significant fraction of the population clusters around the threshold. diff --git a/docs/science/principle-to-code.md b/docs/science/principle-to-code.md index 60ff6c8..131029e 100644 --- a/docs/science/principle-to-code.md +++ b/docs/science/principle-to-code.md @@ -308,7 +308,7 @@ allocations = { - `allocation_year=1990` → Cumulative population from 1990 determines each country's share of the total budget - `pre_allocation_responsibility_weight=0.2` + `pre_allocation_responsibility_year=1950` → Per-capita emissions from 1950-1989 rescale allocations (relative mechanism) - `capability_weight=0.8` → GDP-based capability dominates the adjustment (applies from allocation year onwards) -- `income_floor=10000` → Higher than GDR threshold ($7,500/year 2010 PPP) — broader subsistence definition (GDR was designed for burden-sharing; fair-shares adapts its capability metric for entitlement allocation) +- `income_floor=10000` → Higher than the GDR threshold ($7,500/year on a 2005 price base) — broader subsistence definition (GDR was designed for burden-sharing; fair-shares adapts its capability metric for entitlement allocation) - Gini data configured → Within-country inequality affects effective capability **Distributional outcome:** Least developed countries retain most of their remaining allocation. High-income countries have reduced remaining allocations (from cumulative budget accounting since 1990), further reduced by capability_weight=0.8. The pre_allocation_responsibility_weight=0.2 additionally rescales shares based on 1950-1989 per-capita emissions (this rescaling always produces positive allocations if `allocation_year` is the present — it is a multiplicative adjustment, not cumulative accounting). diff --git a/docs/user-guide/data-sources.md b/docs/user-guide/data-sources.md index 7d0564d..20c637d 100644 --- a/docs/user-guide/data-sources.md +++ b/docs/user-guide/data-sources.md @@ -205,7 +205,7 @@ The last two sources (`forster_2026`, `ar6_wg1_2021`) carry seven budgets each a > Lamboll, R. D., et al. (2023). Assessing the size and uncertainty of remaining carbon budgets. _Nature Climate Change_, 13, 1360–1367. [doi:10.1038/s41558-023-01848-5](https://doi.org/10.1038/s41558-023-01848-5) -> Forster, P. M., et al. (2024). Indicators of Global Climate Change 2023. _Earth System Science Data_, 16, 2625–2680. [doi:10.5194/essd-16-2625-2024](https://doi.org/10.5194/essd-16-2625-2024) +> Forster, P. M., et al. (2024). Indicators of Global Climate Change 2023. _Earth System Science Data_, 16, 2625–2658. [doi:10.5194/essd-16-2625-2024](https://doi.org/10.5194/essd-16-2625-2024) > Forster, P. M., et al. (2026). Indicators of Global Climate Change 2025. _Earth System Science Data_, 18, 3889–3933. [doi:10.5194/essd-18-3889-2026](https://doi.org/10.5194/essd-18-3889-2026) diff --git a/docs/user-guide/index.md b/docs/user-guide/index.md index 8a30a97..85107b5 100644 --- a/docs/user-guide/index.md +++ b/docs/user-guide/index.md @@ -93,7 +93,7 @@ fair-shares currently supports three target sources: Two questions: 1. **Budget or pathway?** Do you need a single cumulative target or year-by-year emissions? -2. **Which principles?** Equal entitlements, historical differentiation (via early `allocation_year` for cumulative accounting and/or `pre_allocation_responsibility_weight` for per-capita emissions rescaling), capability (ability to pay, from the allocation year onwards) -- or some combination? Note: "subsistence protection" as a live approach choice has diminished operational value — [Shue 2014](../science/references.md#shue-2014) later acknowledged that what the poor need is energy, not emissions rights. The more relevant operational concept is the GDR development threshold [Baer 2013](https://doi.org/10.1002/wcc.201) (note: GDR was designed for burden-sharing; fair-shares adapts its capability metric for entitlement allocation), which exempts individuals below a development income threshold (~$7,500 PPP) from capability calculations. +2. **Which principles?** Equal entitlements, historical differentiation (via early `allocation_year` for cumulative accounting and/or `pre_allocation_responsibility_weight` for per-capita emissions rescaling), capability (ability to pay, from the allocation year onwards) -- or some combination? Note: "subsistence protection" as a live approach choice has diminished operational value — [Shue 2014](../science/references.md#shue-2014) later acknowledged that what the poor need is energy, not emissions rights. The more relevant operational concept is the GDR development threshold [Baer 2013](https://doi.org/10.1002/wcc.201) (note: GDR was designed for burden-sharing; fair-shares adapts its capability metric for entitlement allocation), which exempts individuals below a development income threshold from capability calculations. Baer 2013 sets it at 7,500 dollars on a 2005 PPP base (8,500 on a 2010 base); give `income_floor` in the price base of the GDP series (default: constant 2021 international dollars). Then: diff --git a/notebooks/106_generate_pathways_from_rcbs.py b/notebooks/106_generate_pathways_from_rcbs.py index 7b8b075..bd919c8 100644 --- a/notebooks/106_generate_pathways_from_rcbs.py +++ b/notebooks/106_generate_pathways_from_rcbs.py @@ -341,7 +341,6 @@ def _load_world_emissions( world_fossil_emissions=_fossil_for_rcb, emission_category=emission_category, adjustments_config=adjustments_config, - project_root=project_root, source_id=source_id, actual_bm_lulucf_emissions=_bm_lulucf_for_rcb, verbose=True, diff --git a/notebooks/docs/parameter_effects_examples.py b/notebooks/docs/parameter_effects_examples.py index 007cb9a..de12617 100644 --- a/notebooks/docs/parameter_effects_examples.py +++ b/notebooks/docs/parameter_effects_examples.py @@ -114,13 +114,13 @@ # Calculate carbon budget budget = calculate_budget_from_rcb( rcb_value=rcb_value, - allocation_year=2025, + allocation_year=2020, world_scenario_emissions_ts=world_emissions_df, verbose=False, ) -print(f"RCB value (2020): {rcb_value / 1e9:.1f} GtCO2") -print(f"Global carbon budget (2025): {budget / 1e9:.1f} GtCO2") +print(f"RCB value (2020): {rcb_value / 1e3:.1f} GtCO2") # values are in Mt +print(f"Global carbon budget (2020): {budget / 1e3:.1f} GtCO2") print("Data loaded successfully!") # %% [markdown] diff --git a/src/fair_shares/conf/data_registry.yaml b/src/fair_shares/conf/data_registry.yaml index 360c29a..71e953c 100644 --- a/src/fair_shares/conf/data_registry.yaml +++ b/src/fair_shares/conf/data_registry.yaml @@ -188,7 +188,7 @@ sources: redistributable: true citation: >- World Bank. World Development Indicators: GDP (constant 2015 US$, - NY.GDP.MKTP.KD), GDP PPP (constant 2017 international $, + NY.GDP.MKTP.KD), GDP PPP (constant 2021 international $, NY.GDP.MKTP.PP.KD) and Gini index (SI.POV.GINI, sourced by the World Bank from its Poverty and Inequality Platform), 2025 export. https://data.worldbank.org/ diff --git a/src/fair_shares/library/allocations/manager.py b/src/fair_shares/library/allocations/manager.py index 8ce24fa..c2e6861 100644 --- a/src/fair_shares/library/allocations/manager.py +++ b/src/fair_shares/library/allocations/manager.py @@ -606,7 +606,7 @@ def run_parameter_grid( allocations_config, harmonisation_year, target_source ) - # Validate allocation year >= 1990 for total CO2 (NGHGI data limit) + # Validate allocation year >= 2000 for total CO2 (NGHGI data limit) if emission_category: # A separate responsibility frame (fossil CO2 for co2 and all-ghg) sets # the first year a pre-allocation responsibility window may start. diff --git a/src/fair_shares/library/preprocessing/rcbs.py b/src/fair_shares/library/preprocessing/rcbs.py index b881c14..4a5ed55 100644 --- a/src/fair_shares/library/preprocessing/rcbs.py +++ b/src/fair_shares/library/preprocessing/rcbs.py @@ -52,6 +52,7 @@ fill_rebase_years, missing_rebase_years, rcb_scenario_set_key, + validate_rebase_fill_max_years, ) @@ -419,8 +420,8 @@ def load_and_process_rcbs( print(" Adjustment mode: pre-computed (NGHGI-consistent, Weber et al. 2026)") print(" Bunker NZ years: category-level median (from scenario adjustments)") - rebase_fill_max_years = rcb_data.get( - "rebase_fill_max_years", DEFAULT_REBASE_FILL_MAX_YEARS + rebase_fill_max_years = validate_rebase_fill_max_years( + rcb_data.get("rebase_fill_max_years", DEFAULT_REBASE_FILL_MAX_YEARS) ) # Pre-load baseline-shift LULUCF median timeseries from notebook 104 output. diff --git a/src/fair_shares/library/utils/data/config.py b/src/fair_shares/library/utils/data/config.py index 5be9774..215c0bb 100644 --- a/src/fair_shares/library/utils/data/config.py +++ b/src/fair_shares/library/utils/data/config.py @@ -10,17 +10,19 @@ import os from pathlib import Path -from typing import Any, Literal +from typing import TYPE_CHECKING, Any, Literal import yaml -from fair_shares.library.config.models import DataSourcesConfig from fair_shares.library.exceptions import ( ConfigurationError, DataLoadingError, ) from fair_shares.library.paths import packaged_config +if TYPE_CHECKING: + from fair_shares.library.config.models import DataSourcesConfig + # Environment override letting a user supply their own source table without # editing the installed package. CONFIG_ENV = "FAIR_SHARES_CONFIG" @@ -442,6 +444,9 @@ def build_data_config( "rcb_generator": rcb_generator, # Will be None for non-rcb-pathways targets } + # Imported here because config.models loads utils, which loads this module. + from fair_shares.library.config.models import DataSourcesConfig + # Validate with Pydantic (this will raise ValidationError if invalid) validated_config = DataSourcesConfig(**filtered_config) diff --git a/src/fair_shares/library/utils/data/rcb.py b/src/fair_shares/library/utils/data/rcb.py index 989fc2f..20c52e2 100644 --- a/src/fair_shares/library/utils/data/rcb.py +++ b/src/fair_shares/library/utils/data/rcb.py @@ -201,8 +201,8 @@ def select_rcb_scenario_set( ------ ConfigurationError If the rule is unknown, the label has no AR6 category under the - "ar6-category" rule, or the metadata lack "net_zero_year" under the - "peak-warming-band" rule + "ar6-category" rule, the label has no numeric temperature under the + "peak-warming-band" rule, or the metadata lack "net_zero_year" under it DataProcessingError If the rule selects no scenario """ @@ -212,7 +212,13 @@ def select_rcb_scenario_set( selected = metadata[metadata["Category"] == category] criterion = f"AR6 category {category}" elif selection == "peak-warming-band": - temperature = float(climate_assessment.removesuffix("C")) + try: + temperature = float(climate_assessment.removesuffix("C")) + except ValueError: + raise ConfigurationError( + f"RCB source '{source}', label '{label}': the peak-warming band " + f"rule needs a numeric temperature before 'p' (e.g. '1.5p50')." + ) from None # Rounding keeps the bounds exact decimals (1.7 - 0.05 gives 1.65). lower = round(temperature - band_half_width, 6) upper = round(temperature + band_half_width, 6) @@ -280,6 +286,31 @@ def build_rcb_scenario_sets( return scenario_sets +def validate_rebase_fill_max_years(value: object) -> int: + """Return ``rebase_fill_max_years`` from rcbs.yaml, or raise if it is not a count.""" + if isinstance(value, bool) or not isinstance(value, int) or value < 0: + raise ConfigurationError( + f"rcbs.yaml: rebase_fill_max_years must be a non-negative integer, " + f"got {value!r}." + ) + return value + + +def _available_years(emissions: pd.DataFrame) -> list[int]: + """List the years whose column exists and holds a value in every row.""" + return sorted( + int(c) + for c in emissions.columns + if str(c).isdigit() and emissions[c].notna().all() + ) + + +def _years_lacking(emissions: pd.DataFrame, years: range | list[int]) -> list[int]: + """List the years in ``years`` that ``emissions`` has no value for.""" + available = set(_available_years(emissions)) + return [year for year in years if year not in available] + + def missing_rebase_years( rcb_baseline_year: int, emissions: pd.DataFrame, @@ -290,13 +321,9 @@ def missing_rebase_years( Rebasing a budget from ``rcb_baseline_year`` to ``target_baseline_year`` adds the emissions of every year from the target baseline to the year - before the RCB baseline. + before the RCB baseline. A year with a missing value counts as lacking. """ - return [ - year - for year in range(target_baseline_year, rcb_baseline_year) - if str(year) not in emissions.columns - ] + return _years_lacking(emissions, range(target_baseline_year, rcb_baseline_year)) def fill_rebase_years( @@ -414,20 +441,20 @@ def calculate_budget_from_rcb( Raises ------ DataProcessingError - If allocation_year is before 2020 and the world emissions lack any year - from allocation_year to 2019 + If the world emissions lack any year from allocation_year to 2019 + (allocation_year before 2020) or from 2020 to allocation_year - 1 + (allocation_year after 2020) """ if allocation_year < 2020: # Add historical emissions before RCB period year_cols = [str(y) for y in range(allocation_year, 2020)] # A partial sum understates the budget, so every year must hold a value. - world_row = world_scenario_emissions_ts.iloc[0] - years_with_data = sorted( - int(c) for c in world_row.dropna().index if str(c).isdigit() + missing_years = _years_lacking( + world_scenario_emissions_ts, range(allocation_year, 2020) ) - missing_years = [y for y in map(int, year_cols) if y not in years_with_data] if missing_years: + years_with_data = _available_years(world_scenario_emissions_ts) first_year = years_with_data[0] if years_with_data else None raise DataProcessingError( f"Allocation year {allocation_year} needs world emissions for " @@ -460,16 +487,20 @@ def calculate_budget_from_rcb( else: # allocation_year > 2020 # Subtract emissions already used from RCB - year_cols = [ - str(y) - for y in range(2020, allocation_year) - if str(y) in world_scenario_emissions_ts.columns - ] + year_cols = [str(y) for y in range(2020, allocation_year)] - if not year_cols: + # A partial sum overstates the budget, so every year must hold a value. + missing_years = _years_lacking( + world_scenario_emissions_ts, range(2020, allocation_year) + ) + if missing_years: + years_with_data = _available_years(world_scenario_emissions_ts) + last_year = years_with_data[-1] if years_with_data else None raise DataProcessingError( - f"No emission data found for years 2020-{allocation_year - 1}. " - f"Cannot calculate emissions already used from RCB." + f"Allocation year {allocation_year} needs world emissions for " + f"2020-{allocation_year - 1}, but the world emissions data lack " + f"{_year_ranges(missing_years)}. The last available year is " + f"{last_year}." ) emissions_used = world_scenario_emissions_ts[year_cols].sum(axis=1).iloc[0] diff --git a/src/fair_shares/library/utils/math/allocation.py b/src/fair_shares/library/utils/math/allocation.py index dec05f5..f759c13 100644 --- a/src/fair_shares/library/utils/math/allocation.py +++ b/src/fair_shares/library/utils/math/allocation.py @@ -325,7 +325,8 @@ def calculate_gini_adjusted_gdp( Array of Gini coefficients (0-1) for each country. income_floor Development threshold in currency units per capita per year. - GDR default: $7,500/year (2010 PPP). + Must use the price base of ``total_gdps``. Baer (2013) gives $7,500 + on a 2005 base and $8,500 on a 2010 base. total_populations Array of total population values for each country. max_adjustment diff --git a/tests/unit/test_import_order.py b/tests/unit/test_import_order.py new file mode 100644 index 0000000..48f9259 --- /dev/null +++ b/tests/unit/test_import_order.py @@ -0,0 +1,26 @@ +"""Each package module imports cleanly as the first import of a fresh interpreter.""" + +import subprocess +import sys + +import pytest + +MODULES = [ + "fair_shares", + "fair_shares.library.config", + "fair_shares.library.config.models", + "fair_shares.library.utils", + "fair_shares.library.utils.data.config", + "fair_shares.library.validation", +] + + +@pytest.mark.parametrize("module", MODULES) +def test_module_imports_first(module): + """A circular import shows up only when the module loads first.""" + result = subprocess.run( + [sys.executable, "-c", f"import {module}"], + capture_output=True, + text=True, + ) + assert result.returncode == 0, result.stderr diff --git a/tests/unit/test_rcb_calculations.py b/tests/unit/test_rcb_calculations.py index b5fa8b0..881e601 100644 --- a/tests/unit/test_rcb_calculations.py +++ b/tests/unit/test_rcb_calculations.py @@ -181,6 +181,31 @@ def test_allocation_year_before_the_world_series_raises(self): assert calculate_budget_from_rcb(500.0, 2000, from_2000, verbose=False) == 700 + def test_allocation_year_after_the_world_series_raises(self): + """A start year beyond the world series would drop years from the sum.""" + index = pd.MultiIndex.from_tuples( + [("World", "Mt * CO2e", "co2")], + names=["iso3c", "unit", "emission-category"], + ) + to_2023 = pd.DataFrame({str(y): [10.0] for y in range(2000, 2024)}, index=index) + with pytest.raises(DataProcessingError) as error: + calculate_budget_from_rcb(500.0, 2025, to_2023, verbose=False) + assert "lack 2024" in str(error.value) + assert "last available year is 2023" in str(error.value) + + assert calculate_budget_from_rcb(500.0, 2024, to_2023, verbose=False) == 460 + + def test_a_nan_year_counts_as_missing_after_2020(self): + """A year column without a value is lacking, not skipped by the sum.""" + index = pd.MultiIndex.from_tuples( + [("World", "Mt * CO2e", "co2")], + names=["iso3c", "unit", "emission-category"], + ) + padded = pd.DataFrame({str(y): [10.0] for y in range(2000, 2026)}, index=index) + padded[["2023", "2024"]] = float("nan") + with pytest.raises(DataProcessingError, match="lack 2023-2024"): + calculate_budget_from_rcb(500.0, 2025, padded, verbose=False) + def test_with_variable_emissions(self): """Test with variable emissions to ensure correct summation.""" # Create variable emissions data From bb87cb7cd4ac24818702f14d2d16149a46b9dc02 Mon Sep 17 00:00:00 2001 From: Setu Pelz Date: Thu, 1 Oct 2026 16:01:57 +0200 Subject: [PATCH 3/7] fix: convention gap for co2 budgets runs from the baseline year Adjusted co2 budgets of RCB sources with a baseline after 2020 were too low. The rebase adds observed LULUCF in the NGHGI convention for 2020 to the year before the baseline, and the BM-to-NGHGI convention gap also started in 2020, so the conversion was applied twice for those years. The gap now runs from the source baseline year to net zero (Weber et al. 2026, Eqs. 2-3). Notebook 104 writes one median gap per baseline year. --- CHANGELOG.md | 1 + data/rcbs/rcbs.yaml | 3 + docs/api/utils/data.md | 8 + docs/science/glossary.md | 2 +- docs/science/other-operations.md | 81 ++++----- notebooks/100_data_preprocess_rcbs.py | 8 +- .../104_data_preprocess_scenarios_ar6.py | 99 +++++------ notebooks/106_generate_pathways_from_rcbs.py | 27 +-- src/fair_shares/conf/data_registry.yaml | 2 +- .../library/pipeline/preprocessing.py | 31 ++-- src/fair_shares/library/preprocessing/rcbs.py | 155 +++++++----------- src/fair_shares/library/utils/data/nghgi.py | 8 +- src/fair_shares/library/utils/data/rcb.py | 116 ++++++++++--- tests/unit/test_nghgi_corrections.py | 38 ++--- 14 files changed, 306 insertions(+), 273 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 14ca470..8239c41 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,7 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions: [Sem - The Python API's preprocessing path wrote `country_gini_stationary.csv` without a Rest-of-World row, unlike the notebook path. Both now use the same code. - Notebook `100_data_preprocess_rcbs` passed the removed `project_root=` argument to `load_and_process_rcbs`, so the RCB pipeline could not run. - Adjusted budgets of RCB sources with a baseline after 2020 were too low. The rebase to 2020 added world fossil emissions, which exclude international bunkers, and the bunker deduction covered 2020 to net zero, so the bunkers of 2020 to the year before the baseline were deducted and never added. The rebase now adds them (new output column `rebase_bunkers_mt`). Every adjusted budget of `lamboll_2023` (baseline 2023) rises by 2,822 Mt CO2 and every adjusted budget of `forster_2024` (baseline 2024) by 3,959 Mt CO2, for `co2-ffi` and `co2`, with PRIMAP emissions and `gcb-2024` bunkers. `ar6_2020` (baseline 2020) is unchanged. `process_rcb_to_2020_baseline` takes the bunker series as `world_bunker_emissions`. +- Adjusted `co2` budgets of RCB sources with a baseline after 2020 were too low. The rebase to 2020 adds observed LULUCF in the national-inventory (NGHGI) convention for 2020 to the year before the baseline, and the BM-to-NGHGI convention gap also started in 2020, so the conversion for those years was applied twice. The convention gap now runs from the baseline year of the source to net zero (Weber et al. 2026, Eqs. 2-3). Notebook 104 writes one median gap per baseline year (`convention_gap_median_from` in `rcb_scenario_adjustments.yaml`, which replaces `convention_gap_median`), so existing outputs need a re-run of notebook 104. With PRIMAP emissions and `melo-2026` LULUCF, the `1.5p50` budget of `lamboll_2023` rises from 222,434 to 241,477 Mt CO2 and that of `forster_2024` from 206,034 to 230,905 Mt CO2. `ar6_2020` (baseline 2020) and every `co2-ffi` budget are unchanged. The argument `actual_bm_lulucf_emissions` of `load_and_process_rcbs` and `process_rcb_to_2020_baseline` is now `world_nghgi_lulucf_emissions`: the series is the NGHGI world row, and the pipeline holds no observed bookkeeping-model LULUCF series. - `build_nghgi_world_co2_timeseries` subtracted bunkers from a world fossil series that already excludes them (871 Mt CO2 in 2020; 20,770 Mt over 2000-2019). World `co2` is now fossil plus LULUCF, as in notebook `100_data_preprocess_rcbs`, and the function no longer takes `bunker_ts`. The error reached `run_rcb_preprocessing` and notebook `106_generate_pathways_from_rcbs`; budget files written by notebook 100 did not contain it. - `compute_bunker_deduction` treated 2023 as the last observed bunker year for every source. It now reads the last year from the bunker data, so `gcb-2025` runs use the observed 2024 value and extrapolate the 2024 rate. Runs with `gcb-2024` bunkers give the same deduction as before. - `calculate_budget_from_rcb` summed only the years present when the allocation year preceded the first year of the world emissions series (for example `co2`, which starts in 2000, with allocation year 1990). It now raises an error that names the missing years and the first available year. diff --git a/data/rcbs/rcbs.yaml b/data/rcbs/rcbs.yaml index 191a9d4..25ecb2a 100644 --- a/data/rcbs/rcbs.yaml +++ b/data/rcbs/rcbs.yaml @@ -13,6 +13,9 @@ # the temperature in the label. One band serves every likelihood of T. # A remaining carbon budget runs to net-zero CO2, so the band keeps only # scenarios whose CO2 emissions reach zero by 2100. +# The two rules differ for scenarios that never reach net-zero CO2: +# peak-warming-band leaves them out, while ar6-category applies no such +# filter and integrates their deductions to 2100. # # Sources report at slightly different probability levels: # - AR6/Forster 2024: 67% and 83% (mapped to 2p66, 2p83) diff --git a/docs/api/utils/data.md b/docs/api/utils/data.md index 6e742c4..6fb9169 100644 --- a/docs/api/utils/data.md +++ b/docs/api/utils/data.md @@ -114,6 +114,14 @@ Functions for parsing RCB scenarios and converting to allocation-ready budgets. heading_level: 4 show_source: false +### convention_gap_from_baseline + +::: fair_shares.library.utils.data.rcb.convention_gap_from_baseline + options: + show_root_heading: true + heading_level: 4 + show_source: false + ### calculate_budget_from_rcb ::: fair_shares.library.utils.data.rcb.calculate_budget_from_rcb diff --git a/docs/science/glossary.md b/docs/science/glossary.md index fcc97da..adb69ad 100644 --- a/docs/science/glossary.md +++ b/docs/science/glossary.md @@ -309,7 +309,7 @@ Brief definitions. For detailed explanations and operationalization, see [Alloca : National Greenhouse Gas Inventory. Country-level emissions reporting under UNFCCC. Includes passive carbon fluxes (CO₂ fertilization, climate feedbacks) in LULUCF estimates, unlike bookkeeping models. See: [NGHGI-Consistent RCB Corrections](other-operations.md#weber-rcb-corrections) **NGHGI-BM convention gap** -: The systematic difference between NGHGI and bookkeeping (BM) LULUCF CO₂ estimates. NGHGI includes indirect effects (CO₂ fertilization of managed forests) that BM excludes, making NGHGI a larger net sink. ~90 GtCO₂ for 1.5°C scenarios [Weber 2026](https://doi.org/10.1038/s41467-026-69078-9). See: [NGHGI-Consistent RCB Corrections](other-operations.md#correction-for-total-co2-budgets-co2) +: The systematic difference between NGHGI and bookkeeping (BM) LULUCF CO₂ estimates. NGHGI includes indirect effects (CO₂ fertilization of managed forests) that BM excludes, making NGHGI a larger net sink. This package computes a cumulative gap of 90.3 GtCO₂ from 2020 to net-zero CO₂ and 65.4 GtCO₂ from 2024 (median of the AR6 C1 scenarios, PRIMAP run with `melo-2026`). [Weber 2026](https://doi.org/10.1038/s41467-026-69078-9) reports that in 2024 the adjustment "reduces the global RCB by 63 (41–121) GtCO2 for 1.5 °C (50%)" (Results, "The global NGHGI-consistent RCB"). See: [NGHGI-Consistent RCB Corrections](other-operations.md#correction-for-total-co2-budgets-co2) **PRIMAP-hist** : Historical emissions dataset from PIK (Potsdam Institute for Climate Impact Research). diff --git a/docs/science/other-operations.md b/docs/science/other-operations.md index 3fb0320..0708e19 100644 --- a/docs/science/other-operations.md +++ b/docs/science/other-operations.md @@ -208,7 +208,7 @@ The correction methodology follows Weber et al. (2026). A central design princip | $\text{RCB}_{\text{BM}}(\text{base})$ | Published Remaining Carbon Budget from baseline year, in BM convention | | $F_{\text{actual}}(a, b)$ | Cumulative actual fossil CO₂ emissions without international bunkers, years $a$ to $b$ (e.g. PRIMAP) | | $L_{\text{BM}}(a, b)$ | Cumulative BM LULUCF CO₂ from scenario median (AFOLU\|Direct), years $a$ to $b$ | -| $L_{\text{BM,actual}}(a, b)$ | Cumulative actual observed BM LULUCF CO₂ (e.g. PRIMAP co2-lulucf), years $a$ to $b$ | +| $L_{\text{NGHGI}}(a, b)$ | Cumulative observed NGHGI LULUCF CO₂ (world row of the LULUCF source, Melo et al.), years $a$ to $b$ | | $B(a, b)$ | Cumulative international bunker fuel CO₂ emissions, years $a$ to $b$ | | $\text{gap}(a, b)$ | Cumulative NGHGI--BM convention gap for CO₂, years $a$ to $b$ | | $\text{NZ}$ | Net-zero year (from scenario data) | @@ -250,15 +250,13 @@ The years 2020 to $\text{base}{-}1$ cancel, and the net deduction covers the yea #### Why LULUCF is absent from the co2-ffi rebase -The rebase needs to shift the budget's starting point from $\text{base}$ to 2020. A naive approach would add _all_ actual emissions (fossil + LULUCF) for the rebase period. But the LULUCF decomposition already covers the full range from $\text{base}$ to NZ, so adding actual BM LULUCF from 2020 to $\text{base}{-}1$ alongside decomposing from $\text{base}$ to NZ is equivalent to decomposing from 2020 to NZ: +The rebase shifts the starting point of the budget from $\text{base}$ to 2020. The published budget is in the BM convention, so a full rebase would add BM LULUCF for 2020 to $\text{base}{-}1$. The decomposition would then remove BM LULUCF for 2020 to NZ: $$ -\underbrace{L_{\text{BM,actual}}(2020,\, \text{base}{-}1)}_{\text{rebase LULUCF}} -+ \underbrace{L_{\text{BM}}(\text{base},\, \text{NZ})}_{\text{decomposition}} -\approx L_{\text{BM}}(2020,\, \text{NZ}) +L_{\text{BM}}(2020,\, \text{base}{-}1) - L_{\text{BM}}(2020,\, \text{NZ}) = -L_{\text{BM}}(\text{base},\, \text{NZ}) $$ -Since we would need to subtract $L_{\text{BM}}(2020,\, \text{NZ})$ to isolate the fossil budget anyway, the rebase LULUCF and the decomposition LULUCF from 2020 to $\text{base}{-}1$ cancel algebraically. The formula therefore omits actual LULUCF from the rebase and starts the LULUCF decomposition at $\text{base}$, not 2020. The result is the same, but the formula is simpler and avoids mixing actual and scenario data for overlapping years. +The years 2020 to $\text{base}{-}1$ cancel. The formula therefore omits LULUCF from the rebase and starts the LULUCF decomposition at $\text{base}$. The pipeline holds no observed LULUCF series in the BM convention, and this form needs none. #### Precautionary cap on BM LULUCF @@ -270,22 +268,24 @@ $$ The LULUCF decomposition extends from the baseline year to net-zero. Thus we must use AR6 scenario pathways corresponding to the same climate category as the RCB (e.g., 1.5°C 50th percentile scenarios for a 1.5p50 budget). Each scenario's cumulative AFOLU|Direct is integrated from 2020 to its own net-zero year $t_{\text{nz},i}$, then the median across scenarios is taken (integrate per scenario, then median — consistent with the convention gap computation per Weber 2026). The pre-computed median cumulative is stored as `bm_lulucf_cumulative_median` in `rcb_scenario_adjustments.yaml`. When the RCB baseline year $\text{base} > 2020$, the 2020-to-base prefix is subtracted using the per-year median timeseries (accurate because historical BM LULUCF has negligible inter-scenario spread). When the result is negative (net sink), the cap zeros it out because the sink relies on uncertain future reforestation. Configurable via `precautionary_lulucf` in the adjustments config (default: `true`; set to `false` for sensitivity analysis). -!!! note "Why `convention_gap_median` is 0 in CO2-FFI output" - The `rcb_scenario_adjustments.yaml` file includes a `convention_gap_median` field for every AR6 category. For **co2-ffi** allocations, this field is **not used** — the LULUCF adjustment comes from `bm_lulucf_cumulative_median` instead (see above). The convention gap only applies to **co2** allocations, where the budget must switch from the bookkeeping model convention to the NGHGI convention. Its presence in the YAML for co2-ffi scenarios is a storage artefact, not a computational input. +!!! note "Why `convention_gap_median_from` is 0 in CO2-FFI output" + The `rcb_scenario_adjustments.yaml` file includes a `convention_gap_median_from` field for every scenario set, with one value per RCB baseline year. For **co2-ffi** allocations, this field is **not used** — the LULUCF adjustment comes from `bm_lulucf_cumulative_median` instead (see above). The convention gap only applies to **co2** allocations, where the budget must switch from the bookkeeping model convention to the NGHGI convention. Its presence in the YAML for co2-ffi scenarios is a storage artefact, not a computational input. ### Correction for total CO₂ budgets (co2) -For budgets covering **total CO₂** including land use, LULUCF stays in the budget but the convention must switch from BM to NGHGI. Unlike the co2-ffi case, there is no LULUCF decomposition -- only a convention gap adjustment: +For budgets covering **total CO₂** including land use, LULUCF stays in the budget but the convention must switch from BM to NGHGI. The co2 case has no LULUCF decomposition. The rebase adds observed NGHGI LULUCF for 2020 to $\text{base}{-}1$, and a convention gap converts the published budget from $\text{base}$ to NZ: $$ \mathrm{nghgi{\_}budget}(2020) = \text{RCB}_{\text{BM}}(\text{base}) + F_{\text{actual}}(2020,\, \text{base}{-}1) + B(2020,\, \text{base}{-}1) - + L_{\text{BM,actual}}(2020,\, \text{base}{-}1) - + \text{gap}(2020,\, \text{NZ}) + + L_{\text{NGHGI}}(2020,\, \text{base}{-}1) + + \text{gap}(\text{base},\, \text{NZ}) - B(2020,\, \text{NZ}) $$ +with $\text{gap}(a, b) = \sum_{t=a}^{b} \left[L_{\text{NGHGI}}(t) - L_{\text{BM}}(t)\right]$. + The six terms are: 1. **$\text{RCB}_{\text{BM}}(\text{base})$** -- the published carbon budget, same as for co2-ffi. @@ -294,15 +294,17 @@ The six terms are: 3. **$B(2020,\, \text{base}{-}1)$** -- the bunker rebase, identical to co2-ffi. -4. **$L_{\text{BM,actual}}(2020,\, \text{base}{-}1)$** -- the BM LULUCF rebase. Unlike co2-ffi, actual observed BM LULUCF _is_ included in the rebase. This is because there is no LULUCF decomposition to cancel with -- the budget retains the full land-use component. Source: e.g. PRIMAP co2-lulucf (already in the pipeline). +4. **$L_{\text{NGHGI}}(2020,\, \text{base}{-}1)$** -- the NGHGI LULUCF rebase. Observed LULUCF CO₂ in the national-inventory convention is added for 2020 to $\text{base}{-}1$. The source is the world row of the active LULUCF source (Melo et al.), which notebook 107 writes. The pipeline holds no observed LULUCF series in the BM convention. When $\text{base} = 2020$, this term is zero. The output column is `rebase_lulucf_mt`. -5. **$\text{gap}(2020,\, \text{NZ})$** -- the BM-to-NGHGI convention gap. Covers the full period from 2020 (not from $\text{base}$) because the BM LULUCF rebase is in BM convention — the gap for the rebase years converts it to NGHGI. This quantity is negative (NGHGI reports a larger land sink than BM), so it reduces the allocatable budget. Computed from NGHGI actual LULUCF and scenario BM LULUCF (AFOLU|Direct) data (see [Convention gap decomposition](#convention-gap-decomposition)). +5. **$\text{gap}(\text{base},\, \text{NZ})$** -- the BM-to-NGHGI convention gap. It covers the years that the published budget covers, from $\text{base}$ to NZ, and replaces BM LULUCF with NGHGI LULUCF for those years. [Weber 2026](https://doi.org/10.1038/s41467-026-69078-9) (Methods, Eqs. 2--3) uses the same split: the correction term starts at the reference year of the budget, and earlier years take observed NGHGI LULUCF. This quantity is negative (NGHGI reports a larger land sink than BM), so it reduces the allocatable budget. It is computed per scenario from observed NGHGI LULUCF and scenario AFOLU data (see [Convention gap decomposition](#convention-gap-decomposition)). Notebook 104 stores one median per baseline year in `convention_gap_median_from`. The output column is `correction_lulucf_nghgi_mt`. 6. **$B(2020,\, \text{NZ})$** -- the bunker deduction, same as for co2-ffi. -#### Why the co2 rebase includes actual BM LULUCF +#### Why the co2 rebase adds NGHGI LULUCF + +The target quantity is cumulative fossil CO₂ plus NGHGI LULUCF from 2020 to NZ. The published budget holds fossil CO₂, bunkers and BM LULUCF from $\text{base}$ to NZ. -In the co2-ffi formula, actual BM LULUCF in the rebase period cancels with the decomposition for the same years. In the co2 formula there is no LULUCF decomposition (because land-use emissions stay in the budget), so there is nothing for the rebase LULUCF to cancel with. The rebase must therefore include both fossil and BM LULUCF to correctly shift the total CO₂ budget from $\text{base}$ to 2020. +For 2020 to $\text{base}{-}1$ the rebase adds the observed quantities in the target convention: fossil CO₂, bunkers and NGHGI LULUCF. For $\text{base}$ to NZ the convention gap converts the LULUCF share of the published budget from BM to NGHGI. Each year from 2020 to NZ is converted once. The gap starts at $\text{base}$ because the rebase LULUCF of the earlier years is already in the NGHGI convention. ### Design principle: actual data for the rebase, scenario data for the future @@ -312,13 +314,13 @@ The formulas enforce a strict separation: | ------------------------------------------------------- | ------------------------------- | --------------------------------------------------------------------- | | Fossil rebase ($F_{\text{actual}}$) | Actual (e.g. PRIMAP) | Observed emissions -- no projection uncertainty | | Bunker rebase ($B$, 2020 to $\text{base}{-}1$) | Actual (GCB bunker series) | Same rationale | -| BM LULUCF rebase ($L_{\text{BM,actual}}$, co2 only) | Actual (e.g. PRIMAP co2-lulucf) | Same rationale | +| NGHGI LULUCF rebase ($L_{\text{NGHGI}}$, co2 only) | Actual (Melo et al. world row) | Same rationale | | BM LULUCF decomposition ($L_{\text{BM}}$, co2-ffi only) | Scenario median (AFOLU\|Direct) | Requires future pathway to NZ; no observational data exists | -| Convention gap ($\text{gap}$) | Scenario-based | Forward-looking NGHGI--BM difference requires modeled indirect fluxes | +| Convention gap ($\text{gap}$, co2 only) | Observed NGHGI + scenario data | Forward-looking NGHGI--BM difference requires modeled indirect fluxes | | Net-zero year ($\text{NZ}$) | Scenario data | By definition a future quantity | | Bunker deduction ($B$) | Observational + extrapolation | Historical data extended at last observed rate to NZ | -This means that adding a new RCB source (e.g., Lamboll et al. with baseline 2023) only requires actual emissions and bunker data through 2022 for the rebase. The LULUCF decomposition integrates from $\text{base}$ (co2-ffi), while the convention gap and bunker deduction always cover the full 2020--NZ period. +This means that adding a new RCB source (e.g., Lamboll et al. with baseline 2023) only requires actual fossil, bunker and, for co2, NGHGI LULUCF data through 2022 for the rebase. The LULUCF decomposition (co2-ffi) and the convention gap (co2) start at $\text{base}$. The bunker deduction covers 2020 to NZ. The rebase needs a value for every year from 2020 to $\text{base}{-}1$ in each series it adds: fossil emissions, bunkers and, for co2, LULUCF. @@ -326,7 +328,7 @@ The rebase needs a value for every year from 2020 to $\text{base}{-}1$ in each s A series can end before $\text{base}{-}1$. Each later year then takes the last observed value of that series. This fill is a placeholder until observed data are published. `rebase_fill_max_years` in `rcbs.yaml` sets the largest number of years that one series may take this way (default 1; 0 turns the fill off). Every fill raises a warning that names the source, the series, the filled years and the value. -A source that needs more years than the limit is left out of the processed budgets, and the pipeline prints a warning that names the missing years. `forster_2026` (baseline 2026) needs values through 2025. With `gcb-2025` emissions and bunkers (observed to 2024) the rebase fills 2025 with the 2024 values. With PRIMAP (observed to 2023) two years are missing and the source is left out. `lamboll_2023` and `forster_2024` need no fill with either emissions source. +A source that needs more years than the limit is left out of the processed budgets. The pipeline prints one warning that lists the sources left out and their missing years. `forster_2026` (baseline 2026) needs values through 2025. With `gcb-2025` emissions and bunkers (observed to 2024) the rebase fills 2025 with the 2024 values. With PRIMAP (observed to 2023) two years are missing and the source is left out. For `co2`, `forster_2026` also needs NGHGI LULUCF through 2025. With `melo-2026` (ends 2023) two years are missing and the source is left out. With `melo-2026-v4` (ends 2024) the rebase fills 2025 with the 2024 value. `lamboll_2023` and `forster_2024` need no fill with either emissions source. The bunker deduction already holds the last observed rate for later years. A filled bunker year in the rebase therefore cancels exactly against the same year in the deduction. @@ -379,7 +381,7 @@ The global difference is substantial: NGHGI-reported LULUCF is a larger net sink ### Per-scenario net-zero years as integration bounds -Forward-looking quantities (LULUCF decomposition, convention gap, bunker deduction) are integrated from their start year to the **scenario-specific net-zero year** $t_{\text{nz},i}$ -- the first year when that scenario's total CO₂ emissions (`Emissions|CO2`) reach zero. This prevents post-net-zero negative emissions from inflating the corrections. +The LULUCF decomposition and the convention gap are integrated per scenario from their start year to the **scenario-specific net-zero year** $t_{\text{nz},i}$, the first year when that scenario's total CO₂ emissions (`Emissions|CO2`) reach zero. This prevents post-net-zero negative emissions from inflating the corrections. The bunker deduction is integrated to the median net-zero year of the scenario set. Note that `Emissions|CO2` in IAM scenario databases is fossil + BM LULUCF by convention — this is a property of how scenarios report total CO₂, not a methodological choice by fair-shares. @@ -389,12 +391,12 @@ Scenarios that never reach net-zero total CO₂ by 2100 are assigned 2100 as a c ### Convention gap decomposition -The per-scenario convention gap $\text{Gap}_i$ decomposes into two temporal segments: +The per-scenario convention gap $\text{Gap}_i$ runs from the baseline year $\text{base}$ of the RCB source to the net-zero year of the scenario. It decomposes into two temporal segments: -**Historical** ($2020 \leq t \leq \mathrm{splice{\_}year}$): NGHGI actual LULUCF (reported values, same for all scenarios) minus BM LULUCF for scenario $i$ (the bookkeeping proxy from scenario data). The splice year is derived dynamically from the data (currently 2023). The gap always covers the full 2020--NZ range because the BM LULUCF rebase years also need convention conversion: +**Observed** ($\text{base} \leq t \leq \mathrm{splice{\_}year}$): NGHGI actual LULUCF (reported values, same for all scenarios) minus BM LULUCF for scenario $i$ (the bookkeeping proxy from scenario data). The splice year is the last year of the NGHGI data (2023 for `melo-2026`, 2024 for `melo-2026-v4`): $$ -\text{Gap}_{i,\text{hist}} = \sum_{t=2020}^{\min(\text{splice},\, t_{\text{nz},i})} \left[\text{NGHGI}_{\text{actual}}(t) - \text{BM}_{\text{Direct},i}(t)\right] +\text{Gap}_{i,\text{obs}} = \sum_{t=\text{base}}^{\min(\text{splice},\, t_{\text{nz},i})} \left[\text{NGHGI}_{\text{actual}}(t) - \text{BM}_{\text{Direct},i}(t)\right] $$ Currently, NGHGI actual LULUCF is sourced from Melo et al. and BM LULUCF from the Gidden et al. AR6 reanalysis (AFOLU|Direct). These are the current data sources for these roles — alternatives providing the same quantities could be substituted. @@ -402,15 +404,19 @@ Currently, NGHGI actual LULUCF is sourced from Melo et al. and BM LULUCF from th **Future** ($t > \mathrm{splice{\_}year}$): Only the NGHGI-consistent indirect component for scenario $i$ (CO₂ fertilization and other passive fluxes), because the direct components cancel in the gap: $$ -\text{Gap}_{i,\text{future}} = \sum_{t=\text{splice}+1}^{t_{\text{nz},i}} \text{Indirect}_{i}(t) +\text{Gap}_{i,\text{future}} = \sum_{t=\max(\text{base},\, \text{splice}+1)}^{t_{\text{nz},i}} \text{Indirect}_{i}(t) $$ Currently sourced from the Gidden et al. AR6 reanalysis (AFOLU|Indirect). -The total per-scenario gap is $\text{Gap}_i = \text{Gap}_{i,\text{hist}} + \text{Gap}_{i,\text{future}}$, and the median is taken across all scenarios $i$ in the corresponding climate category pool. Each scenario's integration ends at its own $t_{\text{nz},i}$. +A baseline year after the splice year leaves the observed segment empty, and the gap is the indirect component from $\text{base}$. A scenario that reaches net zero before $\text{base}$ has a gap of zero. The years 2020 to $\text{base}{-}1$ are outside the gap: the rebase adds observed NGHGI LULUCF for them ([Weber 2026](https://doi.org/10.1038/s41467-026-69078-9), Methods, Eqs. 2--3). + +The total per-scenario gap is $\text{Gap}_i = \text{Gap}_{i,\text{obs}} + \text{Gap}_{i,\text{future}}$, and the median is taken across all scenarios $i$ in the scenario set. Each scenario's integration ends at its own $t_{\text{nz},i}$. Notebook 104 computes one median for each baseline year in `rcbs.yaml` (`convention_gap_median_from` in `rcb_scenario_adjustments.yaml`), and a budget takes the median of its own baseline year. The per-scenario function is `convention_gap_from_baseline()` in `src/fair_shares/library/utils/data/rcb.py`. **Why per-scenario data for the BM side?** The convention gap is a per-scenario quantity — each scenario has its own AFOLU|Direct pathway, NZ year, and Indirect fluxes. Global Carbon Budget multi-model averages cannot be substituted here because they would collapse the per-scenario variation into a single number, breaking the integrate-per-scenario-then-median methodology. For actual historical emissions (the RCB rebase from baseline to 2020), observational data is used — no scenario data is involved in that step. +**Convention choice for the BM side.** The BM side of the convention gap is the scenario `AFOLU|Direct` flux from the Gidden et al. 2023 reanalysis, also for the observed years from $\text{base}$ to the splice year. An observed mean of bookkeeping models is an alternative for those years. [Weber 2026](https://doi.org/10.1038/s41467-026-69078-9) adjusts the Gidden et al. values with the difference between the Global Carbon Budget mean of bookkeeping models and NGHGI-reported values for 2020 to 2023 (Methods, "Calculating a NGHGI-consistent global RCB"). The package holds no observed BM series and makes no such adjustment. Weber et al. also take the mean across scenarios, and the package takes the median. + ### World CO₂ timeseries for backward extension When the allocation year is before 2020, historical emissions must be added back to the RCB (see [RCB Pathway Generation](#rcb-pathway-generation) above). For total CO₂, the per-year world emissions use the NGHGI convention: @@ -436,21 +442,20 @@ When adding a new RCB source (e.g., a new publication with a different baseline | -------------------------- | -------------------------------------- | --------------------------------------- | | RCB value + baseline year | Starting point | Published literature | | Actual fossil CO₂ | Rebase | e.g. PRIMAP (already in pipeline) | -| Actual BM LULUCF | co2 rebase | e.g. PRIMAP co2-lulucf (already in pipeline) | +| Observed NGHGI LULUCF | co2 rebase | World row of the LULUCF source, Melo et al. (already in pipeline) | | Per-year BM LULUCF pathway | co2-ffi LULUCF decomposition | Scenario data (AFOLU\|Direct median) | | Net-zero year | Integration limit for bunkers + LULUCF | Scenario data | | Convention gap | co2 BM-to-NGHGI adjustment | NGHGI + scenario Indirect AFOLU | | Bunker fuel timeseries | Bunker rebase and bunker deduction | GCB (already in pipeline) | -The first three rows are observational and already available in the pipeline. The remaining four require scenario data for the new source's mitigation pathway category. +The RCB value comes from the publication. Fossil CO₂, NGHGI LULUCF and the bunker timeseries are observational and already in the pipeline. The bunker deduction extends the last observed bunker rate to the median net-zero year. The BM LULUCF pathway, the net-zero year and the convention gap need scenario data for the scenario set of the new source. ### Data sources | Component | Source | Coverage | | ------------------ | --------------------------------------------- | ---------------------------------------- | | Fossil CO₂ | PRIMAP-hist v2.6.1 | 1750--present | -| BM LULUCF (actual) | PRIMAP co2-lulucf | Country-level, annual | -| NGHGI LULUCF | Melo et al. (2026) v3.1 NGHGI LULUCF | 2000--2023, 185 countries + world | +| NGHGI LULUCF | Melo et al. (2026) NGHGI LULUCF: v3.1.1 (`melo-2026`, default) or v4.0.0 (`melo-2026-v4`) | 2000--2023, 185 countries + world (v3.1.1); 2000--2024, 187 countries + world (v4.0.0) | | BM LULUCF proxy | Gidden et al. AR6 reanalysis, AFOLU\|Direct | 2015--2100, per scenario within category | | Passive flux | Gidden et al. AR6 reanalysis, AFOLU\|Indirect | 2015--2100, per scenario within category | | Net-zero years | Gidden et al. AR6 reanalysis, Emissions\|CO2 | Per scenario (first year total CO₂ ≤ 0) | @@ -460,7 +465,7 @@ The first three rows are observational and already available in the pipeline. Th ### Worked example: AR6 WG1 1.5C 50% (1.5p50) -Using `ar6_2020` source: 500 GtCO₂ total from 2020, scenario `1.5p50` (70 C1 scenarios, median NZ year ~2050). Values from `make dev-pipeline-rcbs` with PRIMAP v2025.03 emissions and Melo v3.1 LULUCF. +Using `ar6_2020` source: 500 GtCO₂ total from 2020, scenario `1.5p50` (70 C1 scenarios, median NZ year ~2050). Values from two pipeline runs with PRIMAP v2025.03 emissions, `gcb-2024` bunkers and Melo v3.1.1 LULUCF (`melo-2026`): `rcbs_co2-ffi.csv` of `primap-202503_wdi-2025_un-owid-2025_wdi-2025_rcbs_co2-ffi` and `rcbs_co2.csv` of `primap-202503_wdi-2025_un-owid-2025_wdi-2025_melo-2026_rcbs_all-ghg`. Each row is rounded, and the totals use unrounded values. #### Step 1: Weber corrections (RCB to allocatable budget at 2020) @@ -469,14 +474,14 @@ Using `ar6_2020` source: 500 GtCO₂ total from 2020, scenario `1.5p50` (70 C1 s | Published RCB (total CO₂) | 500 Gt | 500 Gt | | Fossil rebase | 0 (base=2020) | 0 (base=2020) | | Bunker rebase | 0 (base=2020) | 0 (base=2020) | -| BM LULUCF rebase | -- | 0 (base=2020) | -| LULUCF decomposition / gap | **0** (BM sink capped) | **-90 Gt** (conv gap) | +| NGHGI LULUCF rebase | -- | 0 (base=2020) | +| LULUCF decomposition / gap | **0** (BM sink capped) | **-90 Gt** (conv gap, 2020--NZ) | | Bunker subtraction | -35 Gt | -35 Gt | | **Allocatable budget (2020)** | **465 Gt** | **375 Gt** | **co2-ffi:** The cumulative BM LULUCF is estimated from AR6 scenarios in the corresponding climate category (here 1.5°C 50th percentile). Each scenario's AFOLU|Direct is integrated from 2020 to its own NZ year, then the median across scenarios is taken. The result is a net sink. Under the **precautionary cap** (default), this sink is not credited to the fossil budget (capped to 0). Without the cap (`precautionary_lulucf: false`), the fossil budget would increase. -**co2:** The convention gap is -90 Gt — NGHGI reports a larger land CO₂ sink than bookkeeping models, reducing the allocatable budget. The gap is computed from NGHGI actual LULUCF and scenario BM LULUCF data (see [Convention gap decomposition](#convention-gap-decomposition)). Bunker deduction is ~35 Gt (~870 Mt/yr integrated to median NZ year ~2050). The co2 budget is lower than co2-ffi because the convention gap is a significant negative adjustment. +**co2:** The convention gap from 2020 to NZ is -90 Gt (`1.5p50` median, -90.3 Gt). NGHGI reports a larger land CO₂ sink than bookkeeping models, which reduces the allocatable budget. The gap is computed from NGHGI actual LULUCF and scenario AFOLU data (see [Convention gap decomposition](#convention-gap-decomposition)). Bunker deduction is ~35 Gt (~870 Mt/yr integrated to median NZ year ~2050). The co2 budget is lower than co2-ffi because the convention gap is a significant negative adjustment. For [Lamboll 2023](https://doi.org/10.1038/s41558-023-01848-5) (`lamboll_2023`, `1.5p50`, 250 Gt from 2023): @@ -485,18 +490,18 @@ For [Lamboll 2023](https://doi.org/10.1038/s41558-023-01848-5) (`lamboll_2023`, | Published RCB | 250 Gt | 250 Gt | | Fossil rebase (2020--2022) | +106.6 Gt | +106.6 Gt | | Bunker rebase (2020--2022) | +2.8 Gt | +2.8 Gt | -| BM LULUCF rebase (2020--2022) | -- | -12.1 Gt | -| LULUCF decomposition / gap | **0** (BM sink capped) | **-90.3 Gt** (conv gap) | +| NGHGI LULUCF rebase (2020--2022) | -- | -12.1 Gt | +| LULUCF decomposition / gap | **0** (BM sink capped) | **-71.2 Gt** (conv gap, 2023--NZ) | | Bunker subtraction (2020--NZ) | -34.7 Gt | -34.7 Gt | -| **Allocatable budget (2020)** | **324.8 Gt** | **222.4 Gt** | +| **Allocatable budget (2020)** | **324.8 Gt** | **241.5 Gt** | -The bunker rebase and the bunker subtraction together remove the bunkers of 2023 to NZ (31.8 Gt), the years that the published budget covers. +The bunker rebase and the bunker subtraction together remove the bunkers of 2023 to NZ (31.8 Gt), the years that the published budget covers. For co2, the rebase adds observed NGHGI LULUCF for 2020 to 2022 (Melo et al. world row, -12.1 Gt), and the convention gap covers 2023 to NZ (`1.5p50` median from 2023, -71.2 Gt). #### Step 2: Allocation year adjustment The allocatable budget is the budget **from 2020 onwards**. The `allocation_year` parameter shifts the starting point by adding historical emissions (before 2020) or subtracting already-used emissions (after 2020). -To regenerate these values, run `make dev-pipeline-rcbs`. +`make dev-pipeline-rcbs` regenerates the co2-ffi values. The co2 values come from a pipeline run with `emission_category=all-ghg` and `active_lulucf_source=melo-2026`. --- diff --git a/notebooks/100_data_preprocess_rcbs.py b/notebooks/100_data_preprocess_rcbs.py index be556f2..7c55c2f 100644 --- a/notebooks/100_data_preprocess_rcbs.py +++ b/notebooks/100_data_preprocess_rcbs.py @@ -615,10 +615,10 @@ # %% from fair_shares.library.preprocessing.rcbs import load_and_process_rcbs -# Always pass PRIMAP fossil (co2-ffi) as world emissions; -# for total CO2, also pass BM LULUCF for rebase +# Always pass fossil (co2-ffi) as world emissions; +# for total CO2, also pass observed NGHGI LULUCF for the rebase world_fossil_emissions = ensure_string_year_columns(world_emiss["co2-ffi"]) -actual_bm_lulucf = ( +world_nghgi_lulucf = ( ensure_string_year_columns(world_emiss["co2-lulucf"]) if "co2-lulucf" in world_emiss else None @@ -632,7 +632,7 @@ data_dir=project_root / "data", output_dir=project_root / "output", source_id=source_id, - actual_bm_lulucf_emissions=actual_bm_lulucf, + world_nghgi_lulucf_emissions=world_nghgi_lulucf, verbose=True, ) diff --git a/notebooks/104_data_preprocess_scenarios_ar6.py b/notebooks/104_data_preprocess_scenarios_ar6.py index ab7cfdc..147b159 100644 --- a/notebooks/104_data_preprocess_scenarios_ar6.py +++ b/notebooks/104_data_preprocess_scenarios_ar6.py @@ -65,6 +65,7 @@ NET_ZERO_YEAR_COLUMN, PEAK_WARMING_COLUMN, build_rcb_scenario_sets, + convention_gap_from_baseline, net_zero_year, ) from fair_shares.library.utils.dataframes import normalize_metadata_column @@ -837,8 +838,10 @@ def _derive_category(minuend_key, subtrahend_key, new_category): # Scalars computed per scenario set: # - `bm_lulucf_cumulative_median`: median of per-scenario cumulative BM LULUCF # (= AFOLU|Direct), each integrated to its own NZ year -# - `convention_gap_median`: median of per-scenario cumulative convention gap -# (historical NGHGI-Direct + future Indirect), each integrated to its own NZ year +# - `convention_gap_median_from`: one entry per RCB baseline year. Each is the +# median of the per-scenario convention gap (observed NGHGI minus Direct up to +# the splice year, Indirect after it) from that baseline year to the +# scenario's own NZ year # - `nz_year_median`, `nz_year_min`, `nz_year_max`: net-zero year statistics # - `n_scenarios`: number of scenarios in the set @@ -876,11 +879,15 @@ def _derive_category(minuend_key, subtrahend_key, new_category): _rcb_path = config["targets"].get(_rcb_target, {}).get("path") if _rcb_path: with open(project_root / _rcb_path) as f: - rcb_scenario_sets = build_rcb_scenario_sets( - yaml.safe_load(f), scenario_metadata - ) + _rcb_yaml = yaml.safe_load(f) + rcb_scenario_sets = build_rcb_scenario_sets(_rcb_yaml, scenario_metadata) + # The convention gap of a budget starts at the baseline year of its source. + rcb_baseline_years = sorted( + {source["baseline_year"] for source in _rcb_yaml["rcb_data"].values()} + ) else: rcb_scenario_sets = {} + rcb_baseline_years = [] print(f" Target '{_rcb_target}' has no RCB file: no RCB adjustments computed.") @@ -924,19 +931,12 @@ def rows_of_scenario_set(var_df, scenario_set): year_cols = [col for col in sample_df.columns if col.isdigit()] sorted_year_cols = sorted(year_cols, key=int) - # --- Per-scenario NZ years (from total CO2 BM crossing zero) --- - total_indexed = cat_total.set_index(["Model", "Scenario"])[sorted_year_cols] + # --- Per-scenario NZ years, from the metadata column that the band rule reads --- + reached_nz = scenario_set.set_index(["Model", "Scenario"])[ + NET_ZERO_YEAR_COLUMN + ].loc[cat_total.set_index(["Model", "Scenario"]).index] # A scenario that never reaches net zero is integrated to 2100. - reached_nz = { - scenario_key: net_zero_year(total_indexed.loc[scenario_key]) - for scenario_key in total_indexed.index - } - nz_years_dict = { - scenario_key: nz_year if nz_year is not None else 2100 - for scenario_key, nz_year in reached_nz.items() - } - - nz_series = pd.Series(nz_years_dict, dtype=int) + nz_series = reached_nz.fillna(2100).astype(int) # --- Per-scenario cumulative BM LULUCF (= Direct) --- direct_indexed = cat_direct.set_index(["Model", "Scenario"])[sorted_year_cols] @@ -957,8 +957,8 @@ def rows_of_scenario_set(var_df, scenario_set): else 0.0 ) - # --- Per-scenario convention gap (historical NGHGI-Direct + future Indirect) --- - gap_median = 0.0 + # --- Per-scenario convention gap from each baseline year, then the median --- + gap_median_from = {year: 0.0 for year in rcb_baseline_years} if nghgi_world_available: cat_indirect = rows_of_scenario_set( rcb_scenario_data["AFOLU_indirect"], scenario_set @@ -967,57 +967,42 @@ def rows_of_scenario_set(var_df, scenario_set): sorted_year_cols ] common_all = common_scenarios.intersection(indirect_indexed.index) - - per_scenario_gaps = [] - for sk in common_all: - nz = nz_series[sk] - hist_end = min(nghgi_splice_year, nz) - - # Historical: NGHGI - Direct - from fair_shares.library.utils.data.nghgi import ( - compute_cumulative_emissions, - ) - - nghgi_hist = compute_cumulative_emissions(nghgi_world_df, 2020, hist_end) - hist_cols = [ - str(y) for y in range(2020, hist_end + 1) if str(y) in sorted_year_cols + nghgi_lulucf = nghgi_world_df.iloc[0] + + for baseline_year in rcb_baseline_years: + per_scenario_gaps = [ + convention_gap_from_baseline( + nghgi_lulucf=nghgi_lulucf, + bm_direct=direct_indexed.loc[sk], + indirect=indirect_indexed.loc[sk], + baseline_year=baseline_year, + nz_year=int(nz_series[sk]), + splice_year=nghgi_splice_year, + ) + for sk in common_all ] - direct_hist = ( - float(direct_indexed.loc[sk, hist_cols].sum()) if hist_cols else 0.0 - ) - hist_gap = nghgi_hist - direct_hist - - # Future: Indirect only (Direct cancels in the gap) - future_gap = 0.0 - if nz > nghgi_splice_year: - future_cols = [ - str(y) - for y in range(nghgi_splice_year + 1, nz + 1) - if str(y) in sorted_year_cols - ] - if future_cols: - future_gap = float(indirect_indexed.loc[sk, future_cols].sum()) - - per_scenario_gaps.append(hist_gap + future_gap) - - gap_median = ( - float(pd.Series(per_scenario_gaps).median()) if per_scenario_gaps else 0.0 - ) + if per_scenario_gaps: + gap_median_from[baseline_year] = float( + pd.Series(per_scenario_gaps).median() + ) # Store results rcb_adjustments[set_key] = { "bm_lulucf_cumulative_median": round(bm_median, 1), - "convention_gap_median": round(gap_median, 1), + "convention_gap_median_from": { + int(year): round(gap, 1) for year, gap in gap_median_from.items() + }, "nz_year_median": int(nz_series.median()), "nz_year_min": int(nz_series.min()), "nz_year_max": int(nz_series.max()), "n_scenarios": len(nz_series), - "n_reaching_nz": sum(nz_year is not None for nz_year in reached_nz.values()), + "n_reaching_nz": int(reached_nz.notna().sum()), } + gaps_text = ", ".join(f"{y}: {g:.0f}" for y, g in gap_median_from.items()) print( f" {set_key}: n={len(nz_series)}, NZ_med={int(nz_series.median())}, " - f"BM_LULUCF={bm_median:.0f} Mt, gap={gap_median:.0f} Mt" + f"BM_LULUCF={bm_median:.0f} Mt, gap from baseline year (Mt): {gaps_text}" ) # Save RCB adjustments as YAML diff --git a/notebooks/106_generate_pathways_from_rcbs.py b/notebooks/106_generate_pathways_from_rcbs.py index bd919c8..23d9cdb 100644 --- a/notebooks/106_generate_pathways_from_rcbs.py +++ b/notebooks/106_generate_pathways_from_rcbs.py @@ -275,8 +275,11 @@ def _load_world_emissions( if emission_category == "co2": # NGHGI-consistent world CO2 = fossil (excluding bunkers) + LULUCF(NGHGI), # as in run_rcb_preprocessing() - from fair_shares.library.preprocessing.rcbs import _load_shared_timeseries - from fair_shares.library.utils.data.nghgi import build_nghgi_world_co2_timeseries + from fair_shares.library.preprocessing.rcbs import _resolve_template_path + from fair_shares.library.utils.data.nghgi import ( + build_nghgi_world_co2_timeseries, + load_world_co2_lulucf, + ) # Load component timeseries world_co2_ffi_df = _load_world_emissions( @@ -287,8 +290,10 @@ def _load_world_emissions( ) # Load NGHGI LULUCF world timeseries - nghgi_ts, _bunker_ts, splice_year = _load_shared_timeseries( - adjustments_config, project_root, source_id=source_id, verbose=True + nghgi_ts, splice_year = load_world_co2_lulucf( + _resolve_template_path( + adjustments_config.lulucf_nghgi.path, source_id, project_root + ) ) # Build NGHGI-consistent world CO2 timeseries @@ -321,20 +326,20 @@ def _load_world_emissions( # ## Process RCB data to 2020 baseline # # Uses `load_and_process_rcbs` — the same NGHGI-consistent pipeline as -# notebook 100. This ensures per-category net-zero years, BM LULUCF -# shift in the rebase, and the precautionary BM LULUCF cap are all applied. +# notebook 100. This ensures per-category net-zero years, the NGHGI LULUCF +# rebase, and the precautionary BM LULUCF cap are all applied. # %% from fair_shares.library.preprocessing.rcbs import load_and_process_rcbs -# Always pass PRIMAP fossil (co2-ffi) as world emissions; -# for total CO2, also pass BM LULUCF for rebase +# Always pass fossil (co2-ffi) as world emissions; +# for total CO2, also pass observed NGHGI LULUCF for the rebase if emission_category == "co2": _fossil_for_rcb = world_co2_ffi_df - _bm_lulucf_for_rcb = world_co2_lulucf_df + _nghgi_lulucf_for_rcb = world_co2_lulucf_df else: _fossil_for_rcb = world_emissions_df # already co2-ffi - _bm_lulucf_for_rcb = None + _nghgi_lulucf_for_rcb = None rcbs_df = load_and_process_rcbs( rcb_yaml_path=rcb_yaml_path, @@ -342,7 +347,7 @@ def _load_world_emissions( emission_category=emission_category, adjustments_config=adjustments_config, source_id=source_id, - actual_bm_lulucf_emissions=_bm_lulucf_for_rcb, + world_nghgi_lulucf_emissions=_nghgi_lulucf_for_rcb, verbose=True, ) diff --git a/src/fair_shares/conf/data_registry.yaml b/src/fair_shares/conf/data_registry.yaml index 71e953c..5a75b46 100644 --- a/src/fair_shares/conf/data_registry.yaml +++ b/src/fair_shares/conf/data_registry.yaml @@ -401,7 +401,7 @@ sources: derived from the IPCC AR6 Scenarios Database. downloads: - target: "rcbs/rcbs.yaml" - sha256: "cc74c9003de9a6f6be19f08a1288e38ef410552fd7151c2211064162aef1c8d2" + sha256: "ba810a80fd83d18773bd5424e934765788d3462286db695d28e33f33169d9c06" - target: "rcbs/ar6_scenario_nz_years.parquet" sha256: "3df82c7ecfcf7b80782d666093d117e204f75e5e74f0c5ae1f22de80336a8ffc" diff --git a/src/fair_shares/library/pipeline/preprocessing.py b/src/fair_shares/library/pipeline/preprocessing.py index 287aec4..f4e6ad4 100644 --- a/src/fair_shares/library/pipeline/preprocessing.py +++ b/src/fair_shares/library/pipeline/preprocessing.py @@ -477,20 +477,24 @@ def run_rcb_preprocessing( if emission_category == "co2": # Build AdjustmentsConfig for loading shared timeseries from ..config.models import AdjustmentsConfig - from ..preprocessing.rcbs import _load_shared_timeseries - from ..utils.data.nghgi import build_nghgi_world_co2_timeseries + from ..preprocessing.rcbs import _resolve_template_path + from ..utils.data.nghgi import ( + build_nghgi_world_co2_timeseries, + load_world_co2_lulucf, + ) rcb_config = config["targets"]["rcbs"] rcb_data_params = rcb_config.get("data_parameters", {}) rcb_adjustments_raw = rcb_data_params.get("adjustments", {}) adjustments_config = AdjustmentsConfig.model_validate(rcb_adjustments_raw) - nghgi_ts, _bunker_ts, _splice_year = _load_shared_timeseries( - adjustments_config, - orch.data_dir, - source_id=source_id, - verbose=True, - output_dir=orch.output_dir, + nghgi_ts, _ = load_world_co2_lulucf( + _resolve_template_path( + adjustments_config.lulucf_nghgi.path, + source_id, + orch.data_dir, + orch.output_dir, + ) ) world_emiss["co2"] = build_nghgi_world_co2_timeseries( @@ -508,12 +512,12 @@ def run_rcb_preprocessing( ) # Process and save RCB data — always pass fossil (co2-ffi) emissions; - # for total CO2, also pass BM LULUCF for rebase inside load_and_process_rcbs + # for total CO2, also pass NGHGI LULUCF for rebase inside load_and_process_rcbs _process_and_save_rcbs( orch, config, world_fossil_emissions=world_emiss["co2-ffi"], - actual_bm_lulucf_emissions=world_emiss.get("co2-lulucf"), + world_nghgi_lulucf_emissions=world_emiss.get("co2-lulucf"), ) @@ -564,7 +568,7 @@ def _process_and_save_rcbs( orch: DataPreprocessor, config: dict[str, Any], world_fossil_emissions: pd.DataFrame, - actual_bm_lulucf_emissions: pd.DataFrame | None = None, + world_nghgi_lulucf_emissions: pd.DataFrame | None = None, ) -> None: """Process RCB data and save to CSV. @@ -575,7 +579,8 @@ def _process_and_save_rcbs( orch: Orchestrator instance config: Configuration dict world_fossil_emissions: Fossil world emissions, co2-ffi (e.g. PRIMAP) - actual_bm_lulucf_emissions: BM LULUCF world emissions for co2 rebase + world_nghgi_lulucf_emissions: Observed NGHGI LULUCF world emissions + for the co2 rebase """ from ..config.models import AdjustmentsConfig from ..preprocessing.rcbs import load_and_process_rcbs @@ -598,7 +603,7 @@ def _process_and_save_rcbs( adjustments_config=adjustments_config, data_dir=orch.data_dir, source_id=orch.source_id, - actual_bm_lulucf_emissions=actual_bm_lulucf_emissions, + world_nghgi_lulucf_emissions=world_nghgi_lulucf_emissions, verbose=False, output_dir=orch.output_dir, ) diff --git a/src/fair_shares/library/preprocessing/rcbs.py b/src/fair_shares/library/preprocessing/rcbs.py index 4a5ed55..637198d 100644 --- a/src/fair_shares/library/preprocessing/rcbs.py +++ b/src/fair_shares/library/preprocessing/rcbs.py @@ -10,8 +10,9 @@ required because the LULUCF decomposition extends to net-zero (no observational data exists for the future). Adjusted for baseline year by subtracting the 2020-to-base prefix. -- **co2**: uses the pre-computed convention gap (BM -> NGHGI) from - notebook 104, plus actual BM LULUCF for rebase. +- **co2**: the rebase adds observed NGHGI LULUCF for 2020 to the year before + the baseline, and the pre-computed convention gap (BM -> NGHGI) from + notebook 104 runs from the baseline year to net zero. NZ years and convention gap scalars are pre-computed by notebook 104 from the scenario data (currently Gidden et al. AR6 reanalysis) and saved as @@ -44,7 +45,6 @@ from fair_shares.library.utils.data.nghgi import ( compute_bunker_deduction, load_bunker_timeseries, - load_world_co2_lulucf, ) from fair_shares.library.utils.data.rcb import ( DEFAULT_REBASE_FILL_MAX_YEARS, @@ -72,67 +72,6 @@ def _resolve_template_path( return resolve_source_path(path_str, data_dir=data_dir, output_dir=output_dir) -def _load_shared_timeseries( - adjustments: AdjustmentsConfig, - data_dir: Path | str | None = None, - source_id: str | None = None, - verbose: bool = True, - load_nghgi: bool = True, - output_dir: Path | str | None = None, -) -> tuple[pd.DataFrame | None, pd.DataFrame, int | None]: - """Load scenario-invariant timeseries data (bunkers, and optionally NGHGI LULUCF). - - Called once before the scenario loop to avoid repeated file reads. - - NGHGI LULUCF is only needed for total CO2 (co2) — not for co2-ffi. - Callers should set ``load_nghgi=False`` when processing co2-ffi. - - Parameters - ---------- - adjustments : AdjustmentsConfig - Adjustment configuration with paths. - data_dir : Path or None - Directory holding input data. Defaults to the resolved data directory. - source_id : str or None - Source ID for resolving intermediate paths with {source_id} template. - verbose : bool - Print progress. - load_nghgi : bool - Whether to load NGHGI LULUCF world timeseries. Only needed for - total CO2 emission categories. Default True for backwards compat. - output_dir : Path or None - Directory holding pipeline products. Defaults to the resolved output - directory. - - Returns - ------- - tuple[pd.DataFrame | None, pd.DataFrame, int | None] - (nghgi_ts, bunker_ts, splice_year) — nghgi_ts and splice_year - are None when load_nghgi=False. - """ - nghgi_ts = None - splice_year = None - - if load_nghgi: - nghgi_path = _resolve_template_path( - adjustments.lulucf_nghgi.path, source_id, data_dir, output_dir - ) - if verbose: - print(f" Loading NGHGI LULUCF from: {nghgi_path}") - nghgi_ts, splice_year = load_world_co2_lulucf(nghgi_path) - if verbose: - print(f" NGHGI splice year (from data): {splice_year}") - - bunker_path = _resolve_template_path( - adjustments.bunkers.path, source_id, data_dir, output_dir - ) - if verbose: - print(f" Loading bunker timeseries from: {bunker_path}") - bunker_ts = load_bunker_timeseries(bunker_path) - - return nghgi_ts, bunker_ts, splice_year - - def _load_rcb_scenario_adjustments( intermediate_dir: Path, verbose: bool = True, @@ -151,8 +90,9 @@ def _load_rcb_scenario_adjustments( ------- dict[str, dict] Mapping of scenario set key (e.g., "1.5p50") to adjustment dict with keys: - ``bm_lulucf_cumulative_median``, ``convention_gap_median``, - ``nz_year_median``, ``n_scenarios`` + ``bm_lulucf_cumulative_median``, ``convention_gap_median_from`` + (one median gap per RCB baseline year), ``nz_year_median``, + ``n_scenarios`` Raises ------ @@ -175,7 +115,8 @@ def _load_rcb_scenario_adjustments( print( f" {cat}: NZ_med={vals['nz_year_median']}, " f"BM_LULUCF={vals['bm_lulucf_cumulative_median']:.0f} Mt, " - f"gap={vals['convention_gap_median']:.0f} Mt, " + f"gap from baseline year (Mt)=" + f"{vals.get('convention_gap_median_from')}, " f"n={vals['n_scenarios']}" ) @@ -199,7 +140,8 @@ def _resolve_adjustment_scalars( (median of per-scenario cumulatives from 2020 to each scenario's NZ). When ``baseline_year`` > 2020, the 2020-to-base prefix is subtracted from the median timeseries. - For co2: uses the pre-computed convention gap from notebook 104. + For co2: uses the pre-computed convention gap from ``baseline_year`` to + NZ (``convention_gap_median_from[baseline_year]``) from notebook 104. Returns values that can be added directly to the budget: - **bunkers**: always positive (cumulative emissions); caller negates @@ -210,7 +152,8 @@ def _resolve_adjustment_scalars( scenario : str Scenario set key (e.g. "1.5p50" or "peak-warming-1.7C") baseline_year : int - RCB source baseline year — LULUCF integration starts here + RCB source baseline year — the LULUCF decomposition (co2-ffi) and + the convention gap (co2) start here net_zero_year : int Category-level NZ year for bunker and LULUCF integration bunker_ts : pd.DataFrame @@ -239,7 +182,8 @@ def _resolve_adjustment_scalars( Raises ------ DataLoadingError - If ``rcb_adjustments`` has no entry for ``scenario`` + If ``rcb_adjustments`` has no entry for ``scenario``, or, for co2, + no convention gap from ``baseline_year`` """ if scenario not in rcb_adjustments: raise DataLoadingError( @@ -253,13 +197,19 @@ def _resolve_adjustment_scalars( lulucf_nghgi_correction_mt = 0.0 if emission_category == "co2": - # NGHGI-vs-BM convention correction from 2020 to NZ (Weber 2026). - # The rebase uses BM LULUCF; this re-expresses the result against - # national-inventory accounting. Budget still contains FFI + LULUCF. - lulucf_nghgi_correction_mt = adj["convention_gap_median"] + # NGHGI-minus-BM convention gap from the baseline year to NZ (Weber + # 2026). The rebase adds observed NGHGI LULUCF for the years before it. + gaps_from = adj.get("convention_gap_median_from") or {} + if baseline_year not in gaps_from: + raise DataLoadingError( + f"No convention gap from baseline year {baseline_year} for " + f"'{scenario}' (available baseline years: {sorted(gaps_from)}). " + "Re-run notebook 104 (AR6 scenario preprocessing)." + ) + lulucf_nghgi_correction_mt = gaps_from[baseline_year] if lulucf_nghgi_correction_mt == 0.0: warnings.warn( - f"convention_gap_median is 0.0 for scenario '{scenario}' — " + f"The convention gap is 0.0 for scenario '{scenario}' — " f"this likely means notebook 104 ran before NGHGI data was " f"preprocessed. Re-run the preprocessing pipeline: " f"notebooks 105/107 first, then 104.", @@ -316,7 +266,7 @@ def load_and_process_rcbs( adjustments_config: AdjustmentsConfig, data_dir: Path | str | None = None, source_id: str | None = None, - actual_bm_lulucf_emissions: pd.DataFrame | None = None, + world_nghgi_lulucf_emissions: pd.DataFrame | None = None, verbose: bool = True, output_dir: Path | str | None = None, ) -> pd.DataFrame: @@ -340,9 +290,10 @@ def load_and_process_rcbs( Directory holding input data. Defaults to the resolved data directory. source_id : str or None, optional Source ID for resolving intermediate paths with {source_id} template. - actual_bm_lulucf_emissions : pd.DataFrame or None, optional - Actual BM LULUCF emissions for co2 rebase. Required when - emission_category is "co2". + world_nghgi_lulucf_emissions : pd.DataFrame or None, optional + Observed world LULUCF CO2 emissions in the national-inventory (NGHGI) + convention, for the co2 rebase. Required when emission_category is + "co2". verbose : bool, optional Print processing details output_dir : Path or None, optional @@ -383,15 +334,13 @@ def load_and_process_rcbs( # Ensure world emissions has string year columns world_fossil_emissions = ensure_string_year_columns(world_fossil_emissions) - # Pre-load scenario-invariant timeseries (bunkers always; NGHGI only for total CO2) - _nghgi_ts, bunker_ts, _splice_year = _load_shared_timeseries( - adjustments_config, - data_dir, - source_id=source_id, - verbose=verbose, - load_nghgi=(emission_category == "co2"), - output_dir=output_dir, + # Pre-load the scenario-invariant bunker timeseries + bunker_path = _resolve_template_path( + adjustments_config.bunkers.path, source_id, data_dir, output_dir ) + if verbose: + print(f" Loading bunker timeseries from: {bunker_path}") + bunker_ts = load_bunker_timeseries(bunker_path) # Load pre-computed RCB adjustment scalars from notebook 104 if not source_id: @@ -430,6 +379,7 @@ def load_and_process_rcbs( # Create a list to store all RCB records rcb_records = [] + skipped_sources = [] # Process each source for source_key, source_data in rcb_data["rcb_data"].items(): @@ -472,13 +422,13 @@ def load_and_process_rcbs( "international bunker emissions", source_key, ) - rebase_lulucf = actual_bm_lulucf_emissions - if emission_category == "co2" and actual_bm_lulucf_emissions is not None: + rebase_lulucf = world_nghgi_lulucf_emissions + if emission_category == "co2" and world_nghgi_lulucf_emissions is not None: rebase_lulucf = fill_rebase_years( - actual_bm_lulucf_emissions, + world_nghgi_lulucf_emissions, baseline_year, rebase_fill_max_years, - "world LULUCF CO2 emissions", + "world NGHGI LULUCF CO2 emissions", source_key, ) @@ -489,14 +439,9 @@ def load_and_process_rcbs( if emission_category == "co2" and rebase_lulucf is not None: missing_years += missing_rebase_years(baseline_year, rebase_lulucf) if missing_years: - warnings.warn( - f"Skipping RCB source '{source_key}' (baseline year " - f"{baseline_year}): the emissions data lack " - f"{sorted(set(missing_years))}, so the budget cannot be rebased " - f"to 2020. The rebase fills at most {rebase_fill_max_years} " - f"year(s) (rebase_fill_max_years). Use an emissions source that " - f"covers 2020-{baseline_year - 1}.", - stacklevel=2, + skipped_sources.append( + f"'{source_key}' (baseline {baseline_year}, data lack " + f"{sorted(set(missing_years))})" ) continue @@ -556,7 +501,7 @@ def load_and_process_rcbs( bunkers_deduction_mt=bunkers_mt, lulucf_future_deduction_mt=lulucf_future_mt, lulucf_nghgi_correction_mt=lulucf_nghgi_mt, - actual_bm_lulucf_emissions=rebase_lulucf, + world_nghgi_lulucf_emissions=rebase_lulucf, target_baseline_year=2020, source_name=source_key, scenario=scenario, @@ -587,6 +532,16 @@ def load_and_process_rcbs( rcb_df = pd.DataFrame(rcb_records) + # This step processes every source in rcbs.yaml and does not know which + # one an allocation requests, so it reports the skipped sources once. + if skipped_sources: + warnings.warn( + f"RCB sources left out, no rebase to 2020 with at most " + f"{rebase_fill_max_years} filled year(s) (rebase_fill_max_years): " + f"{'; '.join(skipped_sources)}.", + stacklevel=2, + ) + if verbose: print("\nProcessed RCB data:") print(rcb_df.to_string(index=False)) diff --git a/src/fair_shares/library/utils/data/nghgi.py b/src/fair_shares/library/utils/data/nghgi.py index bb4d811..4265ead 100644 --- a/src/fair_shares/library/utils/data/nghgi.py +++ b/src/fair_shares/library/utils/data/nghgi.py @@ -11,7 +11,8 @@ - Deductions returned as positive floats (calling code negates as needed) Data structure notes: -- NGHGI LULUCF file: CSV produced by notebook 107 (Melo v3.1) +- NGHGI LULUCF file: CSV produced by notebook 107 from the active LULUCF + source (Melo et al., v3.1.1 or v4.0.0) - Bunker file: CSV produced by notebook 108 from the active bunker source - AR6 category constants: YAML produced by notebook 104 (scenario preprocessing) """ @@ -29,7 +30,8 @@ def load_world_co2_lulucf(path: str | Path) -> tuple[pd.DataFrame, int]: """Load world-total NGHGI LULUCF CO2 timeseries from notebook-produced CSV. Reads the world-total NGHGI-reported LULUCF CO2 values produced by - notebook 107 (Melo v3.1). The CSV has a single row with a "source" index + notebook 107 from the active LULUCF source (Melo et al., v3.1.1 or + v4.0.0). The CSV has a single row with a "source" index and string year columns. Values are in MtCO2/yr (negative = net sink). The splice year (last year of NGHGI data) is derived dynamically from the @@ -232,7 +234,7 @@ def build_nghgi_world_co2_timeseries( per-year world CO2 = fossil - bunkers + LULUCF. The world CO2-FFI series already excludes international bunkers, so the result is fossil + LULUCF, where LULUCF uses: - - 2000 onwards: NGHGI LULUCF (e.g. Melo v3.1) + - 2000 onwards: NGHGI LULUCF (e.g. Melo et al.) - Pre-2000: NaN (no fallback — NGHGI coverage only) No NGHGI/BM splicing is performed. Years outside NGHGI coverage are NaN. diff --git a/src/fair_shares/library/utils/data/rcb.py b/src/fair_shares/library/utils/data/rcb.py index 20c52e2..fbe0f36 100644 --- a/src/fair_shares/library/utils/data/rcb.py +++ b/src/fair_shares/library/utils/data/rcb.py @@ -116,6 +116,66 @@ def net_zero_year(co2_emissions: pd.Series) -> int | None: return None +def _sum_years(series: pd.Series, first_year: int, last_year: int) -> float: + """Sum the years from ``first_year`` to ``last_year`` that ``series`` holds.""" + years = [str(y) for y in range(first_year, last_year + 1) if str(y) in series.index] + return float(series[years].sum()) if years else 0.0 + + +def convention_gap_from_baseline( + nghgi_lulucf: pd.Series, + bm_direct: pd.Series, + indirect: pd.Series, + baseline_year: int, + nz_year: int, + splice_year: int, +) -> float: + """ + Return the NGHGI-minus-BM LULUCF gap of one scenario from the budget baseline. + + The gap converts a budget in the bookkeeping-model (BM) convention to the + national-inventory (NGHGI) convention. It covers the years that the + published budget covers: the baseline year to the net-zero year of the + scenario (Weber et al. 2026, Eqs. 2-3). The years before the baseline are + not part of it; the rebase adds observed NGHGI LULUCF for those years. + + - Years up to ``splice_year``: observed NGHGI LULUCF minus the scenario + BM LULUCF (AFOLU|Direct). + - Years after ``splice_year``: the scenario indirect flux (AFOLU|Indirect), + because the direct flux cancels in the difference. + + Parameters + ---------- + nghgi_lulucf : pd.Series + Observed world NGHGI LULUCF CO2, indexed by year as a string + bm_direct : pd.Series + AFOLU|Direct of the scenario, indexed by year as a string + indirect : pd.Series + AFOLU|Indirect of the scenario, indexed by year as a string + baseline_year : int + First year of the published budget + nz_year : int + Net-zero year of the scenario (last year of the gap) + splice_year : int + Last observed year of ``nghgi_lulucf`` + + Returns + ------- + float + The cumulative gap from ``baseline_year`` to ``nz_year``. Zero when + the net-zero year is before the baseline year. A year that a series + does not hold adds nothing. + """ + if nz_year < baseline_year: + return 0.0 + observed_end = min(splice_year, nz_year) + observed_gap = _sum_years(nghgi_lulucf, baseline_year, observed_end) - _sum_years( + bm_direct, baseline_year, observed_end + ) + scenario_gap = _sum_years(indirect, max(baseline_year, splice_year + 1), nz_year) + return observed_gap + scenario_gap + + def rcb_scenario_set_key(source: str, label: str, selection: str) -> str: """ Name the scenario set behind the deductions of one budget. @@ -522,7 +582,7 @@ def process_rcb_to_2020_baseline( rcb_baseline_year: int, emission_category: str, world_co2_ffi_emissions: pd.DataFrame, - actual_bm_lulucf_emissions: pd.DataFrame | None = None, + world_nghgi_lulucf_emissions: pd.DataFrame | None = None, world_bunker_emissions: pd.DataFrame | None = None, bunkers_deduction_mt: float = 0.0, lulucf_future_deduction_mt: float = 0.0, @@ -553,17 +613,18 @@ def process_rcb_to_2020_baseline( ``lulucf_future_deduction_mt`` subtracts expected future (base→NZ) BM LULUCF, converting the published total-CO2 RCB to an FFI-only RCB. ``lulucf_nghgi_correction_mt`` is not used for this category. - - **co2**: Rebase uses fossil CO2 + actual bookkeeping-model LULUCF. - ``lulucf_nghgi_correction_mt`` applies the NGHGI-vs-BM convention gap - from Weber et al. (2026) to re-express the budget against national- - inventory accounting. ``lulucf_future_deduction_mt`` is not used for - this category; the budget retains both FFI and LULUCF. + - **co2**: Rebase uses fossil CO2 + observed LULUCF in the national- + inventory (NGHGI) convention. ``lulucf_nghgi_correction_mt`` applies + the NGHGI-vs-BM convention gap from the baseline year to net zero + (Weber et al. 2026), which re-expresses the published budget against + national-inventory accounting. ``lulucf_future_deduction_mt`` is not + used for this category; the budget retains both FFI and LULUCF. The calculation follows these steps: 1. Convert RCB from source unit to Mt * CO2e 2. If baseline_year > 2020: Add actual emissions from 2020 to (baseline_year - 1) — fossil + bunkers for co2-ffi, fossil + bunkers - + BM LULUCF for co2 + + NGHGI LULUCF for co2 3. Subtract bunkers deduction from 2020 to net zero (always reduces budget) 4. Apply LULUCF deduction (sign-ready from caller) @@ -574,8 +635,8 @@ def process_rcb_to_2020_baseline( (increases fossil budget), capped at 0 if caller applies a precautionary rule. Zero for co2. - lulucf_nghgi_correction_mt: sign-ready from caller (added directly). - For co2: the NGHGI-vs-BM convention gap from Weber et al. (2026), - typically negative. Zero for co2-ffi. + For co2: the NGHGI-vs-BM convention gap from the baseline year to + net zero (Weber et al. 2026), typically negative. Zero for co2-ffi. Parameters ---------- @@ -586,14 +647,15 @@ def process_rcb_to_2020_baseline( rcb_baseline_year : int The year from which the RCB is calculated (must be >= 2020) emission_category : str - Emission category: "co2-ffi" or "co2". Controls whether BM LULUCF - is included in the rebase. + Emission category: "co2-ffi" or "co2". Controls whether NGHGI + LULUCF is included in the rebase. world_co2_ffi_emissions : pd.DataFrame World-level CO2-FFI emissions timeseries with year columns (in Mt * CO2e). Excludes international bunkers. - actual_bm_lulucf_emissions : pd.DataFrame or None, optional - Actual bookkeeping-model LULUCF CO2 emissions (e.g. PRIMAP), with year - columns (in Mt * CO2e). Used ONLY for the co2 rebase (default: None). + world_nghgi_lulucf_emissions : pd.DataFrame or None, optional + Observed world LULUCF CO2 emissions in the national-inventory (NGHGI) + convention (e.g. the Melo et al. world row), with year columns + (in Mt * CO2e). Used ONLY for the co2 rebase (default: None). world_bunker_emissions : pd.DataFrame or None, optional International bunker CO2 emissions timeseries with year columns (in Mt * CO2e). Required when baseline_year > 2020 and @@ -606,9 +668,9 @@ def process_rcb_to_2020_baseline( sign-ready (default: 0.0). Non-zero for co2-ffi only, where it subtracts LULUCF to convert a total-CO2 RCB to FFI-only. lulucf_nghgi_correction_mt : float, optional - NGHGI-vs-BM convention correction in Mt * CO2e, sign-ready - (default: 0.0). Non-zero for co2 only, where it re-expresses the - budget from bookkeeping-model to NGHGI accounting. + NGHGI-vs-BM convention gap from the baseline year to net zero in + Mt * CO2e, sign-ready (default: 0.0). Non-zero for co2 only, where it + re-expresses the budget from bookkeeping-model to NGHGI accounting. target_baseline_year : int, optional Target baseline year for standardization (default: 2020) source_name : str, optional @@ -628,12 +690,12 @@ def process_rcb_to_2020_baseline( - 'baseline_year': Original baseline year - 'rebase_total_mt': Emissions added to rebase from source year to 2020 (positive, Mt * CO2e); fossil + bunkers for co2-ffi, fossil + bunkers - + actual BM LULUCF for co2 + + observed NGHGI LULUCF for co2 - 'rebase_fossil_mt': Fossil-only component of rebase (Mt * CO2e) - 'rebase_bunkers_mt': International bunker component of rebase (Mt * CO2e) - - 'rebase_lulucf_mt': Actual BM LULUCF component of rebase (Mt * CO2e); - only non-zero for co2 + - 'rebase_lulucf_mt': Observed NGHGI LULUCF component of rebase + (Mt * CO2e); only non-zero for co2 - 'deduction_bunkers_mt': Bunker fuel deduction (negative, Mt * CO2e) - 'deduction_lulucf_future_mt': projected-LULUCF deduction applied to convert total-CO2 → FFI-only. Non-zero for co2-ffi, zero for co2. @@ -710,13 +772,13 @@ def process_rcb_to_2020_baseline( f"world_bunker_emissions." ) - # BM LULUCF rebase — only for co2 (total CO2 needs LULUCF in rebase) + # NGHGI LULUCF rebase — only for co2 (total CO2 needs LULUCF in rebase) # For co2-ffi, LULUCF is omitted because it cancels with the LULUCF # decomposition rebase_lulucf_mt = 0.0 - if emission_category == "co2" and actual_bm_lulucf_emissions is not None: + if emission_category == "co2" and world_nghgi_lulucf_emissions is not None: missing_years = missing_rebase_years( - rcb_baseline_year, actual_bm_lulucf_emissions, target_baseline_year + rcb_baseline_year, world_nghgi_lulucf_emissions, target_baseline_year ) if missing_years: raise DataProcessingError( @@ -726,7 +788,9 @@ def process_rcb_to_2020_baseline( f"{target_baseline_year}-{rcb_baseline_year - 1}, but the " f"emissions data lack {missing_years}." ) - rebase_lulucf_mt = actual_bm_lulucf_emissions[year_cols].sum(axis=1).iloc[0] + rebase_lulucf_mt = ( + world_nghgi_lulucf_emissions[year_cols].sum(axis=1).iloc[0] + ) rebase_total_mt = rebase_fossil_mt + rebase_bunkers_mt + rebase_lulucf_mt @@ -747,7 +811,7 @@ def process_rcb_to_2020_baseline( ) if emission_category == "co2": print( - f" Adding actual BM LULUCF emissions " + f" Adding observed NGHGI LULUCF emissions " f"({target_baseline_year}-{rcb_baseline_year - 1}): " f"+{rebase_lulucf_mt:.1f} Mt * CO2e" ) @@ -802,7 +866,7 @@ def process_rcb_to_2020_baseline( ) if correction_lulucf_nghgi_mt != 0: print( - f" LULUCF NGHGI correction: " + f" LULUCF NGHGI correction ({rcb_baseline_year}-NZ): " f"{correction_lulucf_nghgi_mt:.1f} Mt * CO2e" ) print( diff --git a/tests/unit/test_nghgi_corrections.py b/tests/unit/test_nghgi_corrections.py index 1f69945..859c145 100644 --- a/tests/unit/test_nghgi_corrections.py +++ b/tests/unit/test_nghgi_corrections.py @@ -446,20 +446,20 @@ def test_output_dict_has_required_keys(self, ffi_emissions): # --------------------------------------------------------------------------- -# process_rcb_to_2020_baseline — co2 category with actual BM LULUCF rebase +# process_rcb_to_2020_baseline — co2 category with NGHGI LULUCF rebase # --------------------------------------------------------------------------- class TestProcessRcbTo2020BaselineWithCo2Rebase: - """Tests for co2 emission category including actual BM LULUCF in rebase.""" + """Tests for co2 emission category including observed NGHGI LULUCF in rebase.""" @pytest.fixture def ffi_emissions(self) -> pd.DataFrame: return _make_ffi_emissions({2020: 9000.0, 2021: 9100.0, 2022: 9200.0}) @pytest.fixture - def actual_bm_lulucf(self) -> pd.DataFrame: - """Actual BM LULUCF emissions: 3000 MtCO2/yr for 2020-2022.""" + def nghgi_lulucf(self) -> pd.DataFrame: + """Observed NGHGI LULUCF emissions: 3000 to 3200 MtCO2/yr for 2020-2022.""" index = pd.MultiIndex.from_tuples( [("World", "Mt * CO2e", "co2-lulucf")], names=["iso3c", "unit", "emission-category"], @@ -467,15 +467,15 @@ def actual_bm_lulucf(self) -> pd.DataFrame: data = {"2020": [3000.0], "2021": [3100.0], "2022": [3200.0]} return pd.DataFrame(data, index=index) - def test_co2_rebase_includes_bm_lulucf(self, ffi_emissions, actual_bm_lulucf): - """co2 rebase includes fossil + actual BM LULUCF.""" + def test_co2_rebase_includes_nghgi_lulucf(self, ffi_emissions, nghgi_lulucf): + """co2 rebase includes fossil + observed NGHGI LULUCF.""" result = process_rcb_to_2020_baseline( rcb_value=400.0, rcb_unit="Gt * CO2", rcb_baseline_year=2023, emission_category="co2", world_co2_ffi_emissions=ffi_emissions, - actual_bm_lulucf_emissions=actual_bm_lulucf, + world_nghgi_lulucf_emissions=nghgi_lulucf, bunkers_deduction_mt=0.0, lulucf_future_deduction_mt=0.0, verbose=False, @@ -488,15 +488,15 @@ def test_co2_rebase_includes_bm_lulucf(self, ffi_emissions, actual_bm_lulucf): assert result["rebase_lulucf_mt"] == round(expected_lulucf) assert result["rebase_total_mt"] == round(expected_total_shift) - def test_co2ffi_rebase_excludes_bm_lulucf(self, ffi_emissions, actual_bm_lulucf): - """co2-ffi rebase uses fossil only, even when actual BM LULUCF is provided.""" + def test_co2ffi_rebase_excludes_nghgi_lulucf(self, ffi_emissions, nghgi_lulucf): + """co2-ffi rebase uses fossil only, even when NGHGI LULUCF is provided.""" result_ffi = process_rcb_to_2020_baseline( rcb_value=400.0, rcb_unit="Gt * CO2", rcb_baseline_year=2023, emission_category="co2-ffi", world_co2_ffi_emissions=ffi_emissions, - actual_bm_lulucf_emissions=actual_bm_lulucf, + world_nghgi_lulucf_emissions=nghgi_lulucf, verbose=False, ) assert result_ffi["rebase_lulucf_mt"] == 0 @@ -504,7 +504,7 @@ def test_co2ffi_rebase_excludes_bm_lulucf(self, ffi_emissions, actual_bm_lulucf) assert result_ffi["rebase_fossil_mt"] == round(expected_fossil) assert result_ffi["rebase_total_mt"] == round(expected_fossil) - def test_co2_rebase_larger_than_ffi_only(self, ffi_emissions, actual_bm_lulucf): + def test_co2_rebase_larger_than_ffi_only(self, ffi_emissions, nghgi_lulucf): """co2 rebase (fossil + LULUCF) produces larger rcb_2020_nghgi_mt than co2-ffi.""" result_ffi = process_rcb_to_2020_baseline( rcb_value=400.0, @@ -520,13 +520,13 @@ def test_co2_rebase_larger_than_ffi_only(self, ffi_emissions, actual_bm_lulucf): rcb_baseline_year=2023, emission_category="co2", world_co2_ffi_emissions=ffi_emissions, - actual_bm_lulucf_emissions=actual_bm_lulucf, + world_nghgi_lulucf_emissions=nghgi_lulucf, verbose=False, ) assert result_co2["rcb_2020_nghgi_mt"] > result_ffi["rcb_2020_nghgi_mt"] def test_baseline_2020_no_rebase_regardless_of_category( - self, ffi_emissions, actual_bm_lulucf + self, ffi_emissions, nghgi_lulucf ): """When baseline == 2020, no rebase needed regardless of emission category.""" result = process_rcb_to_2020_baseline( @@ -535,14 +535,14 @@ def test_baseline_2020_no_rebase_regardless_of_category( rcb_baseline_year=2020, emission_category="co2", world_co2_ffi_emissions=ffi_emissions, - actual_bm_lulucf_emissions=actual_bm_lulucf, + world_nghgi_lulucf_emissions=nghgi_lulucf, verbose=False, ) assert result["rebase_fossil_mt"] == 0 assert result["rebase_lulucf_mt"] == 0 assert result["rebase_total_mt"] == 0 - def test_provenance_fields_present(self, ffi_emissions, actual_bm_lulucf): + def test_provenance_fields_present(self, ffi_emissions, nghgi_lulucf): """All provenance fields must be present in output.""" result = process_rcb_to_2020_baseline( rcb_value=400.0, @@ -550,7 +550,7 @@ def test_provenance_fields_present(self, ffi_emissions, actual_bm_lulucf): rcb_baseline_year=2023, emission_category="co2", world_co2_ffi_emissions=ffi_emissions, - actual_bm_lulucf_emissions=actual_bm_lulucf, + world_nghgi_lulucf_emissions=nghgi_lulucf, verbose=False, ) assert "rebase_fossil_mt" in result @@ -672,7 +672,7 @@ def rcb_adj_sink(self) -> dict[str, dict]: return { "1.5p50": { "bm_lulucf_cumulative_median": -3100.0, - "convention_gap_median": -5000.0, + "convention_gap_median_from": {2020: -5000.0}, "nz_year_median": 2050, "n_scenarios": 10, } @@ -684,7 +684,7 @@ def rcb_adj_source(self) -> dict[str, dict]: return { "1.5p50": { "bm_lulucf_cumulative_median": 3100.0, - "convention_gap_median": -5000.0, + "convention_gap_median_from": {2020: -5000.0}, "nz_year_median": 2050, "n_scenarios": 10, } @@ -842,7 +842,7 @@ def rcb_adj(self) -> dict[str, dict]: return { "1.5p50": { "bm_lulucf_cumulative_median": 7750.0, - "convention_gap_median": -2000.0, + "convention_gap_median_from": {2020: -2000.0}, "nz_year_median": 2050, "n_scenarios": 10, } From 58226c5b9aa55ca15a6043496e66716c2ab4546c Mon Sep 17 00:00:00 2001 From: Setu Pelz Date: Thu, 1 Oct 2026 16:02:20 +0200 Subject: [PATCH 4/7] feat: run gcb-2025 with melo-2026-v4 for co2; order the LULUCF step before the scenario step Allows the co2 category with a co2-ffi-only emissions source (gcb-2025) and an active LULUCF source (melo-2026-v4). Notebook 107 derives co2 as co2-ffi plus national-inventory LULUCF and skips non-CO2 categories the source cannot supply. The scenario rule now depends on notebook 107, so notebook 104 no longer writes a zero convention gap. process_rcb_to_2020_baseline raises an error for a co2 budget with a baseline after 2020 when it gets no inventory LULUCF series. --- CHANGELOG.md | 2 + Snakefile | 12 +- docs/science/other-operations.md | 2 +- .../107_derive_nghgi_categories_melo-2026.py | 151 +++++++++++------- src/fair_shares/library/config/models.py | 16 +- src/fair_shares/library/utils/data/rcb.py | 10 +- .../test_gcb_2025_melo_v4_co2_smoke.py | 78 +++++++++ 7 files changed, 206 insertions(+), 65 deletions(-) create mode 100644 tests/integration/test_gcb_2025_melo_v4_co2_smoke.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 8239c41..f448fd0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions: [Sem - Global Carbon Budget 2025 national fossil CO2 (1850-2024) as the opt-in emissions source `gcb-2025`, `co2-ffi` only. Its world row excludes international bunkers and the 1991 Kuwaiti oil fires, and its runs take bunkers from the same file. The pipeline asks an emissions source only for the categories it declares. `primap-202503` stays the default. - RCB sources `forster_2026` (IGCC 2025, from 2026) and `ar6_wg1_2021` (AR6 WGI Table SPM.2, from 2020), each with 1.5, 1.7 and 2°C budgets. Their deductions use AR6 scenarios in a peak-warming band (`scenario_selection: peak-warming-band` in `rcbs.yaml`). The band keeps only scenarios that reach net-zero CO2 by 2100, because a remaining carbon budget runs to net-zero CO2 (14, 111 and 37 of 14, 131 and 69 scenarios at 1.5, 1.7 and 2°C). A budget label without a scenario set and an empty band raise an error. A rebase with missing emission years raises an error, and the pipeline skips that source with a warning. The band rule leaves the budgets of the existing sources unchanged; the bunker rebase under "Fixed" changes them. - `rebase_fill_max_years` in `rcbs.yaml` (default 1). When a world series of the rebase (fossil CO2, bunkers, LULUCF) ends before the year before the budget baseline, each later year takes the last observed value, up to this number of years, with a warning that names the source, the series, the years and the value. The fill is a placeholder until observed data are published. With `gcb-2025` (observed to 2024) `forster_2026` rebases with 2025 filled. With PRIMAP (observed to 2023) it needs two years and stays skipped. 0 turns the fill off. +- Emission category `co2` with a `co2-ffi`-only emissions source and an active LULUCF source, for example `gcb-2025` with `melo-2026-v4` and target `rcbs`. Notebook 107 derives `co2` as `co2-ffi` plus national-inventory LULUCF and skips the non-CO2 categories that such a source cannot supply. Without a LULUCF source the configuration still raises an error. - World Bank WDI Gini index (`SI.POV.GINI`) as a Gini source, with `analysis/gini_source_comparison.py` reporting the coverage and value differences against WIID. ### Changed @@ -45,6 +46,7 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions: [Sem - `compute_bunker_deduction` treated 2023 as the last observed bunker year for every source. It now reads the last year from the bunker data, so `gcb-2025` runs use the observed 2024 value and extrapolate the 2024 rate. Runs with `gcb-2024` bunkers give the same deduction as before. - `calculate_budget_from_rcb` summed only the years present when the allocation year preceded the first year of the world emissions series (for example `co2`, which starts in 2000, with allocation year 1990). It now raises an error that names the missing years and the first available year. - `calculate_budget_from_rcb` raised no error when the allocation year was after 2020 and the world emissions ended earlier, and summed only the years present. It now raises an error that names the missing years and the last available year. A year with a missing value counts as missing in this check, in the pre-2020 check and in the rebase to 2020, which earlier summed NaN-padded years as zero. +- For `co2`, the pipeline could run the scenario notebook (104) before the LULUCF notebook (107) and then write a zero convention gap. The scenario rule now depends on notebook 107. `process_rcb_to_2020_baseline` raises an error for a `co2` budget with a baseline after 2020 when it receives no inventory LULUCF series; it used a zero LULUCF rebase term before. A budget with baseline 2020 needs no series. - `import fair_shares.library.config` and `import fair_shares.library.config.models` failed with a circular import when they were the first import in a process. - A budget label without a numeric temperature under the peak-warming band rule raised a bare `ValueError`; it now raises a `ConfigurationError` that names the label. `rebase_fill_max_years` must be a non-negative integer. - The Gini-adjusted approaches ignored Gini entirely when `capability_reference_year` named a year before `allocation_year`: the capability snapshot was read from the unfiltered inputs without the adjustment, on both the budget and pathway side. Results on that parameterisation change — on the standard sources, China's share of a `per-capita-adjusted-gini-budget` allocation moves from 10.8% to 5.3% and India's from 23.2% to 28.4%. diff --git a/Snakefile b/Snakefile index 7402564..757fea2 100644 --- a/Snakefile +++ b/Snakefile @@ -162,6 +162,13 @@ if _needs_lulucf and active_lulucf_source is None: f"Example: --config ... active_lulucf_source=melo-2026" ) +# Historical series that the scenario rule declares as input. Notebook 107 +# derives co2 when the emissions source declares only co2-ffi. +if emission_category == "co2" and "co2" not in EMISSION_CATEGORIES: + _scenario_emissions_input = f"{OUTPUT_DIR}/intermediate/emissions/emiss_co2_nghgi_timeseries.csv" +else: + _scenario_emissions_input = f"{OUTPUT_DIR}/intermediate/emissions/emiss_{emission_category}_timeseries.csv" + # Resolve scenario source: per-target override → global default _scenario_source_key = ( _target_yaml.get("scenario_source") @@ -414,6 +421,7 @@ if _needs_lulucf: notebook=f"{OUTPUT_DIR}/notebooks/107_derive_nghgi_categories_{active_lulucf_source}.ipynb", nghgi_world=f"{OUTPUT_DIR}/intermediate/emissions/world_co2-lulucf_timeseries.csv", nghgi_metadata=f"{OUTPUT_DIR}/intermediate/emissions/lulucf_metadata.yaml", + nghgi_co2=f"{OUTPUT_DIR}/intermediate/emissions/emiss_co2_nghgi_timeseries.csv", shell: notebook_cmd("{input.notebook}", "{output.notebook}") @@ -485,7 +493,9 @@ if uses_scenarios: input: notebook=scenario_notebook, config=f"{OUTPUT_DIR}/config.yaml", - emissions_data=f"{OUTPUT_DIR}/intermediate/emissions/emiss_{emission_category}_timeseries.csv", + emissions_data=_scenario_emissions_input, + # Notebook 107 runs first: it writes the NGHGI series that 104 reads. + lulucf_notebook=(f"{OUTPUT_DIR}/notebooks/107_derive_nghgi_categories_{active_lulucf_source}.ipynb" if _needs_lulucf else []), output: notebook=scenario_nb_out, scenarios=f"{OUTPUT_DIR}/intermediate/scenarios/scenarios_{emission_category}_timeseries.csv", diff --git a/docs/science/other-operations.md b/docs/science/other-operations.md index 0708e19..5cf8097 100644 --- a/docs/science/other-operations.md +++ b/docs/science/other-operations.md @@ -266,7 +266,7 @@ $$ L_{\text{BM}}^{\text{capped}} = \max\!\left(0,\; \underset{i}{\text{median}}\left[\sum_{t=2020}^{t_{\text{nz},i}} L_{\text{BM},i}(t)\right] - \underset{i}{\text{median}}\left[L_{\text{BM},i}(t)\right]_{t=2020}^{\text{base}-1}\right) $$ -The LULUCF decomposition extends from the baseline year to net-zero. Thus we must use AR6 scenario pathways corresponding to the same climate category as the RCB (e.g., 1.5°C 50th percentile scenarios for a 1.5p50 budget). Each scenario's cumulative AFOLU|Direct is integrated from 2020 to its own net-zero year $t_{\text{nz},i}$, then the median across scenarios is taken (integrate per scenario, then median — consistent with the convention gap computation per Weber 2026). The pre-computed median cumulative is stored as `bm_lulucf_cumulative_median` in `rcb_scenario_adjustments.yaml`. When the RCB baseline year $\text{base} > 2020$, the 2020-to-base prefix is subtracted using the per-year median timeseries (accurate because historical BM LULUCF has negligible inter-scenario spread). When the result is negative (net sink), the cap zeros it out because the sink relies on uncertain future reforestation. Configurable via `precautionary_lulucf` in the adjustments config (default: `true`; set to `false` for sensitivity analysis). +The LULUCF decomposition extends from the baseline year to net-zero. Thus we must use AR6 scenario pathways corresponding to the same climate category as the RCB (e.g., 1.5°C 50th percentile scenarios for a 1.5p50 budget). Each scenario's cumulative AFOLU|Direct is integrated from 2020 to its own net-zero year $t_{\text{nz},i}$, then the median across scenarios is taken. The package follows the structure of [Weber 2026](https://doi.org/10.1038/s41467-026-69078-9) (Methods, Eqs. 2--3) and differs in two ways: it takes the median across scenarios, and it uses the scenario Direct flux as the bookkeeping side. The paragraph "Convention choice for the BM side" under [Convention gap decomposition](#convention-gap-decomposition) states both. The pre-computed median cumulative is stored as `bm_lulucf_cumulative_median` in `rcb_scenario_adjustments.yaml`. When the RCB baseline year $\text{base} > 2020$, the 2020-to-base prefix is subtracted using the per-year median timeseries (accurate because historical BM LULUCF has negligible inter-scenario spread). When the result is negative (net sink), the cap zeros it out because the sink relies on uncertain future reforestation. Configurable via `precautionary_lulucf` in the adjustments config (default: `true`; set to `false` for sensitivity analysis). !!! note "Why `convention_gap_median_from` is 0 in CO2-FFI output" The `rcb_scenario_adjustments.yaml` file includes a `convention_gap_median_from` field for every scenario set, with one value per RCB baseline year. For **co2-ffi** allocations, this field is **not used** — the LULUCF adjustment comes from `bm_lulucf_cumulative_median` instead (see above). The convention gap only applies to **co2** allocations, where the budget must switch from the bookkeeping model convention to the NGHGI convention. Its presence in the YAML for co2-ffi scenarios is a storage artefact, not a computational input. diff --git a/notebooks/107_derive_nghgi_categories_melo-2026.py b/notebooks/107_derive_nghgi_categories_melo-2026.py index 730af61..331eafb 100644 --- a/notebooks/107_derive_nghgi_categories_melo-2026.py +++ b/notebooks/107_derive_nghgi_categories_melo-2026.py @@ -47,6 +47,10 @@ # - `emiss_all-ghg_nghgi_timeseries.csv` — co2 + non-co2 # - `emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv` — co2-ffi + non-co2 # (recomputed; identical to the BM version by construction) +# +# The three non-CO2 outputs above are written only when the emissions source +# declares `all-ghg-ex-co2-lulucf`. A `co2-ffi`-only source gets the two CO2 files. +# # - `world_co2-lulucf_timeseries.csv` — WRD LULUCF for RCB corrections # - `lulucf_metadata.yaml` — NGHGI year bounds, affected files @@ -154,11 +158,21 @@ emissions_config = config["emissions"][active_emissions_source] emissions_world_key = emissions_config["data_parameters"].get("world_key") +# The non-CO2 categories need all-ghg-ex-co2-lulucf from the emissions source. +has_non_co2_input = "all-ghg-ex-co2-lulucf" in emissions_config[ + "data_parameters" +].get("available_categories", []) print(f"Active LULUCF source: {active_lulucf_source}") print(f"LULUCF data path: {melo_path}") print(f"Intermediate directory: {intermediate_dir_str}") print(f"Emissions world key: {emissions_world_key}") +if not has_non_co2_input: + print( + f"Emissions source '{active_emissions_source}' declares no " + "all-ghg-ex-co2-lulucf: writing co2-lulucf and co2 only, skipping " + "non-co2, all-ghg and all-ghg-ex-co2-lulucf." + ) # %% [markdown] # ## Step 1: Load Melo v3.1 NGHGI LULUCF data @@ -271,19 +285,23 @@ print(" NO BM splicing — pure NGHGI convention data") # Save NGHGI metadata for downstream use +nghgi_emissions_files = [ + "emiss_co2-lulucf_nghgi_timeseries.csv", + "emiss_co2_nghgi_timeseries.csv", +] +if has_non_co2_input: + nghgi_emissions_files += [ + "emiss_non-co2_nghgi_timeseries.csv", + "emiss_all-ghg_nghgi_timeseries.csv", + "emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv", + ] nghgi_metadata = { "nghgi_start_year": nghgi_start_year, "nghgi_end_year": nghgi_end_year, "splice_year": nghgi_end_year, "source": "Melo et al. 2026, v3.1", "n_countries": len(melo_countries_raw), - "nghgi_emissions_files": [ - "emiss_co2-lulucf_nghgi_timeseries.csv", - "emiss_co2_nghgi_timeseries.csv", - "emiss_non-co2_nghgi_timeseries.csv", - "emiss_all-ghg_nghgi_timeseries.csv", - "emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv", - ], + "nghgi_emissions_files": nghgi_emissions_files, } metadata_path = intermediate_dir / "lulucf_metadata.yaml" with open(metadata_path, "w") as f: @@ -313,16 +331,18 @@ print(f"Loaded co2-ffi: {co2_ffi.shape}") # Load all-ghg-ex-co2-lulucf from notebook 101 output (for non-co2 derivation) -allghg_ex_path = intermediate_dir / "emiss_all-ghg-ex-co2-lulucf_timeseries.csv" -if not allghg_ex_path.exists(): - raise DataLoadingError( - f"all-ghg-ex-co2-lulucf not found: {allghg_ex_path}. Run notebook 101 first." - ) +if has_non_co2_input: + allghg_ex_path = intermediate_dir / "emiss_all-ghg-ex-co2-lulucf_timeseries.csv" + if not allghg_ex_path.exists(): + raise DataLoadingError( + f"all-ghg-ex-co2-lulucf not found: {allghg_ex_path}. " + "Run notebook 101 first." + ) -allghg_ex = pd.read_csv(allghg_ex_path) -allghg_ex = allghg_ex.set_index(["iso3c", "unit", "emission-category"]) -allghg_ex = ensure_string_year_columns(allghg_ex) -print(f"Loaded all-ghg-ex-co2-lulucf: {allghg_ex.shape}") + allghg_ex = pd.read_csv(allghg_ex_path) + allghg_ex = allghg_ex.set_index(["iso3c", "unit", "emission-category"]) + allghg_ex = ensure_string_year_columns(allghg_ex) + print(f"Loaded all-ghg-ex-co2-lulucf: {allghg_ex.shape}") # %% @@ -401,36 +421,39 @@ def _save_and_report( bounded_by="Melo", ) -print("Computing non-co2 = all-ghg-ex-co2-lulucf - co2-ffi...") -non_co2 = ensure_string_year_columns( - _align_and_compute(allghg_ex, co2_ffi, "subtract", "non-co2") -) -_save_and_report( - non_co2, - intermediate_dir / "emiss_non-co2_nghgi_timeseries.csv", - "non-co2", -) +if has_non_co2_input: + print("Computing non-co2 = all-ghg-ex-co2-lulucf - co2-ffi...") + non_co2 = ensure_string_year_columns( + _align_and_compute(allghg_ex, co2_ffi, "subtract", "non-co2") + ) + _save_and_report( + non_co2, + intermediate_dir / "emiss_non-co2_nghgi_timeseries.csv", + "non-co2", + ) -print("Computing all-ghg = co2 + non-co2...") -all_ghg = ensure_string_year_columns(_align_and_compute(co2, non_co2, "add", "all-ghg")) -_save_and_report( - all_ghg, - intermediate_dir / "emiss_all-ghg_nghgi_timeseries.csv", - "all-ghg", - bounded_by="Melo", -) + print("Computing all-ghg = co2 + non-co2...") + all_ghg = ensure_string_year_columns( + _align_and_compute(co2, non_co2, "add", "all-ghg") + ) + _save_and_report( + all_ghg, + intermediate_dir / "emiss_all-ghg_nghgi_timeseries.csv", + "all-ghg", + bounded_by="Melo", + ) -# all-ghg-ex-co2-lulucf has no LULUCF dependency; identical to the BM version -# by construction. Written for pipeline symmetry with the other _nghgi files. -print("Computing all-ghg-ex-co2-lulucf = co2-ffi + non-co2...") -allghg_ex_computed = ensure_string_year_columns( - _align_and_compute(co2_ffi, non_co2, "add", "all-ghg-ex-co2-lulucf") -) -_save_and_report( - allghg_ex_computed, - intermediate_dir / "emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv", - "all-ghg-ex-co2-lulucf", -) + # all-ghg-ex-co2-lulucf has no LULUCF dependency; identical to the BM version + # by construction. Written for pipeline symmetry with the other _nghgi files. + print("Computing all-ghg-ex-co2-lulucf = co2-ffi + non-co2...") + allghg_ex_computed = ensure_string_year_columns( + _align_and_compute(co2_ffi, non_co2, "add", "all-ghg-ex-co2-lulucf") + ) + _save_and_report( + allghg_ex_computed, + intermediate_dir / "emiss_all-ghg-ex-co2-lulucf_nghgi_timeseries.csv", + "all-ghg-ex-co2-lulucf", + ) # %% [markdown] # ## Diagnostics @@ -490,7 +513,9 @@ def _plot_world(ax, df, world_key, *, title, ylabel, label): ax.axhline(y=0, color="black", linestyle="-", alpha=0.3) -fig, axes = plt.subplots(2, 2, figsize=(16, 12)) +# The non-CO2 row is drawn only when those categories were derived. +n_rows = 2 if has_non_co2_input else 1 +fig, axes = plt.subplots(n_rows, 2, figsize=(16, 6 * n_rows), squeeze=False) _plot_world( axes[0, 0], melo_all, emissions_world_key, @@ -504,27 +529,31 @@ def _plot_world(ax, df, world_key, *, title, ylabel, label): ylabel="MtCO2/yr", label="co2 (NGHGI)", ) -_plot_world( - axes[1, 0], non_co2, emissions_world_key, - title="non-co2: World (CH4 + N2O + F-gases)", - ylabel="MtCO2e/yr", - label="non-co2", -) -_plot_world( - axes[1, 1], all_ghg, emissions_world_key, - title="all-ghg: World (co2 + non-co2, NGHGI)", - ylabel="MtCO2e/yr", - label="all-ghg (NGHGI)", -) +if has_non_co2_input: + _plot_world( + axes[1, 0], non_co2, emissions_world_key, + title="non-co2: World (CH4 + N2O + F-gases)", + ylabel="MtCO2e/yr", + label="non-co2", + ) + _plot_world( + axes[1, 1], all_ghg, emissions_world_key, + title="all-ghg: World (co2 + non-co2, NGHGI)", + ylabel="MtCO2e/yr", + label="all-ghg (NGHGI)", + ) plt.tight_layout() plt.show() print("\nLULUCF preprocessing complete.") print(f"NGHGI year range: {nghgi_start_year}-{nghgi_end_year}") -print( - "Categories produced: co2-ffi (unchanged), co2-lulucf (NGHGI), co2, " - "non-co2, all-ghg, all-ghg-ex-co2-lulucf" -) +if has_non_co2_input: + print( + "Categories produced: co2-ffi (unchanged), co2-lulucf (NGHGI), co2, " + "non-co2, all-ghg, all-ghg-ex-co2-lulucf" + ) +else: + print("Categories produced: co2-ffi (unchanged), co2-lulucf (NGHGI), co2") # %% diff --git a/src/fair_shares/library/config/models.py b/src/fair_shares/library/config/models.py index aef09db..67a3ef8 100644 --- a/src/fair_shares/library/config/models.py +++ b/src/fair_shares/library/config/models.py @@ -508,11 +508,20 @@ def validate_emission_category(self) -> DataSourcesConfig: Note: by the time the Pydantic model is constructed, the emission_category has already been resolved to the effective value (e.g., "co2-ffi" for all-ghg runs), so this validator sees the resolved value. + + ``co2`` is also valid when the emissions source declares ``co2-ffi`` and + a LULUCF source is active: the LULUCF notebook derives ``co2`` as + ``co2-ffi`` plus national-inventory LULUCF. """ if self.active_emissions_source: emissions_config = self.emissions[self.active_emissions_source] available = emissions_config.data_parameters.available_categories - if self.emission_category not in available: + co2_from_lulucf = ( + self.emission_category == "co2" + and "co2-ffi" in available + and bool(self.active_lulucf_source) + ) + if self.emission_category not in available and not co2_from_lulucf: suggestion = suggest_similar(self.emission_category, available) msg = format_error( "invalid_emission_category", @@ -524,5 +533,10 @@ def validate_emission_category(self) -> DataSourcesConfig: f"'{self.active_emissions_source}' " f"only provides: {', '.join(available)}" ) + if self.emission_category == "co2" and "co2-ffi" in available: + note += ( + "\n'co2' can be derived from 'co2-ffi' when a LULUCF " + "source is active (for example lulucf='melo-2026-v4')." + ) raise ConfigurationError(msg + note) return self diff --git a/src/fair_shares/library/utils/data/rcb.py b/src/fair_shares/library/utils/data/rcb.py index fbe0f36..8afa189 100644 --- a/src/fair_shares/library/utils/data/rcb.py +++ b/src/fair_shares/library/utils/data/rcb.py @@ -776,7 +776,15 @@ def process_rcb_to_2020_baseline( # For co2-ffi, LULUCF is omitted because it cancels with the LULUCF # decomposition rebase_lulucf_mt = 0.0 - if emission_category == "co2" and world_nghgi_lulucf_emissions is not None: + if emission_category == "co2" and world_nghgi_lulucf_emissions is None: + raise DataProcessingError( + f"RCB source '{source_name}' has baseline year {rcb_baseline_year}. " + f"Rebasing a co2 budget to {target_baseline_year} needs the " + f"observed inventory (NGHGI) LULUCF emissions for " + f"{target_baseline_year}-{rcb_baseline_year - 1}: pass " + f"world_nghgi_lulucf_emissions." + ) + if emission_category == "co2": missing_years = missing_rebase_years( rcb_baseline_year, world_nghgi_lulucf_emissions, target_baseline_year ) diff --git a/tests/integration/test_gcb_2025_melo_v4_co2_smoke.py b/tests/integration/test_gcb_2025_melo_v4_co2_smoke.py new file mode 100644 index 0000000..09cca95 --- /dev/null +++ b/tests/integration/test_gcb_2025_melo_v4_co2_smoke.py @@ -0,0 +1,78 @@ +"""End-to-end smoke test: equal per capita ``co2`` budget on ``gcb-2025`` + ``melo-2026-v4``. + +``co2`` is ``gcb-2025`` fossil CO2 plus national-inventory LULUCF from the LULUCF +Data Hub v4.0.0. Reads the processed tree of that pipeline run and skips when it +has not been built:: + + uv run snakemake --cores 1 --config emission_category=co2 \ + active_emissions_source=gcb-2025 active_gdp_source=wdi-2025 \ + active_population_source=un-owid-2025 active_gini_source=wdi-2025 \ + active_lulucf_source=melo-2026-v4 active_target_source=rcbs +""" + +from __future__ import annotations + +import pandas as pd +import pytest +from pyprojroot import here + +from fair_shares.library.allocations.manager import run_allocation +from fair_shares.library.utils import ensure_string_year_columns +from fair_shares.library.utils.data.rcb import calculate_budget_from_rcb + +PROCESSED = ( + here() + / "output/gcb-2025_wdi-2025_un-owid-2025_wdi-2025_melo-2026-v4_rcbs_co2" + / "intermediate/processed" +) +# The inventory LULUCF series starts in 2000, and so does world co2. +ALLOCATION_YEAR = 2000 +EMISSIONS_INDEX = ["iso3c", "unit", "emission-category"] + + +def _read(name: str, index: list[str]) -> pd.DataFrame: + return ensure_string_year_columns(pd.read_csv(PROCESSED / name).set_index(index)) + + +@pytest.mark.parametrize("rcb_source", ["forster_2026", "ar6_wg1_2021"]) +def test_shares_sum_to_one_and_budgets_sum_to_the_adjusted_total(rcb_source): + if not (PROCESSED / "rcbs_co2.csv").is_file(): + pytest.skip("gcb-2025 + melo-2026-v4 co2 processed data not built") + rcbs = pd.read_csv(PROCESSED / "rcbs_co2.csv") + row = rcbs[(rcbs["source"] == rcb_source) & (rcbs["scenario"] == "1.7p50")] + if row.empty: + pytest.skip(f"{rcb_source} 1.7p50 is not in the processed budgets") + + population = _read("country_population_timeseries.csv", ["iso3c", "unit"]) + world = _read("world_emissions_co2_timeseries.csv", EMISSIONS_INDEX) + fossil = _read("world_emissions_co2-ffi_timeseries.csv", EMISSIONS_INDEX) + lulucf = _read("world_emissions_co2-lulucf_timeseries.csv", EMISSIONS_INDEX) + + # World co2 is fossil CO2 plus inventory LULUCF in every year it covers. + years = list(world.columns) + assert years[0] == str(ALLOCATION_YEAR) + assert world[years].to_numpy() == pytest.approx( + fossil[years].to_numpy() + lulucf[years].to_numpy() + ) + + result = run_allocation( + "equal-per-capita-budget", + population_ts=population, + allocation_year=ALLOCATION_YEAR, + emission_category="co2", + ) + shares = result.relative_shares_cumulative_emission[str(ALLOCATION_YEAR)] + assert shares.sum() == pytest.approx(1.0, abs=1e-9) + + # Adjusted total = world co2 2000-2019 + the budget rebased to 2020. + budget_2020 = row["rcb_2020_nghgi_mt"].iloc[0] + total = calculate_budget_from_rcb( + budget_2020, ALLOCATION_YEAR, world, verbose=False + ) + budget = pd.DataFrame({str(ALLOCATION_YEAR): [total]}, index=world.index) + absolute = result.get_absolute_budgets(budget)[str(ALLOCATION_YEAR)] + assert absolute.sum() == pytest.approx(total, rel=1e-9) + assert total > budget_2020 > 0 + # A post-2020 baseline carries the observed inventory LULUCF of the rebase years. + if row["baseline_year"].iloc[0] > 2020: + assert row["rebase_lulucf_mt"].iloc[0] != 0 From 78eba1bcb67216dca01e4310cf06b43e408bbf55 Mon Sep 17 00:00:00 2001 From: Setu Pelz Date: Thu, 1 Oct 2026 16:02:40 +0200 Subject: [PATCH 5/7] test: refresh python-API fixtures for the August Gini-membership and GDP update Regenerates the three distributed_*.parquet python-API fixtures. Moves the fixture sources and source-id derivation into tests/fixtures/python_api_sources.py, shared by the fixture script and the reproduction test. The reproduction test takes the Gini source from that shared module. --- .../distributed_all-ghg-ex-co2-lulucf.parquet | Bin 2684663 -> 2687533 bytes .../python_api/distributed_all-ghg.parquet | Bin 1735754 -> 1737380 bytes .../python_api/distributed_co2-ffi.parquet | Bin 1016887 -> 1013281 bytes tests/fixtures/python_api_sources.py | 27 ++++++++++++++++ tests/fixtures/save_python_api_fixture.py | 6 ++++ .../test_python_api_reproduces_notebook.py | 29 +++++++----------- 6 files changed, 44 insertions(+), 18 deletions(-) create mode 100644 tests/fixtures/python_api_sources.py diff --git a/tests/fixtures/python_api/distributed_all-ghg-ex-co2-lulucf.parquet b/tests/fixtures/python_api/distributed_all-ghg-ex-co2-lulucf.parquet index dfa875ac4fae0fb1264632ea84acc2f5cab9273a..e2534bf24af965b7ba335d3c3678d27d27c028cf 100644 GIT binary patch delta 2225637 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�Je)0xle&V|qGV5XJhp+aq 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 J5paM7({Jg}VA6a)aUFF(q{Z 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ଃ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

o`6RdJMFTKNZ|S zuP;fIlqhAQ=s2+Zxc^a+e5K+FrX59$xHB%7-n?u^bLT$p>t`J)KE8ST#~Dr>@W)Ag z4r053{yzRK63vr?roHq~Pd_K3Mam0gOv-4!M|JEOdo#MsVBmUGdi1ZR@ z8^%zUizkEE%`eSv&)g7etK*p6`!s~-h8F`tXQ1-%6?w~fX+$Z`hpUljM%<*`g9_3F zu;aMBN3d0*(Rc$Ioz~A983TX7nF(2$pCY8Pri4 z@K4c`V8`~$IyP##YRW=TEeLF{3q!W!I>GmFURqix5R5{Nrs@M7A$Lli_Cr%A;-B_v zdcy7u%+FqiXU#MMHFd6P=6Z7k_SzOX$puM$y5Zl;{ zW|JxiMjDiWT#@(3SLFudGT_Z(o6Gbp0S z(2PowQ;)!@PWvQ*aKs$OXxNb@guTQ`k?9+#v}5h^b%1VbFhP(#rH%My6clg0wzX_&c-@4Peg z6}?oZBkw|43ZGbNkPFZ$+{-PRX@R`$KKc?#J1}mv5ih)ijp>VbT#sD5fZ;yRSW~ej zET6w+Tb0y~n%HkG`CPJw+Sgtk!dQEcCn$5p)#%Hp;e7l2TTD42W01e~!Px|k)^OWj zsqhh$XODX~kT;{9(|o!D4^-i<@#TV^gdB)&x%yhGRS0o6hEQlyxuTZ1%jyD~x?paU z#PJ-{i2be;ZL0NdLW$fAH4!ujeyI(xBFKP(Etc6zaB=eL(YvIJ8-mMbc-e&sB`#U1p;OEQ+VOae7 zZu?*IU(&!sYW`@iQx!#Tu%z{<#UrT~i(3L79H{UmrH+Jq8VqLG<}a=|qCEG9-qzv; zIIvI&$!B3^gBur|#!liikPC73%bw!|^f{zKsN6{eMO{91!ErbdXfy|YaY#F%nQEC& zoTV6;4G!DGSJh8?zH+XC3j(v} zl$J3w(YVBizTql}_(IG|E+7v-DpIXXE-9m^vwUT=xiRQ!9=+kG#Y@OFCTEEvIU7zs z{?ZZ7G(dYwTC)w3rNAxzN?>J(2fmVtUsW1aMe<+r#mu&2G3j;NFPSSsh~m_kLDJ7O zkck}5#fhmIqry*eD9O11&_}xDA3BGMf$erq_{18>Q@>(4mMR|AaV_-S!V^b!8FUBq zaYmJ1UV6{Iu?oM^p{*}tw_6M0@>jZAtMk50$YRrU`{p`b_1 zgulGw;lVv&z3~-a_(6bNKOYalQ1nw=OiE2K5L|dwVR+ja+&@)y;$wNP`0Na`vX7mi zmAPE+7On|O@29?ME_Q`UhhFlyjUEvG=K8yr%@>%GW^lc&vTHADgh^X~mDTu?axejv!Z2x;E^8 zB#g}16~pv@lI|e^7^rZa=bF2q)Fm*#u^|Y_?h(bj)&Y;5#QTxXY=GzWd9Jyd z192Cb?RJ+6g3E()96??jc&duLidV#e&Ti!JHLhV${Xxt~UJ(q9O%f~_6mB3Q;2Lf% zR|aO;{zlS{*jjIYGHjcv6`s2O#=pH02)Lb+Icn4Aeb7R^_k7aN7v$geygb~rh5QP~ z8^d9_Alr_UjOw?B^{2uS`Gd8vDe(l(pdPbz6wg3tPCvuL

    Zc#1pGIH^{h8FP%3=yGuf&I4qESx65SV7 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

    s#a-aD8SwULYR)S)*I2-ZiCbGAN$uX)m4)<@1L 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

    ~7wx(1E_w_6*}V$v@^@ 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