Class AMPSom
java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.soil.ampsom.AMPSom
- All Implemented Interfaces:
net.simplace.sim.util.FWSimFieldContainer
public class AMPSom
extends net.simplace.sim.model.FWSimComponent
A measureable pool soil organic carbon and nitrogen model
The model is described in the paper of Tougma, 2025 - see references.
In order to couple the SimComponent with other SimComponents, the use of AMPSomAuxiliary might be helpful.
Notice regarding numerics: The model is defined by ordinary differential equations but the SimComponent interacts only on daily steps with other SimComponents. Therefore the SimComponent uses internally a time step of 1 and explicit Runge-Kutta method with 4 substeps (rk4).
References
Tougma, I. A. et al, AMPSOM: A measureable pool soil organic carbon and nitrogen model for arable cropping systems, Environmental Modeling & Software, 2025, doi:doi.org/10.1016/j.envsoft.2024.106291
- Author:
- Gunther Krauss, Inès Tougma
Component Variables
| Content Type | Name | Description | Data Type | Unit | Min Value | Max Value | Default Value |
|---|---|---|---|---|---|---|---|
| constant | cBulkDensity | Each layer bulk density | DOUBLEARRAY | g/cm3 | - | - | - |
| constant | cC12Co2Initial | The 12C amount of the CO2 produiced by microbes | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC12DomInitial | The 12C amount of the DOM pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC12MaomDomInitial | The 12C amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC12MaomNecromassInitial | The 12C amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC12MicrobesInitial | The 12C amount of the microbial pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC12NecromassInitial | The 12C amount of the necromass pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC12PomInitial | The 12C amount of the POM pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC14Co2Initial | The 14C amount of the CO2 produiced by microbes | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC14DomInitial | The 14C amount of the DOM dool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC14MaomDomInitial | The 14C amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC14MaomNecromassInitial | The 14C amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC14MicrobesInitial | The 14C amount of the microbial pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC14NecromassInitial | The 14C amount of the necromass pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cC14PomInitial | The 14C amount of the POM pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cCN12FreeMicrob | - | DOUBLE | - | - | 8.0 | |
| constant | cClayPercentage | percent of clay in each layer | DOUBLEARRAY | % | - | - | - |
| constant | cCue | Microbes' carbon use efficiency | DOUBLE | - | - | 0.4 | |
| constant | cD13CAtmosphere | Ratio of 12C over 13C in athmospheric CO2 | DOUBLE | - | - | -8.0 | |
| constant | cD13CBgVeg | Ratio of 12C over 13C in below-ground vegetation | DOUBLE | - | - | -26.5 | |
| constant | cD13CRhizodeposits | Ratio of 12C over 13C in rhizodeposition | DOUBLE | - | - | -26.5 | |
| constant | cDb0 | - | DOUBLE | - | - | 3.14E-8 | |
| constant | cDbEFoldDepth | - | DOUBLE | - | - | 0.147 | |
| constant | cExudationDist | - | DOUBLE | - | - | 2.0 | |
| constant | cExudationK | - | DOUBLE | - | - | 1.5 | |
| constant | cFineRootBeta | - | DOUBLE | - | - | 0.8932318 | |
| constant | cKAdsDom | Affinity of minerals for DOC | DOUBLE | g/m3 | - | - | 0.08654371 |
| constant | cKAdsNecro | Affinity of Minerals for necromass C | DOUBLE | g/m3 | 0.02 | 20.0 | 2.0 |
| constant | cKDesDom | Constant parameter for MAOM-DOC desorption | DOUBLE | d-1 | 1.0E-8 | 1.0E-5 | 1.0E-7 |
| constant | cKDesNecro | Constant parameter for necromass desorption | DOUBLE | d-1 | 2.0E-8 | 2.0E-5 | 2.0E-7 |
| constant | cKDom | Affinity of microbes (enzymes) for dissolved organic carbon (DOC) as a ratio of microbes carbon content over DOC | DOUBLE | g/m3 | 0.002 | 0.2 | 0.02 |
| constant | cKMic | Carrying capacity of microbes as percentage of total C | DOUBLE | % | - | - | 0.05 |
| constant | cKMicDom | - | DOUBLE | - | - | 0.864 | |
| constant | cKNecro | Affinity of microbes for necromass C depolymerisation | DOUBLE | g/m3 | 0.04 | 40.0 | 4.0 |
| constant | cKPom | Affinity of microbes (enzymes) for particulate organic carbon (POC)as a ratio of microbes carbon content over POC | DOUBLE | 0.001 | 0.1 | 0.01 | |
| constant | cKSWC | moisture constant reflecting the impact of water content on soil-adsorbed organic carbon (SOC) desorption | DOUBLEARRAY | - | - | - | |
| constant | cLitterInfluencedDepth | - | DOUBLE | m | - | - | 0.4 |
| constant | cNDomInitial | The N amount of the DOM pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cNMaomDomInitial | The N amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cNMaomNecromassInitial | The N amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cNMicrobesC | Microbes' C/N ratio | DOUBLE | - | - | 8.0 | |
| constant | cNMicrobesInitial | The N amount of the microbial pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cNMinInitial | The mineral nitrogen | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cNNecromassInitial | The N amount of the necromass pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cNPomInitial | The N amount of the POM pool | DOUBLEARRAY | g/m2 | - | - | - |
| constant | cNs | A saturation exponent reflecting the effects of pore connectivity on dissolved organic carbon (DOC) diffusion | DOUBLEARRAY | - | - | - | |
| constant | cNue | Microbes' nitrogen use efficiency | DOUBLE | - | - | 0.9 | |
| constant | cOptSWC | The optimal Soil Water Content | DOUBLEARRAY | % | - | - | - |
| constant | cPorosity | The soil porosity | DOUBLEARRAY | - | - | - | |
| constant | cSiltPercentage | percent of silt in each layer | DOUBLEARRAY | % | - | - | - |
| constant | cSoilLayerDepth | Bottom depth of each soil layer | DOUBLEARRAY | m | - | - | - |
| constant | cSurfInitial | - | DOUBLEARRAY | - | - | - | |
| constant | cVAdsDom | Maximum fractions of DOC that can be adsorbed per day | DOUBLE | d-1 | 0.05 | 0.5 | 0.1 |
| constant | cVAdsNecro | Maximum fractions of necromass C that can be adsorbed per day | DOUBLE | d-1 | 0.09 | 0.6 | 0.2 |
| constant | cVDom | Maximum fraction of dissolved organic matter (DOC) that can be up taken by microbes per day | DOUBLE | d-1 | 0.05 | 0.5 | 0.1 |
| constant | cVNecro | Maximum fractions of necromass C that can be depolymerized per day | DOUBLE | d-1 | 0.05 | 0.5 | 0.1 |
| constant | cVPom | Maximum fractions of POC that can be depolymerized per day | DOUBLE | d-1 | 0.05 | 0.5 | 0.1 |
| input | iC12DomFlow | Vertical movement of dissolved C12 | DOUBLEARRAY | g/(m2 d) | - | - | - |
| input | iC14DomFlow | Vertical movement of dissolved C14 | DOUBLEARRAY | g/(m2 d) | - | - | - |
| input | iCDomRateFromLitter | C from litter that enters DOM pools in upper layers | DOUBLE | g/(m2 d) | - | - | 0.0 |
| input | iCPomRateFromLitter | C from litter that enters POM pools in upper layers | DOUBLE | g/(m2 d) | - | - | 0.0 |
| input | iD14Atmosphere | - | DOUBLE | - | - | - | |
| input | iFineRootLength | fine root length | DOUBLE | metre | - | - | 5.4 |
| input | iFineRootLengthPerLayer | fine root length per layer | DOUBLEARRAY | metre | - | - | - |
| input | iInputBelowGroundC | Dead roots C | DOUBLEARRAY | g/m2 | - | - | - |
| input | iInputBelowGroundN | Dead roots N | DOUBLEARRAY | g/m2 | - | - | - |
| input | iInputRhizodepositionC | Rhizodeposits C | DOUBLEARRAY | g/m2 | - | - | - |
| input | iInputRhizodepositionN | Rhizodeposits N | DOUBLEARRAY | g/m2 | - | - | - |
| input | iNDomFlow | Vertical movement of dissolved organic N | DOUBLEARRAY | g/(m2 d) | - | - | - |
| input | iNDomRateFromLitter | N from litter that enters DOM pools in upper layers | DOUBLE | g/(m2 d) | - | - | 0.0 |
| input | iNMinExternalRate | - | DOUBLEARRAY | g/(m2 d) | - | - | - |
| input | iNPomRateFromLitter | N from litter that enters POM pools in upper layers | DOUBLE | g/(m2 d) | - | - | 0.0 |
| input | iSWC | The average daily Soil Water Content (SWC) | DOUBLEARRAY | % | - | - | - |
| input | iTemp | The average daily soil temperature | DOUBLEARRAY | °C | - | - | - |
| state | sC12Co2 | The 12C amount of the CO2 produiced by microbes | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC12Dom | The 12C amount of the DOM pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC12MaomDom | The 12C amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC12MaomNecromass | The 12C amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC12Microbes | The 12C amount of the microbial pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC12Necromass | The 12C amount of the necromass pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC12Pom | The 12C amount of the POM pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC14Co2 | The 14C amount of the CO2 produiced by microbes | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC14Dom | The 14C amount of the DOM dool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC14MaomDom | The 14C amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC14MaomNecromass | The 14C amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC14Microbes | The 14C amount of the microbial pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC14Necromass | The 14C amount of the necromass pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sC14Pom | The 14C amount of the POM pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sGrossMineralisation | Gross N mineralisation | DOUBLEARRAY | g/m2 | - | - | - |
| state | sImmobilisation | N immobilisation | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNDom | The N amount of the DOM pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNMaomDom | The N amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNMaomNecromass | The N amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNMicrobes | The N amount of the microbial pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNMin | The mineral nitrogen | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNNecromass | The N amount of the necromass pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNPom | The N amount of the POM pool | DOUBLEARRAY | g/m2 | - | - | - |
| state | sNetMineralisation | Net N mineralisation (gross mineralisation - immobilisation) | DOUBLEARRAY | g/m2 | - | - | - |
| state | sSurf | - | DOUBLEARRAY | - | - | - | |
| rate | rC12Co2Rate | The variation per day of the 12C amount of the CO2 produiced by microbes | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC12DomRate | The variation per day of the 12C amount of the DOM dool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC12MaomDomRate | The variation per day of the 12C amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC12MaomNecromassRate | The variation per day of the 12C amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC12MicrobesRate | The variation per day of the 12C amount of the microbial pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC12NecromassRate | The variation per day of the 12C amount of the necromass pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC12PomRate | The variation per day of the 12C amount of the POM pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC14Co2Rate | The variation per day of the 14C amount of the CO2 produiced by microbes | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC14DomRate | The variation per day of the 14C amount of the DOM dool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC14MaomDomRate | The variation per day of the 14C amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC14MaomNecromassRate | The variation per day of the 14C amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC14MicrobesRate | The variation per day of the 14C amount of the microbial pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC14NecromassRate | The variation per day of the 14C amount of the necromass pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rC14PomRate | The variation per day of the 14C amount of the POM pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rGrossMineralisationRate | Gross N mineralisation per day | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rImmobilisationRate | N immobilisation per day | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNDomRate | The variation per day of the N amount of the DOM dool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNMaomDomRate | The variation per day of the N amount of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNMaomNecromassRate | The variation per day of the N amount of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNMicrobesRate | The variation per day of the N amount of the microbial pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNMinRate | The mineral nitrogen change per day | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNNecromassRate | The variation per day of the N amount of the Necromass pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNPomRate | The variation per day of the N amount of the POM pool | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rNetMineralisationRate | Net N mineralisation per day (gross mineralisation - immobilisation) | DOUBLEARRAY | g/(m2 d) | - | - | - |
| rate | rSurfRate | - | DOUBLEARRAY | - | - | - | |
| out | DomCN | The C/N ratio of the DOM pool | DOUBLEARRAY | 1 | - | - | - |
| out | MaomDomCN | The C/N ratio of the mineral-associated organic matter coming from DOM adsorption | DOUBLEARRAY | 1 | - | - | - |
| out | MaomNecromassCN | The C/N ratio of the mineral-associated organic matter coming from necromass adsorption | DOUBLEARRAY | 1 | - | - | - |
| out | MicrobesCN | The C/N ratio of the microbial pool | DOUBLEARRAY | 1 | - | - | - |
| out | NecromassCN | The C/N ratio of the necromass pool | DOUBLEARRAY | 1 | - | - | - |
| out | PomCN | The C/N ratio of the POM pool | DOUBLEARRAY | 1 | - | - | - |
| out | RhizosphereVolumeFraction | The fraction of soil influenced by the rhizosphere, Calculted following Finzi et al. (2018) | DOUBLEARRAY | 1 | - | - | - |
| out | SoilMassArray | The mass of soil in every layer, it is calculated in the model | DOUBLEARRAY | kg | - | - | - |
-
Nested Class Summary
Nested classes/interfaces inherited from class net.simplace.sim.model.FWSimComponent
net.simplace.sim.model.FWSimComponent.TEST_STATE -
Field Summary
Fields inherited from class net.simplace.sim.model.FWSimComponent
iFieldMap, iFrequence, iInputMap, iJexlRule, iMasterComponentGroup, iName, iOrderNumber, isComponentGroup, iSimComponentElement, iSimModel, iVarMap -
Constructor Summary
ConstructorsConstructorDescriptionAMPSom()Empty constructor used by class.forName()AMPSom(String aName, HashMap<String, net.simplace.sim.util.FWSimVariable<?>> aFieldMap, HashMap<String, String> aInputMap, org.jdom2.Element aSimComponentElement, net.simplace.sim.util.FWSimVarMap aVarMap, int aOrderNumber) Constructor -
Method Summary
Modifier and TypeMethodDescriptionprotected net.simplace.sim.model.FWSimComponentclone(net.simplace.sim.util.FWSimVarMap aVarMap) creates a clone from this SimComponent for use in other threadsfillTestVariables(int aParamIndex, net.simplace.sim.model.FWSimComponent.TEST_STATE aDefineOrCheck) called for single component test to check the components algorithm.protected voidinit()protected voidprocess()Methods inherited from class net.simplace.sim.model.FWSimComponent
addVariable, bind, checkCondition, createSimComponent, createSimComponent, createSimComponent, createSimComponent, doProcess, getConstantVariables, getContentType, getCreateFormXML, getDescription, getEditFormXML, getFieldMap, getFrequence, getFrequenceRuleScript, getInputs, getInputVariables, getMasterComponentGroup, getName, getOrderNumber, getOutputVariables, getVariable, getVariableField, getVarMap, initialize, isConditionCheck, isVariableAvailable, performLinks, performLinks, readInputs, removeVariable, reset, runComponentTest, setVariablesDefault, toComponentLinkingXML, toDocXML, toGroupXML, toOutputDefinitionXML, toResourcesDataXML, toResourcesDefinitionXML, toString, toXML, writeVarInfos
-
Constructor Details
-
AMPSom
public AMPSom(String aName, HashMap<String, net.simplace.sim.util.FWSimVariable<?>> aFieldMap, HashMap<String, String> aInputMap, org.jdom2.Element aSimComponentElement, net.simplace.sim.util.FWSimVarMap aVarMap, int aOrderNumber) Constructor- Parameters:
aName-aFieldMap-aInputMap-aSimComponentElement-aVarMap-aOrderNumber-
-
AMPSom
public AMPSom()Empty constructor used by class.forName()
-
-
Method Details
-
createVariables
- Specified by:
createVariablesin interfacenet.simplace.sim.util.FWSimFieldContainer- Specified by:
createVariablesin classnet.simplace.sim.model.FWSimComponent- See Also:
-
init
protected void init()- Specified by:
initin classnet.simplace.sim.model.FWSimComponent- See Also:
-
process
protected void process()- Specified by:
processin classnet.simplace.sim.model.FWSimComponent- See Also:
-
fillTestVariables
public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> fillTestVariables(int aParamIndex, net.simplace.sim.model.FWSimComponent.TEST_STATE aDefineOrCheck) called for single component test to check the components algorithm.- Specified by:
fillTestVariablesin classnet.simplace.sim.model.FWSimComponent
-
clone
protected net.simplace.sim.model.FWSimComponent clone(net.simplace.sim.util.FWSimVarMap aVarMap) creates a clone from this SimComponent for use in other threads- Specified by:
clonein classnet.simplace.sim.model.FWSimComponent- See Also:
-