net.simplace.client.simulation.lap.VernalisationAndPhotoresponse

The phenological development of some crops and in particular the formation of flowers (transition from vegetative to generative phase) is sensitive to daylength or it requires the occurence of a certain period of low temperatures. VernaliasationAndPhotoresponse.java modifies the crop specific effective temperature between emergence and anthesis calculated by the SimComponent WeatherTransformer to be accounted for when calculating the temperature sum (TSUM) in the SimComponent LintulPhenology. The modification takes into account both the crop specific daylength as well as vernalisation requirements as defined in the crop property file.

definition of vernalisation days

The crop-specific vernalisation requirement is defined by inputting the maximum days for vernalisation (DayVernalMax) and the upper and lower temperature limits (Thigh and Tlow) necessary for vernalisation. If the daily mean temperature (DAVTEMP) is between Thigh and Tlow, the day is fully considered as a vernalisation day (VernalDay). If DAVTEMP is above Thigh or is below Tlow, only a fraction of the day is considered for vernalisation. Vernalisation is achieved when VernalDay exceeds the threshold set by DayVernalMax.

definition of effective daylength

The SimComponent calculates daylength for each day with the function "calculateDAYL" based on the latitude (cLatitude) of the simulated location. Then the daylength is compared with the crop requirements in the user-defined photo response table (cPhotoresponse).

== response to vernalisation and daylength ===

Changes in daylength and vernalisation modify the daily rate of effective temperature (rTSUMEFF_BaseAnt, rTSUMEFF_BaseMat). The modification is calculated by multiplying rTSUMEFF_BaseAnt (rTSUMEFF_BaseMat) with either the photoresponse factor (PhotoresponseFactor) or the vernalisation factor (vernFactor) whichever is smaller.

Before anthesis:

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

After anthesis:

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

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

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

Class is stateful by keeping the vernalDays in the instance.

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--[Ljava.lang.Double;@291a4791
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 vernalisationINTK040070
constantcVernalDaysMinCrop specific minimum number of days required for vernalisationINTK010010
inputiDAVTMPDaily mean air temperatureDOUBLE°C0.050.0-
inputiDevStageDevelopment stage of the crop (1.0=anthesis, 2.0=physiological maturity)DOUBLE10.03.0-
inputiDoSowtrue if sowing dayBOOLEAN1--false
inputiTSumBaseAntDaily effective temperature before anthesisDOUBLEK0.010000.0-
inputiTSumBaseMatDaily effective temperature after anthesisDOUBLEK0.010000.0-
statesPhotoresponseArrayPhoto response array as function of daylength in minutesDOUBLEARRAY10.020.0-
statesVernalDaysactual Vernal DaysDOUBLE10.0400.00.0
DayLengthDay Length in minutesINTminnull
PhotoresponseFactordaily photoresponse factorDOUBLE1null
RTSUMDaily effective temperature used to calculate the temperature sum and development stage at a given dayDOUBLEKnull
VernalisationFactordaily vernalisation factorDOUBLE1null



public class VernalisationAndPhotoresponse extends
net.simplace.simulation.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.simulation.model.FWSimComponent


Create the FWSimVariables as interface for this SimComponent

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


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


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




}



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