MAgPIE - An Open Source land-use modeling framework

4.10.0

created with goxygen 1.4.5

Soil organic matter (59_som)

Description

The soil organic matter module calculates the soil organic carbon loss due to landuse activities. It also estimates the nitrogen release due to the soil organic carbon turnover.

Interfaces

Interfaces to other modules

Input

module inputs (A: cellpool_jan23 | B: static_jan19)
  Description Unit A B
fm_carbon_density
(t_all, j, land, c_pools)
LPJmL carbon density for land and carbon pools \(tC/ha\) x x
fm_croparea
(t_all, j, w, kcr)
Different croparea type areas \(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 x
pcm_land
(j, land)
Land area in previous time step including possible changes after optimization \(10^6 ha\) x x
pm_avl_cropland_iso
(iso)
Available land area for cropland at ISO level \(10^6 ha\) x
pm_climate_class
(j, clcl)
Koeppen-Geiger climate classification on the simulation cluster level \(1\) x
pm_land_start
(j, land)
Land initialization area \(10^6 ha\) x
sm_fix_cc year until which all parameters affected by cc are fixed to historical values \(year\) x x
vm_area
(j, kcr, w)
Agricultural production area \(10^6 ha\) x x
vm_carbon_stock
(j, land, c_pools, stockType)
Carbon stock in vegetation soil and litter for different land types \(10^6 tC\) x x
vm_fallow
(j)
Fallow land is temporarily fallow cropland \(10^6 ha\) x x
vm_land
(j, land)
Land area of the different land types \(10^6 ha\) x x
vm_land_other
(j, othertype35, ac)
Detailed stock of other land \(10^6 ha\) x
vm_landexpansion
(j, land)
Land expansion \(10^6 ha\) x
vm_lu_transitions
(j, land_from, land_to)
Land transitions between time steps \(10^6 ha\) x
vm_treecover
(j)
Cropland tree cover \(10^6 ha\) x x

Output

module outputs
  Description Unit
vm_cost_scm
(j)
Recurring cost for soil carbon management on cropland \(10^6 USD_{17MER}/yr\)
vm_nr_som
(j)
Release of soil organic matter \(Mt N/yr\)
vm_nr_som_fertilizer
(j)
Uptake of soil organic matter from plants \(Mt N/yr\)

Realizations

(A) cellpool_jan23

The cellpool_aug23 realization is built on revised IPCC 2019 Guidelines for National Greenhouse Gas Inventories (Calvo Buendia et al. (2019)). It calculates the loss of soil carbon due to cropping activities and management based on stock change factors, compared to potential natural vegetation. This approach also accounts for the temporal dimension of soil organic carbon change, since it assumes a gradual step of 15% in the direction of the new equilibrium soil organic carbon pool each year. Stock change factors tracks crop types as well as management (e.g. irrigation) and input differences on cropland. Dedicated soil carbon management can be switched on for a share of cropland, characterized by a higher input factor, which according to the IPCC guidelines reflects improved agronomic practices. Target shares are set exogenously and are phased in over time.

The implementation of soil carbon management on cropland refers to a diverse set of
practices. According to IPCC guidelines 2006, they represent “significantly greater
crop residue inputs over medium C input cropping systems due to additional practices,
such as production of high residue yielding crops, use of green manures, cover crops,
improved vegetated fallows, irrigation, frequent use of perennial grasses in annual
crop rotations, but without manure applied.”
Literature estimates for the costs of these agronomic practices vary widely. Whereas
Smith et al. 2008 estimates the costs of various agronomic practices at around 20
USD06MER (= ~25 USD17MER) per ha, Uludere Aragon et al. 2024 found much higher costs
for the individual practice of cover cropping, around 90-115 USD21MER (= ~80-105
USD17MER) per ha. Uludere Aragon et al. 2024 highlights that changes in production
costs—due to reduced fertilizer use or increased herbicide costs—as well as yield
impacts can either raise or lower net overall farm costs. Given these uncertainties,
we adopt an estimated cost of 65 USD17MER per ha, representing the midpoint between
25 and 105 USD17MER. Due to the lack of comprehensive cost data across all regions
and the potential for cost changes over time in response to general economic trends,
we apply a uniform cost assumption to avoid introducing large initial biases. Costs
can be changed in the configuration file via s59_cost_scm_recur for using other assumptions.

For every cell a new equilibrium value for the soil organic carbon pool on cropland as the sum over all crop types and management regimes is calculated by taking carbon shares (cratio) of the natural reference f59_topsoilc_density with (1) crop and irrigation type specific assumptions i59_cratio for all cropareas, (2) based on the share of dedicated soil carbon managament (SCM) i59_scm_target on cropareas an additional increase of i59_cratio_scm - 1 for these areas, (3+4) dedicated factors i59_cratio_fallow and i59_cratio_treecover for fallow and treecover areas leading to on overall target stock given by

\[\begin{multline*} v59\_som\_target(j2,"crop") = \left(\sum_{kcr,w}\left( vm\_area(j2,kcr,w) \cdot i59\_cratio(j2,kcr,w)\right) + \sum_{kcr,w,ct}\left( vm\_area(j2,kcr,w) \cdot i59\_scm\_target(ct,j2) \cdot i59\_cratio(j2,kcr,w) \cdot \left(i59\_cratio\_scm(j2) - 1\right)\right) + vm\_fallow(j2) \cdot i59\_cratio\_fallow(j2) + vm\_treecover(j2) \cdot i59\_cratio\_treecover\right) \cdot \sum_{ct}f59\_topsoilc\_density(ct,j2) \end{multline*}\]

as well as for all non cropland given by

\[\begin{multline*} v59\_som\_target(j2,noncropland59) = vm\_land(j2,noncropland59) \cdot \sum_{ct}f59\_topsoilc\_density(ct,j2) \end{multline*}\]

Depending on the setting of c59_som_scenarioclimate impacts (cc) are taken into account or not (nocc and nocc_hist). For a static climate f59_topsoilc_density is set to the value of 1995 within the input of the module realization. To get the current size of the soil organic carbon pool, the carbon pool of the previous timestep is developing into the direction of the above calculated target values taken the timestep depending lossrate into account by

\[\begin{multline*} v59\_som\_pool(j2,land) = \sum_{ct}i59\_lossrate(ct) \cdot v59\_som\_target(j2,land) + \left(1 - \sum_{ct}i59\_lossrate(ct)\right) \cdot \sum_{ct,land\_from}\left( p59\_carbon\_density(ct,j2,land\_from) \cdot vm\_lu\_transitions(j2,land\_from,land)\right) \end{multline*}\]

Note that to account correctly for land-use transitions, carbon densities multiplied by the land-use transition matrix of the current timestep is used. The soil carbon content is calculated as sum of actual topsoil pool and the reference soil carbon pool of the subsoil

\[\begin{multline*} vm\_carbon\_stock\left(j2, land,"soilc",stockType\right) = v59\_som\_pool\left(j2, land\right) + vm\_land\left(j2, land\right) \cdot \sum_{ct}i59\_subsoilc\_density(ct,j2) \end{multline*}\]

The annual nitrogen release (or sink) for cropland soils is than calculated by the loss of soil organic carbon given by

\[\begin{multline*} vm\_nr\_som(j2) = \frac{ \sum_{ct}i59\_lossrate(ct)}{m\_timestep\_length} \cdot \frac{1}{15 } \cdot \left(\sum_{ct,land\_from}\left( p59\_carbon\_density(ct,j2,land\_from) \cdot vm\_lu\_transitions(j2,land\_from,"crop")\right) - v59\_som\_target(j2,"crop")\right) \end{multline*}\]

with the carbon to nitrogen ratio of soils assumed to be 15:1. The amount of nitrogen that becomes available to cropland farming is limited by loss of soil organic matter by

\[\begin{multline*} vm\_nr\_som\_fertilizer(j2) \leq vm\_nr\_som(j2) \end{multline*}\]

as well as by the amount that crops can take up

\[\begin{multline*} vm\_nr\_som\_fertilizer(j2) \leq vm\_landexpansion(j2,"crop") \cdot s59\_nitrogen\_uptake \end{multline*}\]

Here we assume a maximum of 200 kg on the expanded area. Cost for soil carbon management are based on a per hectare value

\[\begin{multline*} vm\_cost\_scm(j2) = \sum_{kcr,w} vm\_area(j2,kcr,w) \cdot \sum_{ct} i59\_scm\_target(ct,j2) \cdot s59\_cost\_scm\_recur \end{multline*}\]

This realization calculates the carbon loss with the assumption of a lossrate of 15% per year resulting in 44% in 5 years, 80% in 10 years and 96% in 20 years. The lossrate for a given timestep is than calculate by

i59_lossrate(t)=1-0.85**m_yeardiff(t);

The stock change factors are implemented for cropland subsystems divided by MAgPIE crop types as well as potentially for tillage and input management. So far it just tracks the subsystem component due to missing data for the other categories. They are set to the following default values:

i59_tillage_share(i,tillage59)=0;
i59_tillage_share(i,"full_tillage")=1;
i59_input_share(i,inputs59)=0;
i59_input_share(i,"medium_input")=1;

The stock change factor in each cell for every crop type also takes into account the climate variability of these factors and is therefor given by:

i59_cratio(j,kcr,w) = sum((cell(i,j),tillage59,inputs59,climate59),
                 sum(clcl_climate59(clcl,climate59),pm_climate_class(j,clcl))
                 * f59_cratio_landuse(i,climate59,kcr)
                 * i59_tillage_share(i,tillage59)
                 * f59_cratio_tillage(climate59,tillage59)
                 * i59_input_share(i,inputs59)
                 * f59_cratio_inputs(climate59,inputs59)
                 * f59_cratio_irrigation(climate59,w,kcr));

For fallow we assume annual crops with bare fallow - therefor low input - and reduced tillage. Assumed to have no irrigation, so irrigation multiplier is 1.

i59_cratio_fallow(j) = sum((cell(i,j),climate59),
                sum(clcl_climate59(clcl,climate59),pm_climate_class(j,clcl))
                * f59_cratio_landuse(i,climate59,"maiz")
                * f59_cratio_tillage(climate59,"reduced_tillage")
                * f59_cratio_inputs(climate59,"low_input"));

For treecover in cropland (e.g. agroforestry areas) we assume natural soil carbon values as target value, and thus set the value to 1:

i59_cratio_treecover = 1;

For dedicated soil carbon management we use the high_input_nomanure values from the IPCC guidelines, as the refer to the usage of dedicated SCM measures such as cover crops, improved residue management etc.

i59_cratio_scm(j) = sum(climate59, sum(clcl_climate59(clcl,climate59),
                     pm_climate_class(j,clcl)) *
                       f59_cratio_inputs(climate59,"high_input_nomanure"));

Limitations It is assumed that pastures and rangelandes as well as managed forests do not change in soil carbon compared to the natural reference state. Moreover only transitions from other land and primary forest to secondary forest between optimization steps (due to natural regrowth and disturbance loss) are accounted for.

(B) static_jan19

The static_jan19 realization is built on the IPCC 2006 Guidelines for National Greenhouse Gas Inventories (IPCC (2006).). It calculates the loss of soil carbon due to cropping activities based on stock change factors, compared to potential natural vegetation. This approach does not account for the temporal dimension of soil organic carbon change, since it assumes a complete loss of carbon directly after land conversion to cropland. Therefore, no release of nitrogen due to soil organic matter loss is calculated. Moreover only one stock change factor for all crop types is used, neglecting e.g. differences for annual and perennial crops.

The soil carbon content for cropland is calculated as sum of reduced topsoil density and the reference soil carbon densities of the subsoil.

\[\begin{multline*} vm\_carbon\_stock(j2,"crop","soilc",stockType) = \left(\sum_{kcr,w} vm\_area(j2,kcr,w) + vm\_fallow(j2)\right) \cdot \sum_{ct}\left( i59\_topsoilc\_density(ct,j2) + i59\_subsoilc\_density(ct,j2)\right) + vm\_treecover(j2) \cdot \sum_{ct} fm\_carbon\_density(ct,j2,"secdforest","soilc") \end{multline*}\]

The soil carbon content for all other land use types is calculated based on the full profile soil carbon density:

\[\begin{multline*} vm\_carbon\_stock(j2,regularland59,"soilc",stockType) = \sum_{ct}\left( vm\_land(j2,regularland59) \cdot fm\_carbon\_density(ct,j2,regularland59,"soilc")\right) \end{multline*}\]

\[\begin{multline*} vm\_carbon\_stock(j2,"other","soilc",stockType) = \sum_{ct,ac}\left( vm\_land\_other(j2,"othernat",ac) \cdot fm\_carbon\_density(ct,j2,"other","soilc")\right) + \sum_{ct,ac}\left( vm\_land\_other(j2,"youngsecdf",ac) \cdot fm\_carbon\_density(ct,j2,"secdforest","soilc")\right) \end{multline*}\]

Cropland topsoil carbon densities are calculated based on simple IPCC stock change factors (if not done in cellular preprocessing). We assume following the IPCC assumptions that cropland activities will only change the topsoil (here 30 cm) carbon density.

i59_subsoilc_density(t_all,j) = fm_carbon_density(t_all,j,"secdforest","soilc") - f59_topsoilc_density(t_all,j);
$ifthen "%c59_static_spatial_level%" == "cellular" i59_topsoilc_density(t_all,j) = fm_carbon_density(t_all,j,"crop","soilc") - i59_subsoilc_density(t_all,j);
$elseif "%c59_static_spatial_level%" == "cluster"  i59_topsoilc_density(t_all,j) = f59_topsoilc_density(t_all,j) * (1- f59_cshare_released(j));
$endif

Limitations The soil carbon dynamics are instantaneous and do not account for any time dependent release of soil carbon. The soil carbon pools on cropland are not crop type specific. The release of nitrogen due to soil organic matter loss is not calculated. It is assumed that pastures and rangelands as well as managed forests do not change in soil carbon compared to the natural reference state.

Definitions

Objects

module-internal objects (A: cellpool_jan23 | B: static_jan19)
  Description Unit A B
f59_cratio_inputs
(climate59, inputs59)
Ratio of soil carbon relative to potential natural vegetation soil carbon for different input intensity \(1\) x
f59_cratio_irrigation
(climate59, w, kcr)
Ratio of soil carbon relative to potential natural vegetation soil carbon for different irrigation schemes \(1\) x
f59_cratio_landuse
(i, climate59_2019, kcr)
Ratio of soil carbon relative to potential natural vegetation soil carbon for different landuse \(1\) x
f59_cratio_tillage
(climate59, tillage59)
Ratio of soil carbon relative to potential natural vegetation soil carbon for different soil management \(1\) x
f59_cshare_released
(j)
Share of soil carbon that is released on cropland compared to natural vegetation after 20 years \(1\) x
f59_som_exogenous
(t_all, i, exo_scen59)
Nr released through changing soil organic matter x
f59_topsoilc_density
(t_all, j)
LPJ topsoil carbon density for natural vegetation \(tC/ha\) x x
i59_cratio
(j, kcr, w)
Ratio of carbon density of land relative to natural vegetaion \(1\) x
i59_cratio_fallow
(j)
Ratio of carbon density of fallow land relative to natural vegetation \(1\) x
i59_cratio_scm
(j)
Ratio of carbon density of cropland under soil carbon managament relative to natural vegetation \(1\) x
i59_cratio_treecover Ratio of carbon density of tree cover on cropland relative to natural vegetation \(1\) x
i59_input_share
(i, inputs59)
Share of land under input class \(1\) x
i59_lossrate
(t)
Rate of loss or recovery of SOM pool per timestep \(1\) x
i59_nr_som_exogenous_per_ha
(t_all, i)
Exogenous nr release due to som release per ha \(tN/ha\) x
i59_scm_scenario_fader
(t_all)
Cropland soil carbon management scenario fader \(1\) x
i59_scm_target
(t, j)
Target for the share of cropland under soil carbon managament \(1\) x
i59_subsoilc_density
(t_all, j)
Subsoil carbon density of a hectare of land \(tC/ha\) x x
i59_tillage_share
(i, tillage59)
Share of land under tillage class \(1\) x
i59_topsoilc_density
(t_all, j)
Topsoil carbon density of a hectare of cropland \(tC/ha\) x
p59_carbon_density
(t_all, j, land)
Soil carbon density of a hectare of land \(tC/ha\) x
p59_country_weight
(i)
Soil carbon management policy country weight per region \(1\) x
p59_scm_country_switch
(iso)
Switch indicating whether country is affected by selected soil carbon management policy \(1\) x
pc59_carbon_density
(j, land)
Soil carbon density of a hectare of land between time steps \(tC/ha\) x
pc59_land_before
(j, land)
Land area in previous time step \(10^6 ha\) x
pc59_som_pool
(j, land)
Actual C pool \(10^6 tC\) x
q59_carbon_soil
(j, land, stockType)
Soil carbon content calculation \(10^6 tC\) x
q59_cost_scm
(j)
Recurring cost for soil carbon management on cropland \(10^6 USD_{17MER}/yr\) x
q59_nr_som
(j)
Soil organic matter loss \(Mt N/yr\) x
q59_nr_som_fertilizer
(j)
Bound of nitrogen fertilizer of soil organic matter loss \(Mt N/yr\) x
q59_nr_som_fertilizer2
(j)
Fraction of soil organic matter loss take is taken up by plants \(Mt N/yr\) x
q59_soilcarbon_cropland
(j, stockType)
Cropland soil carbon content calculation \(10^6 tC\) x
q59_soilcarbon_other
(j, stockType)
Other land soil carbon content calculation \(10^6 tC\) x
q59_soilcarbon_regular
(j, regularland59, stockType)
Regular soil carbon content calculation \(10^6 tC\) x
q59_som_pool
(j, land)
Actual C pool \(10^6 tC\) x
q59_som_target_cropland
(j)
Estimates the long-term target state of cropland \(10^6 tC\) x
q59_som_target_noncropland
(j, noncropland59)
Estimates the long-term target state of noncropland \(10^6 tC\) x
s59_cost_scm_recur Soil carbon management recurring cost \(USD_{17MER}/ha\) x
s59_fader_functional_form Switch for functional form of faders \(1\) x
s59_nitrogen_uptake Maximum plant available nitrogen from soil organic matter loss \(tN/ha\) x
s59_scm_scenario_start Soil carbon management scenario start year x
s59_scm_scenario_target Soil carbon management scenario target year x
s59_scm_target Share of soil carbon management on total cropland in target year \(1\) x
s59_scm_target_noselect Share of soil carbon management on total cropland in target year \(1\) x
v59_som_pool
(j, land)
Soil organic matter pool \(10^6 tC\) x
v59_som_target
(j, land)
Long-term target state of C pool \(10^6 tC\) x

Sets

sets in use
  description
ac Age classes
c_pools Carbon pools
cell(i, j) number of LPJ cells per region i
clcl climate classification types
clcl_climate59(clcl, climate59) Climate classification types
climate59_2019 Climate classes of IPCC 2019
climate59(climate59_2019) Climate classes of IPCC 2006
ct(t) Current time period
exo_scen59 exogenous scenarios for soil organic matter loss
i all economic regions
i_to_iso(i, iso) mapping regions to iso countries
inputs59 Input management categories of IPCC
iso list of iso countries
j number of LPJ cells
j2(j) Spatial Clusters (dynamic set)
kcr(kve) Cropping activities
land Land pools
noncropland59(land) Soil carbon conserving landuse types
othertype35 Other land types
policy_countries59(iso) countries to be affected by SNV policy
regularland59(land) Soil carbon conserving landuse types
stockType Carbon stock types
t_all(t_ext) 5-year time periods
t(t_all) Simulated time periods
tillage59 Tillage categories of IPCC
type GAMS variable attribute used for the output
w Water supply type

Authors

Benjamin Leon Bodirsky, Kristine Karstens

See Also

09_drivers, 10_land, 11_costs, 29_cropland, 30_croparea, 35_natveg, 45_climate, 50_nr_soil_budget, 51_nitrogen, 52_carbon, 56_ghg_policy

References

Calvo Buendia, E., K. Tanabe, A. Kranjc, J. Baasansuren, M. Fukuda, S. Ngarize, A.Osako, Y. Pyrozhenko, P. Shermanau, and S. Federici (eds), eds. 2019. IPCC 2019, 2019 Refinement to the 2006 IPCC Guidelines for National Greenhouse Gas Inventories,” Published: IPCC, Switzerland.
IPCC. 2006. “2006 IPCC Guidelines for National Greenhouse Gas Inventories.” Edited by H. S. Eggleston, L. Buendia, K. Miwa, T. Ngara, and K. Tanabe. IGES, Japan: National Greenhouse Gas Inventories Programme.