Klasse RadiationUseEfficiency

java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.models.lintul5.RadiationUseEfficiency
Alle implementierten Schnittstellen:
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
  5. 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 <span class="invalid-tag">Ungültige Eingabe: "&"</span> = <span class="invalid-tag">Ungültige Eingabe: "&"</span> TMAX - cDayTempFactor \cdot (TMAX - TMIN) \\ \label{dtemp} <span class="invalid-tag">Ungültige Eingabe: "&"</span> = <span class="invalid-tag">Ungültige Eingabe: "&"</span> (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

Autor:
G. Krauss
Siehe auch:

Component Variables

Content TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcCOatmosferic CO2 concentrationDOUBLEppm--0.0
constantcCOTBtable with correction factor of RUE as a function of atmospheric CO2 concentrationDOUBLEARRAY1---
constantcCOTableCo2CO2 concentration (x-values) for correction of radiation use efficiency as a function of atmospheric [cCOTableFactor] (c.f. COTB)DOUBLEARRAYppm-- 40.0 360.0 720.0 1000.0 2000.0
constantcCOTableFactorCorrection of radiation use efficiency (y-values) as a function of atmospheric CO2 concentration [cCOTableCo2] (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
constantcRUETBradiation use efficiency as function of DVSDOUBLEARRAYg/MJ---
constantcRUETableDVSDVS (x-values) for radiation use efficiency for biomass production [cRUETableRUE] (c.f. RUETB)DOUBLEARRAY1-- 0.0 1.0 1.3 2.0
constantcRUETableRUERadiation use efficiency for biomass production (y-values) as function of DVS [cRUETableDVS] (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
constantcTMNFTBreduction factor of RUE as function of low minimum temperatureDOUBLEARRAY1---
constantcTMNFTableFactorReduction factor of RUE (y-values) as function of low min. temp. [cTMNFTableMinTemperature] (c.f. TMNFTB)DOUBLEARRAY1-- 0.0 0.0 1.0 1.0
constantcTMNFTableMinTemperatureMin Temp (x-values) for reduction factor of RUE [cTMNFTableFactor] (c.f. TMNFTB)DOUBLEARRAY°C-- -5.0 0.0 3.0 30.0
constantcTMPFTBreduction factor of RUE as function of mean daytime temperatureDOUBLEARRAY1---
constantcTMPFTableFactorReduction factor of RUE (y-values) as function of mean daytime temp [cTMPFTableMeanTemperature] (c.f. TMPFTB)DOUBLEARRAY1-- 0.0 0.0 0.6 1.0 1.0 0.0 0.0
constantcTMPFTableMeanTemperatureMean daytime temp for (x-values) reduction factor of RUE [cTMPFTableFactor] (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
  • 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

    Konstruktoren
    Konstruktor
    Beschreibung
    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)
     
  • Methodenübersicht

    Modifizierer und Typ
    Methode
    Beschreibung
    protected net.simplace.sim.model.FWSimComponent
    clone(net.simplace.sim.util.FWSimVarMap aVarMap)
    creates a clone from this SimComponent for use in other threads
    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
     

    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

    Von Klasse geerbte Methoden java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Konstruktordetails

    • 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)
      Parameter:
      aName -
      aFieldMap -
      aInputMap -
      aSimComponentElement -
      aVarMap -
      aOrderNumber -
    • RadiationUseEfficiency

      public RadiationUseEfficiency()
      Empty constructor used by class.forName()
  • Methodendetails

    • createVariables

      public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> createVariables()
      Angegeben von:
      createVariables in Schnittstelle net.simplace.sim.util.FWSimFieldContainer
      Angegeben von:
      createVariables in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.createVariables()
    • init

      protected void init()
      Angegeben von:
      init in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.init()
    • process

      protected void process()
      Angegeben von:
      process in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • 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.
      Angegeben von:
      fillTestVariables in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • Ungültige Referenz
        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
      Angegeben von:
      clone in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)