Klasse BelowgroundAllocationFactor
- Alle implementierten Schnittstellen:
net.simplace.sim.util.FWSimFieldContainer
The module uses a straigthforward approach:
- Root Length Densities (RLD) and Root Restriction Factors (RRF) are scaled according to the area covered by each crop
- Common RLD and RRF are just the sum of the scaled RLDs and RRFs
- Below ground allocation factors are proportional to the scaled RRFs
Calculation
Root Length Densities per layer $rld_{1,i}, rld_{2,i}$ and are scaled to the coresponding area fractions $a_1, a_2$ occupied by the two crops and the sum of both is calculated.
\[ rld_i = rld_{1,i} \cdot a_1 + rld_{2,i} \cdot a_2 \]
Same holds for Root Restriction Factors per Layer $rrf_{1,i}, rrf_{2,i}$ \[ rrf_i = rrf_{1,i} \cdot a_1 + rrf_{2,i} \cdot a_2 \]
The maximum rooted layer is the biggest layer number, where Root Length Density is greater than 0. \[ n_{max} = max\{i | rld_i > 0\} \]
To calculate the allocations factors $f_1, f_2$, first the total sum of root restriction factors is calculated \[ s = \sum_i rrf_{1_i} + \sum_i rrf_{2,i} \]
then the factor per layer is the root restriction factor per layer divided by the sum
\[ f_{1,i} = \frac{rff_{1,i}}{s} \quad \quad f_{2,i} = \frac{rff_{2,i}}{s} \]
To get the total factors, the factor per per layers are summed up
\[ f_1 = \sum_i f_{1,i} \quad \quad f_2 = \sum_i f_{2,i} \]
References
- Autor:
- G. Krauss
- Siehe auch:
Component Variables
| Content Type | Name | Description | Data Type | Unit | Min Value | Max Value | Default Value |
|---|---|---|---|---|---|---|---|
| constant | cAreaFraction1 | Area fraction covered by crop 1 | DOUBLE | 1 | 0.0 | 1.0 | 0.0 |
| constant | cAreaFraction2 | Area fraction covered by crop 2 | DOUBLE | 1 | 0.0 | 1.0 | 0.0 |
| input | iRootDepth1 | Root depth of crop 1 | DOUBLE | m | 0.0 | - | 0.0 |
| input | iRootDepth2 | Root depth of crop 2 | DOUBLE | m | 0.0 | - | 0.0 |
| input | iRootLength1 | Root length per layer of crop 1 | DOUBLEARRAY | m | 0.0 | - | - |
| input | iRootLength2 | Root length per layer of crop 2 | DOUBLEARRAY | m | 0.0 | - | - |
| input | iRootLengthDensity1 | Root length density per layer of crop 1 | DOUBLEARRAY | cm/cm3 | 0.0 | - | - |
| input | iRootLengthDensity2 | Root length density per layer of crop 2 | DOUBLEARRAY | cm/cm3 | 0.0 | - | - |
| input | iRootRestrictionFactor1 | root restriction factor per layer of crop 1 | DOUBLEARRAY | 1 | 0.0 | - | - |
| input | iRootRestrictionFactor2 | root restriction factor per layer of crop 2 | DOUBLEARRAY | 1 | 0.0 | - | - |
| out | Factor1 | Below ground allocation factor for crop 1 | DOUBLE | 1 | 0.0 | 1.0 | 0.0 |
| out | Factor1PerLayer | Below ground allocation factor for crop 1 per layer | DOUBLEARRAY | 1 | 0.0 | 1.0 | - |
| out | Factor2 | Below ground allocation factor for crop 2 | DOUBLE | 1 | 0.0 | 1.0 | 0.0 |
| out | Factor2PerLayer | Below ground allocation factor for crop 2 per layer | DOUBLEARRAY | 1 | 0.0 | 1.0 | - |
| out | MD95 | Highest layer number that contains roots (counting from 1) | INT | 0 | - | 0 | |
| out | MaxRootedLayerNumber | Highest layer number that contains roots (counting from 0) | INT | 0 | - | 0 | |
| out | RootDepth | Root depth | DOUBLE | m | 0.0 | - | 0.0 |
| out | RootLength | Root length per layer of both crops | DOUBLEARRAY | m | 0.0 | - | - |
| out | RootLengthDensity | Root length density per layer of both crops | DOUBLEARRAY | cm/cm3 | 0.0 | - | - |
| out | RootRestrictionFactor | Averaged root restriction factor per layer of both crops | DOUBLEARRAY | 1 | 0.0 | - | - |
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen net.simplace.sim.model.FWSimComponent
net.simplace.sim.model.FWSimComponent.TEST_STATE -
Feldübersicht
Von Klasse geerbte Felder net.simplace.sim.model.FWSimComponent
iFieldMap, iFrequence, iInputMap, iJexlRule, iMasterComponentGroup, iName, iOrderNumber, isComponentGroup, iSimComponentElement, iSimModel, iVarMap -
Konstruktorübersicht
KonstruktorenModifiziererKonstruktorBeschreibungcalled from class.forName()protectedBelowgroundAllocationFactor(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) -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungprotected net.simplace.sim.model.FWSimComponentclone(net.simplace.sim.util.FWSimVarMap aVarMap) fillTestVariables(int aParamIndex, net.simplace.sim.model.FWSimComponent.TEST_STATE aDefineOrCheck) called for single component test to check the components algorithm.protected voidinit()protected voidprotected voidprocess()Von Klasse geerbte Methoden 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
-
Konstruktordetails
-
BelowgroundAllocationFactor
protected BelowgroundAllocationFactor(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) - Parameter:
aName-aFieldMap-aInputMap-aSimComponentElement-aVarMap-aOrderNumber-
-
BelowgroundAllocationFactor
public BelowgroundAllocationFactor()called from class.forName()
-
-
Methodendetails
-
createVariables
- Angegeben von:
createVariablesin Schnittstellenet.simplace.sim.util.FWSimFieldContainer- Angegeben von:
createVariablesin Klassenet.simplace.sim.model.FWSimComponent
-
init
protected void init()- Angegeben von:
initin Klassenet.simplace.sim.model.FWSimComponent
-
initVariables
protected void initVariables() -
process
protected void process()- Angegeben von:
processin Klassenet.simplace.sim.model.FWSimComponent
-
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.- Angegeben von:
fillTestVariablesin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
clone
protected net.simplace.sim.model.FWSimComponent clone(net.simplace.sim.util.FWSimVarMap aVarMap) - Angegeben von:
clonein Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-