Klasse Vernalisation

java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.experimental.amei.Vernalisation
Alle implementierten Schnittstellen:
net.simplace.sim.util.FWSimFieldContainer

public class Vernalisation extends net.simplace.sim.model.FWSimComponent
Reduces daily temperature increment by vernalisation and photoresponse.

Vernalisation

Vernalisation days

The daily increment of vernalisation days is determined by daily average temperature iDAVTEMP

\[ \begin{eqnarray} VDI(iDAVTEMP) Ungültige Eingabe: "&" = Ungültige Eingabe: "&" \left\{ \begin{array}{l} 0 Ungültige Eingabe: "&" \text{if} \quad iDAVTEMP \lt cTlowCritical\\ \frac{iDAVTEMP - cTlowCritical}{cTlow - cTlowCritical} Ungültige Eingabe: "&" \text{if} \quad cTlowCritical \le iDAVTEMP \lt cTlow \\ 1 Ungültige Eingabe: "&" \text{if} \quad cTlow \le iDAVTEMP \lt cThigh \\ \frac{cThighCritical - iDAVTEMP}{cThighCritical - cThigh} Ungültige Eingabe: "&" \text{if} \quad cThigh \le iDAVTEMP \lt cThighCritical \\ 0 Ungültige Eingabe: "&" \text{if} \quad cThighCritical \le iDAVTEMP\\ \end{array} \right. \end{eqnarray} \]

And sVernalDays is incremented by VDI(iDAVTEMP).

Vernalisation factor

VernalisationFactor (VF) is determined by the sVernalDays (VD)

\[ \begin{eqnarray} VF(VD) Ungültige Eingabe: "&" = Ungültige Eingabe: "&" \left\{ \begin{array}{l} 0 Ungültige Eingabe: "&" \text{if} \quad VD \lt cVernalDaysMin\\ \frac{VD - cVernalDaysMin}{cVernalDaysMax - cVernalDaysMin} Ungültige Eingabe: "&" \text{if} \quad cVernalDaysMin \le VD \lt cVernalDaysMax \\ 1 Ungültige Eingabe: "&" \text{if} \quad cVernalDaysMax \le VD \\ \end{array} \right. \end{eqnarray} \]

Applying Vernalisation

Before anthesis:

\[ \begin{eqnarray} RTSUM Ungültige Eingabe: "&" = Ungültige Eingabe: "&" iTSumBaseAnt \cdot Min(PhotoPeriodeFactor, VernalisationFactor) \end{eqnarray} \]

After anthesis:

\[ \begin{eqnarray} RTSUM Ungültige Eingabe: "&" = Ungültige Eingabe: "&" iTSumBaseMat \cdot Min(PhotoPeriodeFactor, VernalisationFactor) \end{eqnarray} \]

cApplyPhotoresponse and cApplyVernalisation control whether photoresponse, vernalisation or both are applied. If the control variables are false, the coresponding factor is always 1, meaning that the effect is not applied.

The state sVernalDays has to be reset on each sowing. Therefore the input iDoSow has to be provided.

References

Goudriaan, H.H. Van Laar, 1994. Modelling Potential Crop Growth Processes, Kluwer Academic Publishers, Dordrecht (1994) 238 pp

Component Variables

Content TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcApplyVernalisationFlag to activate vernalisation (True: crops requiring vernalisation for flower initialisationBOOLEAN1--true
constantcThighUpper temperature threshold for vernalisation; days with higher mean air temperature are not fully considered as a vernalisation day DOUBLE°C-40.050.010.0
constantcThighCriticalUpper temperature threshold for vernalisation; days with higher mean air temperature don't contribute at all for vernalisation day DOUBLE°C-40.050.017.0
constantcTlowLower temperature threshold for vernalisation, days with lower mean air temperature are not fully considered as a vernalisation dayDOUBLE°C-40.050.03.0
constantcTlowCriticalLower critical temperature threshold for vernalisation, days with lower mean air temperature don't contribute at all for vernalisation dayDOUBLE°C-40.050.0-4.0
constantcVernalDaysMaxCrop specific maximum number of days required for vernalisationINT1040070
constantcVernalDaysMinCrop specific minimum number of days required for vernalisationINT1010010
inputiDAVTMPDaily mean air temperatureDOUBLE°C0.050.0-
inputiDevStageDevelopment stage of the crop (1.0=anthesis, 2.0=physiological maturity)DOUBLE10.03.0-
inputiDevStageBaseShootDevelopment stage for base shootDOUBLE10.010000.00.5
inputiDoSowtrue if sowing dayBOOLEAN1--false
inputiPhotoPeriodFactorPhotoPeriodFactorDOUBLE10.01.0-
inputiTSumBaseAntDaily effective temperature before anthesisDOUBLE°C0.010000.0-
inputiTSumBaseMatDaily effective temperature after anthesisDOUBLE°C0.010000.0-
inputiTSumBaseShootDaily effective temperature after shooting - if givenDOUBLE°C0.010000.0-
statesVernalDaysactual Vernal DaysDOUBLE10.0400.00.0
outDayLengthDay Length in minutesINTmin014410
outRTSUMDaily effective temperature used to calculate the temperature sum and development stage at a given dayDOUBLE°C0.050.0-
outVernalisationFactordaily vernalisation factorDOUBLE10.01.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()
    Vernalisation(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)
    Called by Clone method only
  • 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
     
    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

    • Vernalisation

      public Vernalisation(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)
      Called by Clone method only
      Parameter:
      aName -
      aFieldMap -
      aInputMap -
      aSimComponentElement -
      aVarMap -
      aOrderNumber -
    • Vernalisation

      public Vernalisation()
      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()
      Angegeben von:
      init in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.init()
    • reset

      protected void reset()
    • process

      protected void process()
      Angegeben von:
      process in Klasse net.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:
      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)