Klasse NFixationRestrictionFactor

java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.soil.slim.NFixationRestrictionFactor
Alle implementierten Schnittstellen:
net.simplace.sim.util.FWSimFieldContainer

public class NFixationRestrictionFactor extends net.simplace.sim.model.FWSimComponent

Symbiotic N fixation

N fixation is controlled by cNFIXF, the fraction of daily N uptake by fixation. If set to 0 (default), no fixation occurs. If set to 1, then all N demand is fullfilled by N fixation.

The N fixation can be influenced by actual development stage, N and water content by setting the cSymbioticNFixationRestrictionFactor. 0 means no influence of restrictions, 1 means full influence of restrictions.

* \[ r = min(r_{soilN},r_{water},r_{development}) \] \[ ActualSymbioticNFixationRestrictionFactor = r \cdot cSymbioticNFixationRestrictionFactor + (1-cSymbioticNFixationRestrictionFactor) \]

The fixation restriction factor can be used as input to SimComponents like NPKDemand and will be multiplied with the N fixation factor (NFIXF).

Notice that NPKDemandSlimNP and NPKDemandSlimNitrogen have the fixation reduction already implemented.

Autor:
Gunther Krauss

Component Variables

Content TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcSoilLayerDepth-DOUBLEARRAYm---
constantcSoilWaterFieldCapacity-DOUBLEARRAYm3/m3---
constantcSoilWaterWiltingPoint-DOUBLEARRAYm3/m3---
constantcSymbioticNFixationRestrictionFactorinfluence of development, soil water and soil N on fixation factor (0=no restriction, 1=full restriction, default .5)DOUBLE10.01.00.5
inputiDVSactual development stage of crop (from 0 to 2)DOUBLE1--0.0
inputiMD95Number of deepest soil layer containing roots (provided by other SimComponents e.g. SlimRoots)INT10100000
inputiSoilAvailNitrateNitrate in mobile+retained water fractions (without fixed nitrate) in layer iDOUBLEARRAYg/m2---
inputiTotalWaterTotal water content in each soil layer (mm)DOUBLEARRAYmm---
outActualSymbioticNFixationRestrictionFactoractual factor to multiply the ratio of crop N uptake by symbiotic fixation, depending possibly on development, soil water and soil N. DOUBLE10.01.01.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
    Konstruktor
    Beschreibung
    called from class.forName()
    NFixationRestrictionFactor(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)
     
  • Methodenübersicht

    Modifizierer und Typ
    Methode
    Beschreibung
    protected net.simplace.sim.model.FWSimComponent
    clone(net.simplace.sim.util.FWSimVarMap aVarMap)
     
    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.
    final void
    Set the soil water and nitrogen content for all layers.
    protected void
    Calculates one step (i.e. one day)
    protected void
     

    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

    Von Klasse geerbte Methoden java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Konstruktordetails

    • NFixationRestrictionFactor

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

      public NFixationRestrictionFactor()
      called from class.forName()
  • Methodendetails

    • createVariables

      public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> createVariables()
      Angegeben von:
      createVariables in Schnittstelle net.simplace.sim.util.FWSimFieldContainer
      Angegeben von:
      createVariables in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.createVariables()
    • init

      public final void init()
      Set the soil water and nitrogen content for all layers.
      Angegeben von:
      init in Klasse net.simplace.sim.model.FWSimComponent
    • reInitialize

      protected void reInitialize()
    • process

      protected void process()
      Calculates one step (i.e. one day)
      Angegeben von:
      process in Klasse net.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.
      Angegeben von:
      fillTestVariables in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • Ungültige Referenz
        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)
      Angegeben von:
      clone in Klasse net.simplace.sim.model.FWSimComponent
      Siehe auch:
      • FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)