Class HarvestKillManagement
java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.management.HarvestKillManagement
- All Implemented Interfaces:
net.simplace.sim.util.FWSimFieldContainer
public class HarvestKillManagement
extends net.simplace.sim.model.FWSimComponent
Controls the Harvest and Killing events for CatchCrop containing solutions
Either 3 days under 2°C or 1 day under 0°C or 31.1.
If current crop name matches ${cCatchCropIDs} (array formatted list like {a,b,c}) the rules for plant dying (${DoKill}=>true) will be used:
- CURRENT.DOY after ${cKillDOY}
- ${cDaysUnderThreshold} number of days under ${cRelativeTemperatureThreshold}
- 1 day under ${cAbsoluteTemperatureThreshold}
${WithCrop} depends on the ${iDVS} in the way that it is set to true if ${iDVS} > 0 ${DoHarvest} is set to true for ${iDVS} > 2
Notice
Down you find the rules that tried to do the same before.
- Author:
- aenders
Component Variables
Content Type | Name | Description | Data Type | Unit | Min Value | Max Value | Default Value |
---|---|---|---|---|---|---|---|
constant | cAbsoluteTemperatureThreshold | Temperature when plant dies after one day | DOUBLE | ° | -20.0 | 20.0 | 0.0 |
constant | cCatchCropIDs | - | CHARARRAY | 1 | - | - | - |
constant | cDaysUnderThreshold | Number of days under temperatur threshold | INT | 1 | 0 | 20 | 3 |
constant | cKillDoy | Last DOY to kill the plant even if not mature, -1 if should switch off | INT | 1 | -1 | 366 | -1 |
constant | cMaturityDate | Last date to harvest plant even if not mature | DATE | ° | - | - | - |
constant | cMaturityDoy | Last date to harvest plant even if not mature | INT | ° | - | - | - |
constant | cRelativeTemperatureThreshold | Temperature when plant dies after ${cDaysUnderThreshold} days | DOUBLE | ° | -20.0 | 20.0 | 2.0 |
input | iAirTemperatureMean | Current Mean Air Temperature | DOUBLE | ° | -40.0 | 60.0 | 0.0 |
input | iCropName | Current corp name to match it with ${cCatchCropIDs} | CHAR | 1 | - | - | |
input | iDVS | Developmentstage between 0 and 2 | DOUBLE | 1 | 0.0 | 4.0 | 0.0 |
out | CurrentDaysUnderThreshold | Number of days under temperatur threshold | INT | 1 | 0 | 20 | 3 |
out | DoHarvest | Switch to indicate if the plant should be harvested | BOOLEAN | 1 | - | - | false |
out | DoKill | Switch to indicate if the plant should be killed | BOOLEAN | 1 | - | - | false |
out | WithCrop | Switch to indicate the days of the year where a crop is present | BOOLEAN | 1 | - | - | false |
-
Nested Class Summary
Nested classes/interfaces inherited from class net.simplace.sim.model.FWSimComponent
net.simplace.sim.model.FWSimComponent.TEST_STATE
-
Field Summary
Fields inherited from class net.simplace.sim.model.FWSimComponent
iFieldMap, iFrequence, iInputMap, iJexlRule, iMasterComponentGroup, iName, iOrderNumber, isComponentGroup, iSimComponentElement, iSimModel, iVarMap
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected net.simplace.sim.model.FWSimComponent
clone
(net.simplace.sim.util.FWSimVarMap aVarMap) fillTestVariables
(int aParamIndex, net.simplace.sim.model.FWSimComponent.TEST_STATE aDefineOrCheck) called for single component test to check the components algorithm.protected void
init()
protected void
process()
Methods inherited from class 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
-
Constructor Details
-
HarvestKillManagement
public HarvestKillManagement(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) - Parameters:
aName
-aFieldMap
-aInputMap
-aSimComponentElement
-aVarMap
-aOrderNumber
-
-
HarvestKillManagement
public HarvestKillManagement()called from class.forName()
-
-
Method Details
-
init
protected void init()- Specified by:
init
in classnet.simplace.sim.model.FWSimComponent
-
createVariables
- Specified by:
createVariables
in interfacenet.simplace.sim.util.FWSimFieldContainer
- Specified by:
createVariables
in classnet.simplace.sim.model.FWSimComponent
-
process
protected void process()- Specified by:
process
in classnet.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.- Specified by:
fillTestVariables
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
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) - Specified by:
clone
in classnet.simplace.sim.model.FWSimComponent
-