Klasse EvapTranDemand

java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.models.lintul.EvapTranDemand
Alle implementierten Schnittstellen:
net.simplace.sim.util.FWSimFieldContainer

public class EvapTranDemand extends net.simplace.sim.model.FWSimComponent
EvapTranDemand.java estimates the potential crop transpiration and potential soil evaporation

EvapTranDemand.java estimates the potential crop transpiration and potential soil evaporation either from daily reference ET (REFET) measurements which are specified by the user or by a modified PENMAN approach.

Reference ET measurements (Citation to this section not found)

This approach assumes that daily observations of a reference ET (r.g. Class A Pan evaporation) are available. If the user-specified measured REFET (mm d-1) is used, the SimComponent calculates the potential crop transpiration (PTRAN in mm d-1) as

\[ \begin{eqnarray} PTRAN Ungültige Eingabe: "&" = Ungültige Eingabe: "&" REFET \cdot f \end{eqnarray} \]

where f is a function of the intercepted radiation (fractionalInterception) and of a FractionModifierFactor which is by default 1.2 but can be modified in the solution by the user. The fraction modifier assumes that the reference ET estimated from an open water surface (like Class A pan measurements) is lower than the reference ET from a well-water, dense vegetation cover. The radiation fraction intercepted by the crop (fractionalInterecption) is estimated with

\[ \begin{eqnarray} fractionalInterception Ungültige Eingabe: "&" = Ungültige Eingabe: "&" 1.0 - e^{-K \cdot LAI} \end{eqnarray} \]

where K is the extinction coefficient for photosynthetically active radiation (by default 0.6) and LAI is the leaf area index at a given day.

The potential soil evaporation (PEVAP in mm d-1) is then estimated as the difference between REFET and PTRAN:

\[ \begin{eqnarray} PEVAP Ungültige Eingabe: "&" = Ungültige Eingabe: "&" REFET - PTRAN \end{eqnarray} \]

Modified PENMAN approach (Van Oijen and Lefelaar, 2008)

The modified PENMAN approach calculates potential crop transpiration (PTRAN in mm d-1 or kg m-2 d-1) as

\[ \begin{eqnarray} PTRAN Ungültige Eingabe: "&" = Ungültige Eingabe: "&" (1.0 - e^{0.5 \cdot LAI}) \frac {NRADC \cdot \frac{SLOPE}{(SLOPE+0.067)} + 2.4 \cdot 10^{6} \cdot WDF \cdot (SVP - VP) \cdot PSYCH / (SLOPE + PSYCH)}{2.4\cdot 10^{6}} \end{eqnarray} \]

where PSYCH is the psychrometric constant (0.067 kPa °C-1) and, assuming 25% reflection from the crop canopy, NRADC (net radiation absorption rate by the crop in J m-2 d-1) is

\[ \begin{eqnarray} NRADC Ungültige Eingabe: "&" = Ungültige Eingabe: "&" DTR \cdot 10^{6} \cdot (1.0 - 0.25) - BOLTZM \cdot (DAVTMP+273.0)^{4} \cdot 86400 \cdot MAX(0.0, 0.55 \cdot (1.0- \frac{VP}{SVP})) \end{eqnarray} \]

with DTR as the daily solar radiation (J m-2 d-1), DAVTMP as the mean air temperature (°C), BOLTZM as Stefan-Boltzman constant (5.668 10^-8 J m-2 s-1 K-4), VP as the mean daily vapour pressure (kPa) and SVP as the saturated vapour pressure (kPa).

The slope of the saturation vapor pressure curve is calculated as

\[ \begin{eqnarray} SLOPE Ungültige Eingabe: "&" = Ungültige Eingabe: "&" 4158.6 \cdot \frac {SVP} {(DAVTMP+239.0)^{2}} \end{eqnarray} \]

and the wind function (WDF) is defined as

\[ \begin{eqnarray} WDF Ungültige Eingabe: "&" = Ungültige Eingabe: "&" 2.63 * (1.0 + 0.54 * WN) \end{eqnarray} \]

where WN is the average daily wind speed (m s-1) at a height of 2 m.

Potential soil evaporation (PEVAP in mm d-1 or kg m-2 d-1) is calculated as

\[ \begin{eqnarray} PEVAP Ungültige Eingabe: "&" = Ungültige Eingabe: "&" e^{(-0.5*LAI)} \cdot \frac{(NRADS \cdot \frac{SLOPE}{(SLOPE+PSYCH)} + 2.4 \cdot 10^{6} \cdot WDF \cdot (SVP - VP) \cdot \frac{PSYCH}{SLOPE + PSYCH}}{2.4\cdot 10^{6}} \end{eqnarray} \]

where NRADS is the net radiation absorption rate by the soil in J m-2 d-1 with

\[ \begin{eqnarray} NRADS Ungültige Eingabe: "&" = Ungültige Eingabe: "&" DTR \cdot 10^{6} \cdot (1.0 - 0.15) - BOLTZM \cdot (DAVTMP+273.0)^{4} \cdot 86400 \cdot MAX(0.0, 0.55 \cdot (1.0- \frac{VP}{SVP})) \end{eqnarray} \]

assuming 15% reflection from the soil surface.

References: van Oijen, M. and P. Leffelaar. 2008. Lintul-2: water limited crop growth: A simple general crop growth model for water-limited growing conditions. Waageningen University, The Netherlands.

Autor:
Gunther Krauss, Andreas Enders, Thomas Gaiser

Component Variables

Content TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcFractionModifierFactorUser-defined modifier to increase the intercepted radiation by default by 20% DOUBLE10.010.01.2
constantcKExtinction coefficient for photosynthetically active radiationDOUBLE10.01.00.6
constantcUseOpenPanEvaporationFlag to use the measured values of the reference ET (REFET)BOOLEAN1--true
inputiAirTemperatureMeanMean daily air temperatureDOUBLE°C-50.050.0-
inputiLAILeaf Area IndexDOUBLEm2/m20.010.0-
inputiOpenPanEvaporationObserved/measured open pan evaporationDOUBLEmm/d0.020.0-
inputiRAINDaily precipitation DOUBLEmm/d0.0400.0-
inputiRadiationDaily solar radiationDOUBLEMJ/(m2 d)0.040.0-
inputiVapourpressureDaily vapour pressure DOUBLEkPa0.020.0-
inputiWindspeedAverage daily wind speed at 2 m heightDOUBLEm/s0.050.0-
outPotentialEvapotranspirationSum of potential soil evaporation and crop transpiration as calculated by the modified PENMAN apporachDOUBLEmm/d0.022.00.0
outPotentialSoilEvaporationPotential soil evaporation according to PENMANDOUBLEmm/d0.020.00.0
outPotentialTranspirationPotential crop transpiration according to PENMAN DOUBLEmm/d0.020.00.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()
  • Methodenübersicht

    Modifizierer und Typ
    Methode
    Beschreibung
    protected net.simplace.sim.model.FWSimComponent
    clone(net.simplace.sim.util.FWSimVarMap aVarMap)
     
    HashMap<String,net.simplace.sim.util.FWSimVariable<?>>
    Create the FWSimVariables as interface for this SimComponent
    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
    Initializes the fields by getting input and output FWSimVariables from VarMap
    protected void
    Process the algorithm and write the results back to VarMap

    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

    • EvapTranDemand

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

    • createVariables

      public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> createVariables()
      Create the FWSimVariables as interface for this SimComponent
      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()
      Initializes the fields by getting input and output FWSimVariables from VarMap
      Angegeben von:
      init in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.init()
    • process

      protected void process()
      Process the algorithm and write the results back to VarMap
      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)
      Angegeben von:
      clone in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)