Class NitrogenSurplus

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

public class NitrogenSurplus extends net.simplace.sim.model.FWSimComponent
The purpose of this sim-component is to calculate the balance of applied and available major nitrogen fertilizer, e.g., organic N, ammonium, nitrate with the plant update resp. demand. This can be used to calculate possible nitrogen loss due to a fertilizer surplus.

Kultur Kennzeichen Ertragsniveau in dt/ha Stickstoffbedarfswert in kg N/ha Ertragsdifferenz in dt/ha Höchstzuschläge bei höheren Erträgen in kg N/ha je Einheit nach Spalte 2 Mindestabschläge bei niedrigeren Erträgen in kg N/ha je Einheit nach Spalte 2 Winterweizen WW 80 230 10 10 15 Hartweizen HW 55 200 10 10 15 Wintergerste WG 70 180 10 10 15 Winterroggen WRo 70 170 10 10 15 Wintertriticale WTr 70 190 10 10 15 Sommergerste SG 50 140 10 10 15 Hafer HA 55 130 10 10 15 Körnermais KM 90 200 10 10 15 Silomais SM 450 200 50 10 15 Zuckerrübe ZR 650 170 100 10 15 Kartoffel KR 450 180 50 10 10 Frühkartoffel fKR 400 220 50 10 10 Sonnenblume SB 30 120 10 10 15 Winterraps WRa 40 200 5 10 15 KornMix CCM 90 200 10 10 15 CatchCrop CC 0 40 0 0 0

Author:
andreas and eeusha

Component Variables

Content TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcCropIDID of crop from above list (static field CropID)CHAR1--
constantcNMinSpringAmount of Nmin (as average of last 3 years)DOUBLEg/m20.01000.00.0
constantcYieldLevelLevel of yield (average in last 3 years) DOUBLEg/m20.01000.0-
inputiAppliedNitrateAndAmmoniumAmount of Nmin applied in current yearDOUBLEg/m20.01000.00.0
inputiAppliedNorgAmount of Norg applied in current yearDOUBLEg/m20.01000.00.0
inputiPlantUptakeAmount of Nmin taken up by plant in current yearDOUBLEg/m20.01000.00.0
outDuevNitrateAndAmmoniumSurplusapplied Ammonium NDOUBLEg/m20.01000.00.0
outDuevRuleAccordanceapplied PhosphorusBOOLEANg/m2--false
outSimNitrateAndAmmoniumSurplusapplied Organi CDOUBLEg/m20.01000.00.0
outSimRuleAccordanceapplied PotassiumBOOLEANg/m2--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
    Modifier and Type
    Field
    Description
    protected static final LinkedList<String>
     
    protected static final Double[]
     
    protected static final Double[]
     
    protected static final Double[]
     
    protected static final String[]
     
    protected static final Double[]
     
    protected static final Double[]
     

    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()
    NitrogenSurplus(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
  • Field Details

    • tCropIDs

      protected static final String[] tCropIDs
    • CropID

      protected static final LinkedList<String> CropID
    • YieldLevel

      protected static final Double[] YieldLevel
    • NitrogenDemand

      protected static final Double[] NitrogenDemand
    • YieldGap

      protected static final Double[] YieldGap
    • FertilizerPlus

      protected static final Double[] FertilizerPlus
    • FertilizerMinus

      protected static final Double[] FertilizerMinus
  • Constructor Details

    • NitrogenSurplus

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

      public NitrogenSurplus()
      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)