Klasse HeatStressOnGrain
- Alle implementierten Schnittstellen:
net.simplace.sim.util.FWSimFieldContainer
HeatStressOnGrain calculates the heat stress factor (HeatStressFactor) around anthesis (approx. 30 days around anthesis) based on the daily heat stress intensity. The day which day temperature is above certain threshold TempCritical (e.g. 27 °C for winter wheat) count as heated day. The highest daily heat stress intensity occur whenever day temperature is above limited temperature TempLimit (e.g. 40 °C for winter wheat). All equations documented in (T).
The critical and limit temperatures can be customized, as well as the number of days before and after anthesis, when stress should be taken into account.
Instead of providing the number of days, one can give the devstages when the heat stress period starts and ends. The number of days are then calculated from phenology.
Daily inputs are: min and max temperatures, dev stage, temperature sum, anthesis date and yield.
Daily stress factor
\( \begin{eqnarray} TDay_i Ungültige Eingabe: "&" = Ungültige Eingabe: "&" Tmax_i - \frac{Tmax_i-Tmin_i}{4} \\ DailyStressFactor_i Ungültige Eingabe: "&" = Ungültige Eingabe: "&" \max(0,\min(1,\frac{TDay_i - TempCritical}{TempLimit-TempCritical})) \\ \end{eqnarray} \)Heat stress factor
\( \begin{eqnarray} CummulatedHeatStressFactor Ungültige Eingabe: "&" = Ungültige Eingabe: "&" \sum_{i=AnthesisDOY - DaysBeforeAnthesis}^{AnthesisDoy + DaysFromAnthesis} DailyStressFactor_i \\ HeatStressFactor Ungültige Eingabe: "&" = Ungültige Eingabe: "&" \frac{CummulatedHeatStressFactor}{DaysBeforeAnthesis + DaysFromAnthesis+1} \\ \end{eqnarray} \)Adjusted yield
\( \begin{eqnarray} AdjustedYield Ungültige Eingabe: "&" = Ungültige Eingabe: "&" (1-HeatStressFactor) \cdot Yield \\ \end{eqnarray} \)References:
(T) Teixeira, E., Fischer, G., Velthuizen, H., Walter, C., Ewert, F. 2013. Global hot-spots of heat stress on agricultural crops due to climate change. Agriculture and Forest meteorology, 170:206-2015.
- Autor:
- Gunther Krauss, Ehsan Eyshi Rezaei "eeyshire@uni-bonn.de"
Component Variables
| Content Type | Name | Description | Data Type | Unit | Min Value | Max Value | Default Value |
|---|---|---|---|---|---|---|---|
| constant | cBeginDevStage | Development stage before anthesis which thermal sensitive period start | DOUBLE | 1 | - | - | 0.8 |
| constant | cDaysBeforeAnthesis | Thermal sensitive days before anthesis | INT | 1 | - | - | 0 |
| constant | cDaysFromAnthesis | Thermal sensitive days after anthesis | INT | 1 | - | - | 0 |
| constant | cEndDevStage | Development stage before anthesis which thermal sensitive period end | DOUBLE | 1 | - | - | 1.3 |
| constant | cTempCritical | Critical temperature threshold to start of heat stress | DOUBLE | °C | - | - | 27.0 |
| constant | cTempLimit | The temperature which maximum heat stress occurs | DOUBLE | °C | - | - | 40.0 |
| input | iAnthesisDate | Anthesis date | DATE | 1 | - | - | - |
| input | iDevStage | Development stage | DOUBLE | 1 | - | - | 0.0 |
| input | iTMax | Daily maximum temperature | DOUBLE | °C | - | - | 0.0 |
| input | iTMin | Daily minimum temperature | DOUBLE | °C | - | - | 0.0 |
| input | iTempSum | Temperature sum | DOUBLE | °C d | - | - | 0.0 |
| input | iYield | Simulated yield before heat stress adjustment | DOUBLE | g/m2 | - | - | 0.0 |
| state | sAffectedDays | Days which heat stress occurs | INT | 1 | - | - | 0 |
| state | sCumulatedHeatStressFactor | Cumulative heat stress factor | DOUBLE | 1 | - | - | 0.0 |
| state | sDays | Number of days related to thermal sensitive period | INT | 1 | - | - | 0 |
| state | sTDay | Day time temperature | DOUBLE | °C | - | - | 0.0 |
| rate | rDailyHeatStressFactor | Daily heat stress factor | DOUBLE | 1 | - | - | 0.0 |
| out | AdjustedYield | Adjusted yield by heat stress | DOUBLE | g/m2 | - | - | 0.0 |
| out | BeginDOY | Begin of thermal sensitive period (day of year format) | INT | 1 | - | - | 0 |
| out | BeginDevStage | Begin of thermal sensitive period (Development stage format) | DOUBLE | 1 | - | - | 0.0 |
| out | BeginTempSum | Begin of thermal sensitive period (temperature sum format) | DOUBLE | °C d | - | - | 0.0 |
| out | EndDOY | End of thermal sensitive period (day of year format) | INT | 1 | - | - | 0 |
| out | EndDevStage | End of thermal sensitive period (Development stage format) | DOUBLE | 1 | - | - | 0.0 |
| out | EndTempSum | End of thermal sensitive period (temperature sum format) | DOUBLE | °C d | - | - | 0.0 |
| out | HeatStressFactor | Heat stress factor | DOUBLE | 1 | - | - | 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 -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungprotected net.simplace.sim.model.FWSimComponentclone(net.simplace.sim.util.FWSimVarMap aVarMap) creates a clone from this SimComponent for use in other threadsfillTestVariables(int aParamIndex, net.simplace.sim.model.FWSimComponent.TEST_STATE aDefineOrCheck) called for single component test to check the components algorithm.protected voidinit()protected voidprocess()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
-
Konstruktordetails
-
HeatStressOnGrain
public HeatStressOnGrain(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-
-
HeatStressOnGrain
public HeatStressOnGrain()Empty constructor used by class.forName()
-
-
Methodendetails
-
createVariables
- Angegeben von:
createVariablesin Schnittstellenet.simplace.sim.util.FWSimFieldContainer- Angegeben von:
createVariablesin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
init
protected void init()- Angegeben von:
initin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
process
protected void process()- Angegeben von:
processin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
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:
fillTestVariablesin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
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:
clonein Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-