Class RadiationUseEfficiency

java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.models.lintul5.amei.RadiationUseEfficiency
All Implemented Interfaces:
net.simplace.sim.util.FWSimFieldContainer

public class RadiationUseEfficiency extends net.simplace.sim.model.FWSimComponent
Lintul5 - Simple generic model for simulation of crop growth - Radiation use efficiency part

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).

  1. Irradiation 2. PotentialEvapoTranspiration 3. WaterBalance 4. Phenology
  2. RadiationUseEfficiency 6. 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, [https://models.pps.wur.nl/system/files/LINTUL4-report-vs1_0.zip User guide for LINTUL5], Wageningen UR, Wageningen, 2012

Author:
G. Krauss
See Also:

Component Variables

Content TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcCOatmosferic CO2 concentrationDOUBLEppm--0.0
constantcCOTableCo2CO2 concentration for correction of radiation use efficiency as a function of atmospheric (c.f. COTB)DOUBLEARRAYppm-- 40.0 360.0 720.0 1000.0 2000.0
constantcCOTableFactorCorrection of radiation use efficiency as a function of atmospheric CO2 concentration (c.f. COTB)DOUBLEARRAY1-- 0.0 1.0 1.35 1.5 1.5
constantcDayTempFactorCalculation factor for temperature means T = TMAX - f*(TMAX-TMIN). Default 0.25 gives day temp, 0.5 gives mean temp. See $\eqref{dtemp}$DOUBLE1--0.25
constantcRUETableDVSDVS for radiation use efficiency for biomass production (c.f. RUETB)DOUBLEARRAY1-- 0.0 1.0 1.3 2.0
constantcRUETableRUERadiation use efficiency for biomass production as function of DVS (c.f. RUETB)DOUBLEARRAYg/MJ-- 3.0 3.0 3.0 0.4
constantcScaleFactorRUEScales the y-values of RUETB (for sensitivity analysis / calibration)DOUBLE1--1.0
constantcTMNFTableFactorReduction factor of RUE as function of low min. temp. (c.f. TMNFTB)DOUBLEARRAY1-- 0.0 0.0 1.0 1.0
constantcTMNFTableMinTemperatureMin Temp for reduction factor of RUE (c.f. TMNFTB)DOUBLEARRAY°C-- -5.0 0.0 3.0 30.0
constantcTMPFTableFactorReduction factor of RUE as function of mean daytime temp (c.f. TMPFTB)DOUBLEARRAY1-- 0.0 0.0 0.6 1.0 1.0 0.0 0.0
constantcTMPFTableMeanTemperatureMean 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
inputiDVSinitial development stage of crop (from 0 to 2)DOUBLE1--0.0
inputiTMAXmaximal air temperature during day (output of routine WEATHR)DOUBLE°C--0.0
inputiTMINminimal air temperature during day (output of routine WEATHR)DOUBLE°C--0.0
outRTMCOoverall correction factor for RUE in dependence of both CO2 concentration and non-optimal daytime and minimal temperaturesDOUBLE1--0.0
outRUEradiation use efficiencyDOUBLEg/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

    Constructors
    Constructor
    Description
    Empty 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 Type
    Method
    Description
    protected net.simplace.sim.model.FWSimComponent
    clone(net.simplace.sim.util.FWSimVarMap aVarMap)
     
    HashMap<String,net.simplace.sim.util.FWSimVariable<?>>
     
    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.
    protected void
     
    protected void
     

    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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • 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

      public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> createVariables()
      Specified by:
      createVariables in interface net.simplace.sim.util.FWSimFieldContainer
      Specified by:
      createVariables in class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.createVariables()
    • init

      protected void init()
      Specified by:
      init in class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.init()
    • process

      protected void process()
      Specified by:
      process in class net.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 class net.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)
      Specified by:
      clone in class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)