Class RadiationUseEfficiency
- All Implemented Interfaces:
net.simplace.sim.util.FWSimFieldContainer
Introduction
The sim components in the package lintul5 implement the Lintul5 algorithms from (L5). They are designed to reproduce same results (up to rounding errors) as the original FST program.
The original model is subdivided into multiple sim components (which should be used in the following order to be as close as possible to the original algorithm).
- Irradiation
- PotentialEvapoTranspiration
- WaterBalance
- Phenology
- RadiationUseEfficiency
- Lintul5
Daylength calculation is performed by the transformer component AstronomicParametersTransformer
RadiationUseEfficiency component calculates the radiation use efficiency
Description
The component calculates radiation use efficiency as well as Co2 and temperature correction factor. Calculations taken from original's CROPP() routine.
It takes inputs from the component Phenology.
It's outputs are used by Lintul5.
For documentation of the algorithms please consult the orginal documentation (L5)
Changes to original
Customizable calculation of day temp
Calculation of used temperature is made customizable by a variable cDayTempFactor. $$ \begin{eqnarray} DTemp & = & TMAX - cDayTempFactor \cdot (TMAX - TMIN) \\ \label{dtemp} & = & (1-cDayTempFactor) \cdot TMAX + (cDayTempFactor)\cdot TMIN \end{eqnarray} $$
- The default value for cDayTempFactor is 0.25, so $DTemp$ equals the daytemp.
- If the factor is 0.5, then $DTemp$ equals the mean temperature.
- If the factor is 0.0, then $DTemp$ is the maximum temperature, if the factor is 1.0, then it's the minimum temperature.
Scale factors for calibration
As some parameters are given as interpolation tables, there have been added additional scale factors to make these values changeable for calibrations:
- cScaleFactorRUE scales the RUE table RUETB
References
(L5) Joost Wolf, User guide for LINTUL5, Wageningen UR, Wageningen, 2012
- Author:
- G. Krauss
- See Also:
-
Irradiation
PotentialEvapoTranspiration
WaterBalance
Phenology
Lintul5
AstronomicParametersTransformer
Component Variables
Content Type | Name | Description | Data Type | Unit | Min Value | Max Value | Default Value |
---|---|---|---|---|---|---|---|
constant | cCO | atmosferic CO2 concentration | DOUBLE | ppm | - | - | 0.0 |
constant | cCOTB | table with correction factor of RUE as a function of atmospheric CO2 concentration | DOUBLEARRAY | 1 | - | - | - |
constant | cCOTableCo2 | CO2 concentration for correction of radiation use efficiency as a function of atmospheric (c.f. COTB) | DOUBLEARRAY | ppm | - | - | 40.0 360.0 720.0 1000.0 2000.0 |
constant | cCOTableFactor | Correction of radiation use efficiency as a function of atmospheric CO2 concentration (c.f. COTB) | DOUBLEARRAY | 1 | - | - | 0.0 1.0 1.35 1.5 1.5 |
constant | cDayTempFactor | Calculation factor for temperature means T = TMAX - f*(TMAX-TMIN). Default 0.25 gives day temp, 0.5 gives mean temp. See $\eqref{dtemp}$ | DOUBLE | 1 | - | - | 0.25 |
constant | cRUETB | radiation use efficiency as function of DVS | DOUBLEARRAY | g/MJ | - | - | - |
constant | cRUETableDVS | DVS for radiation use efficiency for biomass production (c.f. RUETB) | DOUBLEARRAY | 1 | - | - | 0.0 1.0 1.3 2.0 |
constant | cRUETableRUE | Radiation use efficiency for biomass production as function of DVS (c.f. RUETB) | DOUBLEARRAY | g/MJ | - | - | 3.0 3.0 3.0 0.4 |
constant | cScaleFactorRUE | Scales the y-values of RUETB (for sensitivity analysis / calibration) | DOUBLE | 1 | - | - | 1.0 |
constant | cTMNFTB | reduction factor of RUE as function of low minimum temperature | DOUBLEARRAY | 1 | - | - | - |
constant | cTMNFTableFactor | Reduction factor of RUE as function of low min. temp. (c.f. TMNFTB) | DOUBLEARRAY | 1 | - | - | 0.0 0.0 1.0 1.0 |
constant | cTMNFTableMinTemperature | Min Temp for reduction factor of RUE (c.f. TMNFTB) | DOUBLEARRAY | °C | - | - | -5.0 0.0 3.0 30.0 |
constant | cTMPFTB | reduction factor of RUE as function of mean daytime temperature | DOUBLEARRAY | 1 | - | - | - |
constant | cTMPFTableFactor | Reduction factor of RUE as function of mean daytime temp (c.f. TMPFTB) | DOUBLEARRAY | 1 | - | - | 0.0 0.0 0.6 1.0 1.0 0.0 0.0 |
constant | cTMPFTableMeanTemperature | Mean daytime temp for reduction factor of RUE (c.f. TMPFTB) | DOUBLEARRAY | °C | - | - | -1.0 0.0 10.0 15.0 30.0 35.0 40.0 |
input | iDVS | initial development stage of crop (from 0 to 2) | DOUBLE | 1 | - | - | 0.0 |
input | iTMAX | maximal air temperature during day (output of routine WEATHR) | DOUBLE | °C | - | - | 0.0 |
input | iTMIN | minimal air temperature during day (output of routine WEATHR) | DOUBLE | °C | - | - | 0.0 |
out | RTMCO | overall correction factor for RUE in dependence of both CO2 concentration and non-optimal daytime and minimal temperatures | DOUBLE | 1 | - | - | 0.0 |
out | RUE | radiation use efficiency | DOUBLE | g/MJ | - | - | 0.0 |
-
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
ConstructorDescriptionEmpty constructor used by class.forName()RadiationUseEfficiency
(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) -
Method Summary
Modifier and TypeMethodDescriptionprotected net.simplace.sim.model.FWSimComponent
clone
(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 void
init()
protected void
process()
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
-
RadiationUseEfficiency
public RadiationUseEfficiency(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) - Parameters:
aName
-aFieldMap
-aInputMap
-aSimComponentElement
-aVarMap
-aOrderNumber
-
-
RadiationUseEfficiency
public RadiationUseEfficiency()Empty constructor used by class.forName()
-
-
Method Details
-
createVariables
- Specified by:
createVariables
in interfacenet.simplace.sim.util.FWSimFieldContainer
- Specified by:
createVariables
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.createVariables()
-
init
protected void init()- Specified by:
init
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.init()
-
process
protected void process()- Specified by:
process
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.process()
-
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:
fillTestVariables
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
net.simplace.sim.util.FWSimFieldContainer#fillTestVariables(int aParamIndex, TEST_STATE aDefineOrCheck)
-
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:
clone
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)
-