Soil model configuration#

[See also the configuration details]

The Soil model configuration is used to provide:

  • Trait data on the microbial groups required for the soil model. The soil model requires a defined set of these groups, currently: saprotrophic_fungi, ectomycorrhiza, arbuscular_mycorrhiza, bacteria.

    These are currently configured directly in the TOML file using the soil.microbial_group_definition configuration option but this may move to loading from a CSV file using the soil.microbial_group_definition_path setting.

  • Enzyme kinetics data for the enzymes produced by the taxonomic groups. Data is required for each pair of the higher taxonomic groups of microbes (fungi or bacteria) and the enzyme substrates targeted in the model (particulate organic matter or mineral associated organic matter): (‘fungi’, ‘pom’), (‘bacteria’, ‘maom’), (‘bacteria’, ‘pom’), (‘fungi’, ‘maom’)

    These are currently configured directly in the TOML file using the soil.enzyme_class_definition configuration option but this may move to loading from a CSV file using the soil.enzyme_class_definition_path setting.

  • A set of soil model constants using the soil.constants configuration.

Soil microbial groups#

The soil microbial groups are defined as a set of traits associated with each of the required groups.

[soil.microbial_group_definition]
name = "bacteria"
taxonomic_group = "bacteria"
max_uptake_rate_labile_C = 0.04
activation_energy_uptake_rate = 47000.0
half_sat_labile_C_uptake = 0.364
activation_energy_uptake_saturation = 30000.0
max_uptake_rate_ammonium = 0.005
half_sat_ammonium_uptake = 0.02275
max_uptake_rate_nitrate = 0.0005
half_sat_nitrate_uptake = 0.02275
max_uptake_rate_labile_p = 0.0025
half_sat_labile_p_uptake = 0.02275
turnover_rate = 0.005
activation_energy_turnover = 20000.0
reference_temperature = 12.0
c_n_ratio = 5.2
c_p_ratio = 16.0
reproductive_allocation = 0.0
symbiote_nitrogen_uptake_fraction = 0.0
symbiote_phosphorus_uptake_fraction = 0.0

[soil.microbial_group_definition.enzyme_production]
pom = 0.005
maom = 0.005
soil.microbial_group_definition.name

The name of the microbial group functional type. Default = bacteria

soil.microbial_group_definition.taxonomic_group

The high level taxonomic group that the microbial group belongs to. Default = bacteria

soil.microbial_group_definition.max_uptake_rate_labile_C

Maximum rate at the reference temperature of labile carbon uptake [day^-1]. Default = 0.04

soil.microbial_group_definition.activation_energy_uptake_rate

Activation energy for nutrient uptake [J Kelvin^-1]. Default = 47000

soil.microbial_group_definition.half_sat_labile_C_uptake

Half saturation constant for uptake of labile carbon (LMWC) [kg{C} m^-3]. Default = 0.364

soil.microbial_group_definition.activation_energy_uptake_saturation

Activation energy for nutrient uptake saturation constants [J Kelvin^-1]. Default = 30000

soil.microbial_group_definition.max_uptake_rate_ammonium

Maximum possible rate for ammonium uptake [day^-1]. Default = 0.005

soil.microbial_group_definition.half_sat_ammonium_uptake

Half saturation constant for uptake of ammonium [kg{N} m^-3]. Default = 0.02275

soil.microbial_group_definition.max_uptake_rate_nitrate

Maximum possible rate for nitrate uptake [day^-1]. Default = 0.0005

soil.microbial_group_definition.half_sat_nitrate_uptake

Half saturation constant for uptake of nitrate [kg{N} m^-3]. Default = 0.02275

soil.microbial_group_definition.max_uptake_rate_labile_p

Maximum possible rate for labile inorganic phosphorus uptake [day^-1]. Default = 0.0025

soil.microbial_group_definition.half_sat_labile_p_uptake

Half saturation constant for uptake of labile inorganic phosphorus [kg{P} m^-3]. Default = 0.02275

soil.microbial_group_definition.turnover_rate

Microbial maintenance turnover rate at reference temperature [day^-1]. Default = 0.005

soil.microbial_group_definition.activation_energy_turnover

Activation energy for microbial maintenance turnover rate [J Kelvin^-1]. Default = 20000

soil.microbial_group_definition.reference_temperature

The temperature that turnover and uptake rates were measured at [Celsius]. Default = 12.0

soil.microbial_group_definition.c_n_ratio

Ratio of carbon to nitrogen in biomass [unitless]. Default = 5.2

soil.microbial_group_definition.c_p_ratio

Ratio of carbon to phosphorus in biomass [unitless]. Default = 16

soil.microbial_group_definition.enzyme_production

Details of the enzymes produced by the microbial group. The keys are the substrates for which enzymes are produced, and the values are the allocation to enzyme production. This allocation is expressed as a fraction of the (gross) cellular biomass growth. Default = {‘pom’: 0.005, ‘maom’: 0.005}

soil.microbial_group_definition.reproductive_allocation

Reproductive allocation as fraction of (gross) cellular biomass growth [unitless] Only fungi generate separate reproductive bodies, so this value must be set to zero for bacterial functional groups. Providing a non-zero value for a bacterial functional group will prevent the soil model from configuring. Default = 0.0

soil.microbial_group_definition.symbiote_nitrogen_uptake_fraction

Fraction of nitrogen uptake that is supplied to symbiotic (plant) partners. [unitless]. This should only have a non-zero value for mycorrhizal fungi. Default = 0.0

soil.microbial_group_definition.symbiote_phosphorus_uptake_fraction

Fraction of nitrogen uptake that is supplied to symbiotic (plant) partners. [unitless]. This should only have a non-zero value for mycorrhizal fungi. Default = 0.0

Soil enzyme classes#

The soil enzyme classes are defined as a set of traits associated with each pair of higher taxon and substrate

[soil.enzyme_class_definition]
source = "bacteria"
substrate = "pom"
maximum_rate = 60.0
half_saturation_constant = 70.0
activation_energy_rate = 37000.0
activation_energy_saturation = 30000.0
reference_temperature = 12.0
turnover_rate = 0.024
c_n_ratio = 5.2
c_p_ratio = 16.0
soil.enzyme_class_definition.source

The higher microbial group which produces the enzyme. Default = bacteria

soil.enzyme_class_definition.substrate

The substrate which the enzyme acts upon. Default = pom

soil.enzyme_class_definition.maximum_rate

The maximum rate of the enzyme at the reference temperature [day^-1]. Default = 60.0

soil.enzyme_class_definition.half_saturation_constant

The half saturation constant for the enzyme at the reference temperature. Units of [kg{C} m^-3]. Default = 70.0

soil.enzyme_class_definition.activation_energy_rate

Activation energy for enzyme rate with temperature [J Kelvin^-1]. Default = 37000

soil.enzyme_class_definition.activation_energy_saturation

Activation energy for enzyme saturation with temperature [J Kelvin^-1]. Default = 30000

soil.enzyme_class_definition.reference_temperature

The temperature that enzyme rate and saturation were measured at [Celsius]. Default = 12.0

soil.enzyme_class_definition.turnover_rate

The turnover rate of the enzyme [day^-1]. Default = 0.024

soil.enzyme_class_definition.c_n_ratio

Ratio of carbon to nitrogen for the enzyme [unitless]. Default = 5.2

soil.enzyme_class_definition.c_p_ratio

Ratio of carbon to phosphorus for the enzyme [unitless]. Default = 16

Soil constants#

[soil.constants]
reference_cue_logit = 0.094
cue_reference_temp = 20.0
logit_cue_with_temperature = -0.039
soil_microbe_water_potential_optimum = -3.0
soil_microbe_water_potential_halt = -15800.0
microbial_water_response_curvature = 1.47
min_pH_microbes = 2.5
lowest_optimal_pH_microbes = 4.5
highest_optimal_pH_microbes = 7.5
max_pH_microbes = 11.0
base_soil_protection = 0.694
soil_protection_with_clay = 1.36
solubility_coefficient_lmwc = 0.05
solubility_coefficient_ammonium = 0.05
solubility_coefficient_nitrate = 1.0
solubility_coefficient_labile_p = 0.005
necromass_decay_rate = 0.23104906018664842
maom_desorption_rate = 1e-05
lmwc_sorption_rate = 0.001
necromass_sorption_rate = 0.6931471805599453
litter_leaching_fraction_carbon = 0.0015
litter_leaching_fraction_nitrogen = 0.0015
litter_leaching_fraction_phosphorus = 0.0001
organic_proportion_litter_nitrogen_leaching = 1.0
organic_proportion_litter_phosphorus_leaching = 1.0
ammonium_mineralisation_proportion = 0.9
tectonic_uplift_rate_phosphorus = 0.0
ammonia_volatilisation_rate_constant = 8.64e-05
nitrification_rate_constant = 0.08639999999999999
denitrification_rate_constant = 0.21600000000000003
nitrification_optimum_temperature = 311.15
nitrification_maximum_temperature = 343.15
nitrification_thermal_sensitivity = 12
denitrification_infinite_temperature_factor = 93.34598
denitrification_minimum_temperature = 227.12999999999997
denitrification_thermal_sensitivity = 308.56
nitrogen_fixation_cost_zero_celcius = 59.19651970522086
nitrogen_fixation_cost_infinite_temp_offset = -0.8034802947791453
nitrogen_fixation_cost_thermal_sensitivity = 0.27
nitrogen_fixation_cost_equality_temperature = 50.28
free_living_N_fixation_reference_rate = 4.106776180698152e-06
free_living_N_fixation_reference_temp = 293.15
free_living_N_fixation_q10_coefficent = 3.0
primary_phosphorus_breakdown_rate = 2.2831050228310502e-07
secondary_phosphorus_breakdown_rate = 7.407407407407407e-05
labile_phosphorus_sorption_rate = 0.0016666666666666668
ammonium_deposition_rate = 4.1067761806981517e-07
phosphorus_deposition_rate = 1.3689253935660508e-08
nitrogen_fixer_supply_fraction = 0.3
ectomycorrhiza_supply_fraction = 0.25
soil.constants.reference_cue_logit

Logit of carbon use efficiency of microbial community at reference temperature [unitless]. Parameter estimated from a beta-logit GLMM using the data from Qiao et al. (2019). Default = 0.094

soil.constants.cue_reference_temp

Reference temperature for carbon use efficiency [Celsius]. Default value taken from Qiao et al. (2019). Default = 20.0

soil.constants.logit_cue_with_temperature

Change in the logit of carbon use efficiency with unit increase in temperature [Celsius^-1]. Parameter estimated from a beta-logit GLMM using the data from Qiao et al. (2019). Default = -0.039

soil.constants.soil_microbe_water_potential_optimum

The water potential at which soil microbial rates are maximised [kPa]. Value is taken from Moyano et al. (2013). Default = -3.0

soil.constants.soil_microbe_water_potential_halt

The water potential at which soil microbial activity stops entirely [kPa]. Value is taken from Moyano et al. (2013). Default = -15800.0

soil.constants.microbial_water_response_curvature

Curvature of function for response of soil microbial rates to water potential [unitless]. Value is taken from Moyano et al. (2013). Default = 1.47

soil.constants.min_pH_microbes

Soil pH below which microbial activity is completely inhibited [unitless]. This value cannot be larger than SoilConstants.lowest_optimal_pH_microbes. The default value was obtained by averaging the fungi and bacteria specific values given in Orwin et al. (2011). Default = 2.5

soil.constants.lowest_optimal_pH_microbes

Soil pH above which microbial activity is not inhibited at all [unitless]. This value cannot be smaller than SoilConstants.min_pH_microbes or larger than SoilConstants.highest_optimal_pH_microbes. The default value was obtained by averaging the fungi and bacteria specific values given in Orwin et al. (2011). Default = 4.5

soil.constants.highest_optimal_pH_microbes

Soil pH below which microbial activity is not inhibited at all [unitless]. This value cannot be smaller than SoilConstants.lowest_optimal_pH_microbes or larger than SoilConstants.max_pH_microbes. The default value was obtained by averaging the fungi and bacteria specific values given in Orwin et al. (2011). Default = 7.5

soil.constants.max_pH_microbes

Soil pH above which microbial activity is completely inhibited [unitless]. This value cannot be smaller than SoilConstants.highest_optimal_pH_microbes. The default value was obtained by averaging the fungi and bacteria specific values given in Orwin et al. (2011). Default = 11.0

soil.constants.base_soil_protection

Basal change in saturation constants due to soil structure [unitless]. This value is multiplicative and is taken from Fatichi et al. (2019). Default = 0.694

soil.constants.soil_protection_with_clay

Rate at which soil protection of carbon increases with clay content [unitless]. This protection contributes multiplicatively to the effective saturation constant. The value of this constant is taken from Fatichi et al. (2019). Default = 1.36

soil.constants.solubility_coefficient_lmwc

Solubility coefficient for low molecular weight organic carbon [unitless]. Value taken from Fatichi et al. (2019), where it is estimated in quite a loose manner. Default = 0.05

soil.constants.solubility_coefficient_ammonium

Solubility coefficient for ammonium in soil [unitless]. Value taken from Fatichi et al. (2019), where it is estimated in quite a loose manner. Default = 0.05

soil.constants.solubility_coefficient_nitrate

Solubility coefficient for nitrate in soil [unitless]. Value taken from Fatichi et al. (2019), where it is estimated in quite a loose manner. Default = 1.0

soil.constants.solubility_coefficient_labile_p

Solubility coefficient for labile inorganic phosphorus [unitless]. Value taken from Fatichi et al. (2019), where it is estimated in quite a loose manner. Default = 0.005

soil.constants.necromass_decay_rate

Rate at which microbial necromass decays to low molecular weight carbon [day^-1]. I have not been able to track down any data on this, so for now choosing a rate that corresponds to halving every three days. This parameter is a key target for tracking down data for and for sensitivity analysis. Default = 0.23104906018664842

soil.constants.maom_desorption_rate

Rate constant for mineral associated organic matter desorption [day^-1]. The default value of this rate is not based on data. It was instead chosen to be small relative to the rate at which microbes breakdown LMWC. This is another key target for sensitivity analysis. Default = 1e-05

soil.constants.lmwc_sorption_rate

Rate constant for low molecular weight carbon sorption to minerals [day^-1]. The default value of this rate is not based on data. It was instead chosen so that the ratio of :term:LMWC to :term:MAOM would tend to 1/100, in the absence of microbes. This is another key target for sensitivity analysis. Default = 0.001

soil.constants.necromass_sorption_rate

Rate constant for necromass sorption to minerals [day^-1]. The default value was chosen to be three times the value of SoilConstants.necromass_decay_rate, this means that 75% of necromass becomes MAOM with the remainder becoming LMWC. Replacing this with a function that depends on environmental conditions is a post release goal. Default = 0.6931471805599453

soil.constants.litter_leaching_fraction_carbon

Fraction of carbon mineralisation from litter that occurs by leaching [unitless]. The remainder of the mineralisation consists of particulates. Value is an order of magnitude estimate taken from Fatichi et al. (2019). Default = 0.0015

soil.constants.litter_leaching_fraction_nitrogen

Fraction of nitrogen mineralisation from litter that occurs by leaching. [unitless]. The remainder of the mineralisation consists of particulates. Value is an order of magnitude estimate taken from Fatichi et al. (2019). Default = 0.0015

soil.constants.litter_leaching_fraction_phosphorus

Fraction of phosphorus mineralisation from litter that occurs by leaching. [unitless]. The remainder of the mineralisation consists of particulates. Value is an order of magnitude estimate taken from Fatichi et al. (2019). Default = 0.0001

soil.constants.organic_proportion_litter_nitrogen_leaching

Fraction of leached nitrogen from litter mineralisation that is organic form. [unitless]. The remainder of the leaching consists of ammonium. Value is taken from Fatichi et al. (2019), where it is assumed that nitrogen leaches from litter solely in organic form. Default = 1.0

soil.constants.organic_proportion_litter_phosphorus_leaching

Fraction of leached phosphorus from litter mineralisation that is organic form. [unitless]. The remainder of the leaching consists of inorganic phosphorus. Value is taken from Fatichi et al. (2019), where it is assumed that phosphorus leaches from litter solely in organic form. Default = 1.0

soil.constants.ammonium_mineralisation_proportion

Proportion of microbially mineralised nitrogen that takes the form of ammonium. [unitless]. The remainder gets mineralised as nitrate. Estimate taken from Fatichi et al. (2019), but the way it was obtained wasn’t made particularly clear. Default = 0.9

soil.constants.tectonic_uplift_rate_phosphorus

Rate at which tectonic uplift exposes new primary phosphorus [kg{P} m^-3 day^-1]. This rate is essentially zero for decadal simulations. We have only included to give the flexibility to run longer term test scenarios. Default = 0.0

soil.constants.ammonia_volatilisation_rate_constant

Rate constant for ammonia volatilisation from ammonium [day^-1]. Following Dickinson et al. (2002), linear kinetics are assumed. We also take our default value from there. Default = 8.64e-05

soil.constants.nitrification_rate_constant

Rate constant for nitrification from ammonium [day^-1]. Following Dickinson et al. (2002), linear kinetics are assumed. We also take our default value from there. Default = 0.08639999999999999

soil.constants.denitrification_rate_constant

Rate constant for denitrification from nitrate [day^-1]. Following Dickinson et al. (2002), linear kinetics are assumed. We also take our default value from there. Default = 0.21600000000000003

soil.constants.nitrification_optimum_temperature

Soil temperature at which nitrification is maximised [Kelvin]. Value taken from Xu-Ri and Prentice (2008). This value should not be varied independently of SoilConstants.nitrification_maximum_temperature and SoilConstants.nitrification_thermal_sensitivity! Default = 311.15

soil.constants.nitrification_maximum_temperature

Temperature at which our empirical nitrification model stops working [Kelvin]. This is well outside field values so this should be too much of a problem. Value taken from Xu-Ri and Prentice (2008). This value should not be varied independently of SoilConstants.nitrification_optimum_temperature and SoilConstants.nitrification_thermal_sensitivity! Default = 343.15

soil.constants.nitrification_thermal_sensitivity

Sensitivity of nitrification rate to changes in temperature [unitless]. Value taken from Xu-Ri and Prentice (2008). This value should not be varied independently of SoilConstants.nitrification_optimum_temperature and SoilConstants.nitrification_maximum_temperature! Default = 12

soil.constants.denitrification_infinite_temperature_factor

Denitrification temperature factor at infinite temperature [unitless]. Value is obtained from Xu-Ri and Prentice (2008), by taking the exponential of the constant part of the expression. This value should not be varied independently of SoilConstants.denitrification_minimum_temperature and SoilConstants.denitrification_thermal_sensitivity! Default = 93.34598

soil.constants.denitrification_minimum_temperature

Temperature at which denitrification stops entirely [Kelvin]. Value is obtained from Xu-Ri and Prentice (2008), and converted to Kelvin. The expression we are using does not function below this temperature, but this is not a major problem as it is a very low temperature. This value should not be varied independently of SoilConstants.denitrification_infinite_temperature_factor and SoilConstants.denitrification_thermal_sensitivity! Default = 227.12999999999997

soil.constants.denitrification_thermal_sensitivity

Sensitivity of denitrification rate to changes in temperature [Kelvin]. Value is obtained from Xu-Ri and Prentice (2008). This value should not be varied independently of SoilConstants.denitrification_infinite_temperature_factor and SoilConstants.denitrification_minimum_temperature! Default = 308.56

soil.constants.nitrogen_fixation_cost_zero_celcius

Cost (in carbon) that plants pay to their symbiotic partners at zero Celsius [kg{C} kg{N}^-1]. This is cost per unit of nitrogen received, and will be higher than the symbiotic partners actually spend to fix the nitrogen. Value is obtained from Brzostek et al. (2014). Default = 59.19651970522086

soil.constants.nitrogen_fixation_cost_infinite_temp_offset

Difference in nitrogen fixation cost between zero Celsius and infinite limit. Units of [kg{C} kg{N}^-1]. This limit of infinite temperature is not biologically meaningful and is instead just a way of characterising the form of the empirical function. A negative value means that the cost in the infinite temperature limit is higher than at zero Celsius. Value is obtained from Brzostek et al. (2014). Default = -0.8034802947791453

soil.constants.nitrogen_fixation_cost_thermal_sensitivity

Sensitivity of symbiotic nitrogen fixation cost to changes in temperature [Celsius^-1]. Value is obtained from Brzostek et al. (2014). Default = 0.27

soil.constants.nitrogen_fixation_cost_equality_temperature

Positive temperature at which nitrogen fixation cost is the same at zero Celsius. [Celsius]. Value is obtained from Brzostek et al. (2014). Default = 50.28

soil.constants.free_living_N_fixation_reference_rate

Rate at which free living microbes fix nitrogen (at the reference temperature). Units of [kg{N} m^-2 day^-1]. Value specific to tropical forests, and is taken from Lin et al. (2000) (with the units adjusted). Should not be changed independently from SoilConstants.free_living_N_fixation_reference_temp. Default = 4.106776180698152e-06

soil.constants.free_living_N_fixation_reference_temp

Temperature reference rate of free-living nitrogen fixation was measured at [Kelvin]. Value taken from Lin et al. (2000). Should not be changed independently from SoilConstants.free_living_N_fixation_reference_rate. Default = 293.15

soil.constants.free_living_N_fixation_q10_coefficent

Q10 coefficient for free-living fixation of nitrogen [unitless]. Value taken from Lin et al. (2000). Default = 3.0

soil.constants.primary_phosphorus_breakdown_rate

Rate constant for breakdown of primary phosphorus to labile phosphorus [day^-1]. Default value taken from Parton et al. (1988). Default = 2.2831050228310502e-07

soil.constants.secondary_phosphorus_breakdown_rate

Rate constant for breakdown of secondary mineral to labile phosphorus [day^-1]. Default value taken from Parton et al. (1988). Default = 7.407407407407407e-05

soil.constants.labile_phosphorus_sorption_rate

Rate constant for sorption of labile phosphorus to secondary mineral phosphorus [day^-1]. Default value taken from Parton et al. (1988). Default = 0.0016666666666666668

soil.constants.ammonium_deposition_rate

Rate at which ammonium is deposited into the system [kg{N} m^-2 day^-1]. We are assuming that deposition rates won’t vary substantially over the area the simulation encompasses. Value taken from Vet et al. (2014). Default = 4.1067761806981517e-07

soil.constants.phosphorus_deposition_rate

Rate at which phosphorus is deposited into the system [kg{P} m^-2 day^-1]. We are assuming that deposition rates won’t vary substantially over the area the simulation encompasses. Value taken from Mahowald et al. (2008). Default = 1.3689253935660508e-08

soil.constants.nitrogen_fixer_supply_fraction

Fraction of carbon supplied by plants to symbiotes that goes to nitrogen fixers. [unitless]. The remainder goes to mycorrhizal fungi. Default = 0.3

soil.constants.ectomycorrhiza_supply_fraction

Fraction of plant carbon supply to mycorrhizal fungi that goes to ectomycorrhiza. [unitless]. The remainder goes to arbuscular mycorrhizal fungi. Default = 0.25