The carbon module provides carbon density information for different land types.
| Description | Unit | A | |
|---|---|---|---|
| fm_aboveground_fraction (land_timber) |
Aboveground fraction of total biomass | \(1\) | x |
| fm_ipcc_bef (clcl) |
IPCC biomass expansion factor BEF | \(1\) | x |
| im_forest_ageclass (j, ac) |
Forest area in 5-year age-classes | \(10^6 ha\) | x |
| pcm_carbon_stock (j, land, c_pools, stockType) |
Carbon stock in vegetation soil and litter for different land types | \(10^6 tC\) | x |
| pm_climate_class (j, clcl) |
Koeppen-Geiger climate classification on the simulation cluster level | \(1\) | x |
| pm_land_plantation (j, ac) |
Plantation land by age class for growing stock calibration | \(10^6 ha\) | x |
| pm_rotation_cellular_estb (t_all, j) |
Establishment rotation length translated to age classes on cellular level | \(1\) | x |
| sm_carbon_fraction | Carbon fraction of dry matter | \(tC/tDM\) | x |
| sm_fix_cc | year until which all parameters affected by cc are fixed to historical values | \(year\) | x |
| vm_carbon_stock (j, land, c_pools, stockType) |
Carbon stock in vegetation soil and litter for different land types | \(10^6 tC\) | x |
| vm_emissions_reg (i, emis_source, pollutants) |
Regional emissions by source and gas after technical mitigation N CH4 C | \(Tg/yr\) | x |
| Description | Unit | |
|---|---|---|
| fm_carbon_density (t_all, j, land, c_pools) |
LPJmL carbon density for land and carbon pools | \(tC/ha\) |
| im_vol_conv (i) |
Regional basic wood density | \(tDM/m3\) |
| pm_carbon_density_other_ac (t_all, j, ac, ag_pools) |
Vegetation other land carbon density for age classes and carbon pools | \(tC/ha\) |
| pm_carbon_density_other_planted_ac (t_all, j, ac, ag_pools) |
Vegetation other-planted forest carbon density - natveg-derived curve read from f52_growth_par other_planted | \(tC/ha\) |
| pm_carbon_density_plantation_ac (t_all, j, ac, ag_pools) |
Vegetation plantation carbon density for age classes and carbon pools | \(tC/ha\) |
| pm_carbon_density_secdforest_ac (t_all, j, ac, ag_pools) |
Vegetation secondary forest carbon density for age classes and carbon pools | \(tC/ha\) |
| pm_gs_niche_fac (j) |
Per-cell wood-only vegc niche-floor factor for arid low-asymptote forest cells | \(1\) |
| pm_lambda_nrf (i) |
Wood-only FRA growing-stock multiplier for natural forest | \(1\) |
| pm_lambda_pla (i) |
Wood-only FRA growing-stock multiplier for plantations | \(1\) |
This realization provides carbon density information on cellular level to all land modules ([30_crop], 31_past, 32_forestry, 34_urban and 35_natveg). The realization provides carbon density for different age-classes, based on a Chapman-Richards growth model, to the land modules 32_forestry and 35_natveg Braakhekke et al. (2019).
The Chapman-Richards growth parameters are read from the three-curve
growth-parameter file (natveg, other_planted, plantations); the carbon
curve is never bent to a timber target. Instead, when
s52_growingstock_calib = 1, harvestable wood is matched to
FAO FRA 2025 growing stock by a per-region wood multiplier
lambda, applied to im_growing_stock in 14_yields and leaving carbon density untouched:
lambda = FRA target / area-weighted growing stock of the observation-based carbon curve
(naturally regenerating forest weighted by the age-class distribution
-> pm_lambda_nrf; plantations sampled at the cellular
rotation age -> pm_lambda_pla). By default the naturally
regenerating growth rate is leaned to the lower quartile of the observed
cell-rate distribution (s52_natveg_growth_scalar), the
plantation carbon asymptote is anchored to the observed managed plateau
(s52_plant_asymp_anchor), and lambda is capped
at the biomass expansion factor (s52_lambda_bef_cap). The
legacy Braakhekke curves remain selectable via
c52_growth_par_source.
Actual CO2 emissions are calculated based on changes in carbon stocks
between timesteps in the interface vm_carbon_stock.
\[\begin{multline*} vm\_emissions\_reg(i2,emis\_oneoff,"co2\_c") = \sum_{cell(i2,j2),emis\_land(emis\_oneoff,land,c\_pools)}\left(\frac{ \left(pcm\_carbon\_stock(j2,land,c\_pools,"actual") - vm\_carbon\_stock(j2,land,c\_pools,"actual")\right)}{m\_timestep\_length}\right) \end{multline*}\]
Growing-stock calibration of secdforest and plantation WOOD only (carbon is never bent). Per region an analytic wood multiplier lambda = FRA growing-stock target / area-weighted growing stock of the observation-based carbon curve, applied to im_growing_stock in module 14: - Secdforest (pm_lambda_nrf): weighted by the GFAD/GAMI age distribution (im_forest_ageclass, module 28) - Plantations (pm_lambda_pla): sampled at the cellular rotation age (pm_rotation_cellular_estb, module 32) Runs in preloop after module 28 populates im_forest_ageclass. Conversion C_density (tC/ha) -> GS (m3/ha): GS = C_density / carbon_fraction * aboveground_fraction / BEF / D (D = wood density tDM/m3, BEF = expansion factor)
Limitations The carbon density asymptote (C_max) comes from LPJmL potential vegetation. For plantations it is re-levelled to the observed managed plateau in the tropics by default (
s52_plant_asymp_anchor); naturally regenerating forest keeps the LPJmL potential, so undisturbed regrowth is assumed to recover to natural old-growth carbon and chronically degraded forest that never reaches its potential is not represented.
| Description | Unit | A | |
|---|---|---|---|
| f52_fra_nrf_gs (i) |
FRA growing stock target for naturally regenerating forests | \(m3/ha\) | x |
| f52_fra_pla_gs (i) |
FRA growing stock target for plantations | \(m3/ha\) | x |
| f52_growth_par (clcl, chap_par, forest_type) |
Parameters for chapman-richards equation | \(1\) | x |
| f52_land_carbon_sink (t_all, i, rcp52) |
Land carbon sink adjustment factors from Grassi et al 2021 | \(GtCO2/year\) | x |
| f52_plant_asymp_agc (clcl) |
Managed-plantation aboveground-C asymptote target - Bukoski 2022 | \(tC/ha\) | x |
| f52_volumetric_conversion (clcl) |
Basic wood density by climate class | \(tDM/m3\) | x |
| i52_bef_avg (i) |
Regional average biomass expansion factor | \(1\) | x |
| i52_gs_curve_nrf (i) |
Growing stock the carbon curve implies for natural forest (age-area-weighted) - reference the FRA wood multiplier calibrates against | \(m3/ha\) | x |
| i52_gs_curve_pla (i) |
Growing stock the carbon curve implies for plantations (at the rotation age) - reference the FRA wood multiplier calibrates against | \(m3/ha\) | x |
| i52_land_carbon_sink (t_all, i) |
Land carbon sink adjustment factors from Grassi et al 2021 | \(GtCO2/year\) | x |
| i52_plant_asymptote (t_all, j) |
Plantation carbon-curve vegc asymptote (tC per ha)- LPJmL-natural | x | |
| p52_lpjml_asymp_agc (clcl) |
Plantation-area-weighted mean LPJmL AGC asymptote per climate class | \(tC/ha\) | x |
| p52_plant_asymp_agc_eff (clcl) |
Effective plantation AGC asymptote target after anchor-mode masking | \(tC/ha\) | x |
| p52_plant_asymp_factor (clcl) |
Per-class plantation carbon-asymptote re-levelling factor - observed plateau over LPJmL | \(1\) | x |
| pc52_carbon_density_start (t_all, j, ag_pools) |
Vegetation carbon density for new land in other land pool | \(tC/ha\) | x |
| q52_emis_co2_actual (i, emis_oneoff) |
Calculation of annual CO2 emissions | \(Tg/yr\) | x |
| s52_growingstock_calib | Switch for growing-stock wood-multiplier (lambda) calibration to FRA - natural forest and plantations 1=on 0=off | \(1\) | x |
| s52_gs_niche_floor | Niche floor on mature secdforest veg carbon for the WOOD conversion only - lifts arid divide-by-near-zero cells 0=off | \(tC/ha\) | x |
| s52_lambda_bef_cap | Cap wood multiplier lambda at the biomass expansion factor - lambda greater than BEF implies harvested stemwood exceeding aboveground biomass 1=on 0=off | \(1\) | x |
| s52_natveg_growth_scalar | Global multiplier on the naturally regenerating vegetation growth-rate k - secdforest other natural land and the natveg-derived other-planted curve - default 0.83 = lower quartile (p25) of Robinson 2025 mapped cell rates - carbon only 1=central | \(1\) | x |
| s52_plant_asymp_anchor | Anchor plantation carbon asymptote to observed managed plateau - 0=off (LPJmL natural) 1=tropical-only 2=all Bukoski biomes | \(1\) | x |
| description | |
|---|---|
| ac | Age classes |
| ag_pools(c_pools) | Above ground carbon pools |
| age | Population age groups |
| c_pools | Carbon pools |
| cell(i, j) | number of LPJ cells per region i |
| chap_par | Chapman-richards parameters |
| clcl | climate classification types |
| clcl_trop52(clcl) | Tropical Koeppen classes for the plantation asymptote anchor |
| emis_land(emis_oneoff, land, c_pools) | Mapping between land and carbon pools |
| emis_oneoff(emis_source) | oneoff emission sources |
| emis_source | Emission sources |
| factors | factors included in factor requirements |
| forest_type | forest type |
| i | all economic regions |
| i2(i) | World regions (dynamic set) |
| j | number of LPJ cells |
| j2(j) | Spatial Clusters (dynamic set) |
| k(kall) | Primary products |
| land | Land pools |
| land_forest(land_timber) | Forested land pools |
| land_timber(land) | land from which timber can be taken away |
| pollutants(pollutants_all) | subset of pollutants_all that can be taxed |
| rcp52 | climate change impact sceanrios |
| stockType | Carbon stock types |
| t(t_all) | Simulated time periods |
| t_all(t_ext) | 5-year time periods |
| type | GAMS variable attribute used for the output |
Benjamin Leon Bodirsky, Florian Humpenoeder, Abhijeet Mishra
09_drivers, 14_yields, 28_ageclass, 29_cropland, 30_croparea, 31_past, 32_forestry, 35_natveg, 45_climate, 56_ghg_policy, 59_som, 73_timber