Class Fertilizer

java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.management.Fertilizer
All Implemented Interfaces:
net.simplace.sim.util.FWSimFieldContainer

public class Fertilizer extends net.simplace.sim.model.FWSimComponent
The purpose of this sim-component is to calculate the amount of major nutrients, e.g.,organic C, organic N, ammonium, phosphorus and potassium released from applied solid manure.

-Stable Manure has to be applied as Double and at least one of its nutrient composition has to be provided as Double. -The input data can be recorded as amount of stable manure (g/m2) at certain DOY (e.g., 180) for a particular crop (e.g., Winter Wheat) -The constants such organic C, organic N, ammonium, phosphorus and potassium can be recorded as a separate .xml file in terms of concentration of these nutrients (g/g) within the applied solid manure

Author:
andreas and eeusha

Component Variables

Content TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcAmmoniumconcentration of Ammonium N in solid manureDOUBLEg/g0.01.0-
constantcNitrateeffective applications of nitrate NDOUBLEg/g---
constantcNitrateAndAmmoniumeffective applications of nitrate and ammonium NDOUBLEg/g---
constantcOrganicCconcentration of organic C in solid manureDOUBLEg/g0.01.0-
constantcOrganicNconcentration of Fast and Slow fraction Organic N in solid manureDOUBLEg/g0.01.0-
constantcOrganicNFastconcentration of Fast fraction Organic N in solid manureDOUBLEg/g0.01.0-
constantcOrganicNSlowconcentration of Slow fraction Organic N in solid manureDOUBLEg/g0.01.0-
constantcOrganicPconcentration of Organic P in solid manureDOUBLEg/g0.01.0-
constantcPhosphorusconcentration of Phosphorus in solid manureDOUBLEg/g0.01.0-
constantcPotassiumconcentration of Potassium in solid manureDOUBLEg/g0.01.0-
inputiAmounteffective applications of fertilizer. For Liquid Manure take amount[g/m²] = manure[m3/ha] / 10000 * 1.025 as the density of liquid manure is between 1.02 and 1.03DOUBLEg/m2---
outAmmoniumapplied Ammonium NDOUBLEg/m20.01000.00.0
outNitrateapplied nitrate NDOUBLEg/m20.01000.00.0
outNitrateAndAmmoniumapplied nitrate and ammoniumDOUBLEg/m20.01000.00.0
outOrganicCapplied Organi CDOUBLEg/m20.01000.00.0
outOrganicNapplied organic N completeDOUBLEg/m20.0500.00.0
outOrganicNFastapplied organic N Fast FractionDOUBLEg/m20.0500.00.0
outOrganicNSlowapplied organic N Slow FractionDOUBLEg/m20.0500.00.0
outOrganicPapplied organic P completeDOUBLEg/m20.0500.00.0
outPhosphorusapplied PhosphorusDOUBLEg/m20.01000.00.0
outPotassiumapplied PotassiumDOUBLEg/m20.01000.00.0
  • 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

    Constructors
    Constructor
    Description
    Empty constructor used by class.forName()
    Fertilizer(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)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected net.simplace.sim.model.FWSimComponent
    clone(net.simplace.sim.util.FWSimVarMap aVarMap)
    creates a clone from this SimComponent for use in other threads
    HashMap<String,net.simplace.sim.util.FWSimVariable<?>>
     
    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
     

    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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • Fertilizer

      public Fertilizer(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 -
    • Fertilizer

      public Fertilizer()
      Empty constructor used by class.forName()
  • Method Details

    • createVariables

      public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> createVariables()
      Specified by:
      createVariables in interface net.simplace.sim.util.FWSimFieldContainer
      Specified by:
      createVariables in class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.createVariables()
    • init

      protected void init()
      Specified by:
      init in class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.init()
    • process

      protected void process()
      Specified by:
      process in class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.process()
    • 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 class net.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)
      creates a clone from this SimComponent for use in other threads
      Specified by:
      clone in class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)