net.simplace.sim.components.crop.VernalisationAndPhotoresponse

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) & = & \left\{ \begin{array}{l} 0 & \text{if} \quad iDAVTEMP \lt cTlowCritical\\ \frac{iDAVTEMP - cTlowCritical}{cTlow - cTlowCritical} & \text{if} \quad cTlowCritical \le iDAVTEMP \lt cTlow \\ 1 & \text{if} \quad cTlow \le iDAVTEMP \lt cThigh \\ \frac{cThighCritical - iDAVTEMP}{cThighCritical - cThigh} & \text{if} \quad cThigh \le iDAVTEMP \lt cThighCritical \\ 0 & \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) & = & \left\{ \begin{array}{l} 0 & \text{if} \quad VD \lt cVernalDaysMin\\ \frac{VD - cVernalDaysMin}{cVernalDaysMax - cVernalDaysMin} & \text{if} \quad cVernalDaysMin \le VD \lt cVernalDaysMax \\ 1 & \text{if} \quad cVernalDaysMax \le VD \\ \end{array} \right. \end{eqnarray} \]

Photoresponse Factor

DayLength is calculated from current DOY and cLatitude

Photoresponse curve is interpolated from cPhotoresponseTable, which is a double array, holding the duration (in hours) in the even entries and the coresponding factors in the odd entries.

The PhotoresponseFactor is then chosen from the interpolated curve according to the Daylength.

After anthesis, no daylength effects are taken into account (PhotoresponseFactor = 1).

Applying Vernalisation and Photoresponse

Before anthesis:

\[ \begin{eqnarray} RTSUM & = & iTSumBaseAnt \cdot Min(PhotoresponseFactor, VernalisationFactor) \end{eqnarray} \]

After anthesis:

\[ \begin{eqnarray} RTSUM & = & iTSumBaseMat \cdot Min(PhotoresponseFactor, 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
constantcApplyPhotoresponseFlag to activate photo response (True: daylength sensitive crops)BOOLEAN1--true
constantcApplyVernalisationFlag to activate vernalisation (True: crops requiring vernalisation for flower initialisationBOOLEAN1--true
constantcLatitudeLatitude of the simulated locationDOUBLE°0.090.060.0
constantcPhotoresponseTableCrop specific photo response table as function of daylength in hoursDOUBLEARRAY1-- 0.0 0.0 8.0 0.0 20.0 1.0 24.0 1.0
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
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-
statesPhotoresponseArrayPhoto response array as function of daylength in minutesDOUBLEARRAY10.020.0-
statesVernalDaysactual Vernal DaysDOUBLE10.0400.00.0
outDayLengthDay Length in minutesINTmin014410
outPhotoresponseFactordaily photoresponse factorDOUBLE10.01.00.0
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



public class VernalisationAndPhotoresponse extends
net.simplace.sim.model.FWSimComponent {
// Public Constructors
public VernalisationAndPhotoresponse(String aName, HashMap aFieldMap,
HashMap aInputMap, Element aSimComponentElement, FWSimVarMap aVarMap,
int aOrderNumber);
public VernalisationAndPhotoresponse();


// Class Methods
public static Double[] PhotoResponseToArray(Double[] TAB);

Stores the photo response factors for a duration in minutes in an array
returns the array with minutes as key and Photo response as value

// Public Instance Methods
public HashMap createVariables(); // Defines
net.simplace.sim.model.FWSimComponent


Create the FWSimVariables as interface for this SimComponent

// Protected Instance Methods
protected void init(); // Defines net.simplace.sim.model.FWSimComponent

protected void reset();

protected void process(); // Defines net.simplace.sim.model.FWSimComponent

protected FWSimComponent clone(FWSimVarMap aVarMap);
// Defines net.simplace.sim.model.FWSimComponent




}



Hierarchy: java.lang.Object - net.simplace.sim.model.FWSimComponent (net.simplace.sim.util.FWSimFieldContainer) - VernalisationAndPhotoresponse