Class LintulCCFunctions

java.lang.Object
net.simplace.usermodules.dominik.LintulCCFunctions

public class LintulCCFunctions extends Object
Defines various functions for the LintulCC SimComponent and its extensions.
Author:
G. Krauss, D. Behrend
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    ASSIM(int DAE, double SCP, double KDF, double LAI, double SINB, double PARDR, double PARDF, double KC25, double TEMPd, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double PsiC, double RoCpJ, double VPDd, double Rbound, double SLOPEd, double ORLOSS, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
    Calculates assimilates for C3 or C4 crops Variable parameters for C3 or C4 crops
    ASSIM_new(int DAE, double SCP, double KDF, double LAI, double SINB, double PARDR, double PARDF, double Flnr, double Fnr, double KC25, double TEMPd, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double PsiC, double RoCpJ, double VPDd, double Rbound, double SLOPEd, double ORLOSS, double SLA, boolean HasFlowered, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
     
    ASSIMOzone(int DAE, double SCP, double KDF, double LAI, double SINB, double PARDR, double PARDF, double KC25, double TEMPd, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double PsiC, double RoCpJ, double VPDd, double Rbound, double SLOPEd, double ORLOSS, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit, double OZIH, double DOZA, double DOZB, double longtermozonefactor)
     
    ASTRO(int DOY, double LAT)
     
    static double
    calculate_albedo(double WCL, double WCST, double LAI)
     
    calculate_radiation_and_vap(int J, double hour, double latitude, double z, double L_z, double L_m, double DAYLEN, double Temperature, double R_s, double WIND, double tCROPHT, double e_a, double PsiC, double albedo)
     
    calculateConductance(double SUF, double Hsr, double hbs, double Hbs, double Hcollarlim, double Tpot, double Krs, double RLD, double rroot, double lroot, double kr, double z, double ThetaS, double Theta, double ThetaR, double GenM, double GenN, double GenAlpha)
     
    GLA(double WLVG, double DTEFF, double TSUM, double RGRL, double DELT, double LAI, double GLV, double TTSSE, double PHY, double DSF1, double TTANTH, double TSUMend, double minSLA, double maxSLA)
     
    static double
    kprhiz_function(double hBS, double hsr, double GenM, double GenN, double GenAlpha)
     
    PART(double TSUM, double TTSSE, double TTANTH, double PHY, Double[] PCRTB_x, Double[] PCRTB_y, Double[] PCLTB_x, Double[] PCLTB_y)
    Calculates partitioning fractions
    PART(double TSUM, double TTSSE, double TTANTH, double PHY, Double[] PCRTB_x, Double[] PCRTB_y, Double[] PCLTB_x, Double[] PCLTB_y, double maxFractionLeaves, double maxFractionRoots, double parTsumLeaf, double parTsumRoot)
    Calculate partition Fractions
    PART_RelativeSS(double TSUM, double TTSSE, double TTANTH, double TWPAW, double root_ini_w, double root_end_w, double cLNRM, double stem_ini_w, double stem_end_w, double cLNSB, double cLNSM, double leaf_ini_w, double leaf_end_w, double cLNLM, double leaf_sens, double root_sens, double stem_sens, double PHY)
    Calculates partitioning fractions according to the relative sink strength principle using a sigmoid growth function
    PART_RelativeSS_DVS(double TSUM, double TTSSE, double TTANTH, double TWPAW, double RootWeightFlowering, double cDVSRootMain, double StemWeightFlowering, double cDVSStemBase, double cDVSStemMain, double LeafWeightFlowering, double cDVSLeafMain, double cDVSLeafBase, double cLeafSensWater, double cRootSensWater, double cStemSensWater, double PHY, double sDVS)
    Calculates partitioning fractions according to the relative sink strength principle using a sigmoid growth function
    PEN_MONTH(double WIND, double CROPHT, double VAP, double DRScropH2O, double PsiC, double ONRAD, double SLOPE, double SVAP)
     
    PEN_MONTH_Diurnal(double WIND, double CROPHT, double VAP, double RScropH2O, double PsiC, double ONRAD, double G, double SLOPE, double SVAP, double rho_a)
     
    PhenologyVariables(int currentDOY, LocalDateTime currentDate, Double TTANTH, Double GFDUR, Double TSUM, Double RTSUM, Double DVS, Boolean hasEmerged, Boolean hasFlowered, Boolean hasMatured, Integer emergenceDOY, Integer anthesisDOY, Integer maturityDOY, LocalDateTime emergenceDate, LocalDateTime anthesisDate, LocalDateTime maturityDate)
     
    static double
    PHOTOP(int DOY, double LAT, int DAE, double RCPHOE)
    Calculates the rate of change of the photoperiod at emergence.
    RSISO(double TSUM, double WSHOOT, int DAE, double TTANTH, double MSLPN, double MSLN, double DAVTMP, double TMMX, double TMMN, double POTGGR, double WST, double PRWSO, double GFDUR, double DSF1, Double[] TMPTB_y, Double[] TMPTB_x, double GRAINN, double SDWANT, int SWITCH, double TFAC, double CDSF1, Double[] PHEADW, Integer[] PHEDAE)
     
    TOTASS(double TMMN, double TMMX, double DAYLEN, int DAE, int DOY, double LAT, double DTR, double SCP, double KDF, double LAI, double KC25, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double STRESS, double PsiC, double RoCp, double Rbound, double ORLOSS, double SLA, boolean HasFlowered, double VAP, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit, double Flnr, double Fnr)
     
    TOTASSDiurnal(Double[] TM, double DAYLEN, int DAE, int DOY, double LAT, double[] DTR, double SCP, double KDF, double LAI, double KC25, double EAVCMX, double Flnr, double Fnr, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double STRESS, double PsiC, double RoCp, double Rbound, double ORLOSS, double SLA, boolean HasFLowered, double[] vAPDiurnal, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
     
    TOTASSDiurnalOzone(Double[] TM, double DAYLEN, int DAE, int DOY, double LAT, double[] DTR, double SCP, double KDF, double LAI, double KC25, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, Double[] CO2ADiurnal, double JMUMOL, double TWPAW, double O2, double STRESS, double PsiC, double RoCp, double Rbound, double ORLOSS, double[] vAPDiurnal, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit, Double[] OZIH, double DOZA, double DOZB, double longtermozonefactor)
     
    WATERB(double TTANTH, double TSUM, Double[] WCLI, double DELT, double DAVTMP, double CROPHT, double RRAIN, double LAI, Double[] WCFC, Double[] WCST, Double[] WCWP, Double[] WCAD, Double[] TKL, double VAP, double WIND, int DAE, double SRNOFF, double SAINTC, double WRT, double DRScropH2O, boolean IRRIG, double ONRAD, double SLOPE, double SVAP, double PsiC, double TPVAP, double TAEVAP, Double[] WCL, double NNR, double ZRT, int RLAYER, Double[] LAYERRT, Double[] WUperLayer)
     
    WATERB_Simple(Double[] WCFC, Double[] WCWP, Double[] LayerDepth, boolean IRRIG, Double[] RLV, Double[] WC)
     
    WATUP(int DAE, double TTANTH, double TSUM, double WRT, double PTRANS, Double[] TKL, Double[] WCWP, Double[] WC, Double[] WCFC, double DAVTMP, double ZRT, int RLAYER, Double[] LAYERRT, Double[] WUperLayer)
     
    WFLOW(int DAE, Double[] WCLI, Double[] WCL, double RINF, Double[] TKL, Double[] WCST, Double[] WCFC)
     

    Methods inherited from class java.lang.Object

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

    • LintulCCFunctions

      public LintulCCFunctions()
  • Method Details

    • PHOTOP

      public static double PHOTOP(int DOY, double LAT, int DAE, double RCPHOE)
      Calculates the rate of change of the photoperiod at emergence.
      Parameters:
      DOY - day of year
      LAT - latitude
      DAE - days since emergence (starts with 1)
      RCPHOE - rate of change of photoperiod at emergence
      Returns:
      updated rate of change of photoperiod at emergence
    • TOTASS

      public static HashMap<String,Double> TOTASS(double TMMN, double TMMX, double DAYLEN, int DAE, int DOY, double LAT, double DTR, double SCP, double KDF, double LAI, double KC25, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double STRESS, double PsiC, double RoCp, double Rbound, double ORLOSS, double SLA, boolean HasFlowered, double VAP, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit, double Flnr, double Fnr)
    • ASTRO

      public static HashMap<String,Double> ASTRO(int DOY, double LAT)
    • PhenologyVariables

      public static HashMap<String,Object> PhenologyVariables(int currentDOY, LocalDateTime currentDate, Double TTANTH, Double GFDUR, Double TSUM, Double RTSUM, Double DVS, Boolean hasEmerged, Boolean hasFlowered, Boolean hasMatured, Integer emergenceDOY, Integer anthesisDOY, Integer maturityDOY, LocalDateTime emergenceDate, LocalDateTime anthesisDate, LocalDateTime maturityDate)
    • ASSIM

      public static HashMap<String,Double> ASSIM(int DAE, double SCP, double KDF, double LAI, double SINB, double PARDR, double PARDF, double KC25, double TEMPd, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double PsiC, double RoCpJ, double VPDd, double Rbound, double SLOPEd, double ORLOSS, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
      Calculates assimilates for C3 or C4 crops Variable parameters for C3 or C4 crops
      Parameters:
      DAE -
      SCP -
      KDF -
      LAI -
      SINB -
      PARDR -
      PARDF -
      KC25 -
      TEMPd -
      EAVCMX -
      KMC25 -
      EAKMC -
      EAKMO -
      KMO25 -
      CO2A -
      JMUMOL -
      TWPAW -
      O2 -
      PsiC -
      RoCpJ -
      VPDd -
      Rbound -
      SLOPEd -
      ORLOSS -
      CiCaRatio -
      g0 -
      a1 -
      d0 -
      Returns:
    • ASSIM_new

      public static HashMap<String,Double> ASSIM_new(int DAE, double SCP, double KDF, double LAI, double SINB, double PARDR, double PARDF, double Flnr, double Fnr, double KC25, double TEMPd, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double PsiC, double RoCpJ, double VPDd, double Rbound, double SLOPEd, double ORLOSS, double SLA, boolean HasFlowered, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
    • ASSIMOzone

      public static HashMap<String,Double> ASSIMOzone(int DAE, double SCP, double KDF, double LAI, double SINB, double PARDR, double PARDF, double KC25, double TEMPd, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double PsiC, double RoCpJ, double VPDd, double Rbound, double SLOPEd, double ORLOSS, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit, double OZIH, double DOZA, double DOZB, double longtermozonefactor)
    • WATERB

      public static HashMap<String,Object> WATERB(double TTANTH, double TSUM, Double[] WCLI, double DELT, double DAVTMP, double CROPHT, double RRAIN, double LAI, Double[] WCFC, Double[] WCST, Double[] WCWP, Double[] WCAD, Double[] TKL, double VAP, double WIND, int DAE, double SRNOFF, double SAINTC, double WRT, double DRScropH2O, boolean IRRIG, double ONRAD, double SLOPE, double SVAP, double PsiC, double TPVAP, double TAEVAP, Double[] WCL, double NNR, double ZRT, int RLAYER, Double[] LAYERRT, Double[] WUperLayer)
    • WATERB_Simple

      public static HashMap<String,Object> WATERB_Simple(Double[] WCFC, Double[] WCWP, Double[] LayerDepth, boolean IRRIG, Double[] RLV, Double[] WC)
    • WFLOW

      public static HashMap<String,Object> WFLOW(int DAE, Double[] WCLI, Double[] WCL, double RINF, Double[] TKL, Double[] WCST, Double[] WCFC)
    • PEN_MONTH

      public static HashMap<String,Double> PEN_MONTH(double WIND, double CROPHT, double VAP, double DRScropH2O, double PsiC, double ONRAD, double SLOPE, double SVAP)
    • PEN_MONTH_Diurnal

      public static HashMap<String,Double> PEN_MONTH_Diurnal(double WIND, double CROPHT, double VAP, double RScropH2O, double PsiC, double ONRAD, double G, double SLOPE, double SVAP, double rho_a)
    • kprhiz_function

      public static double kprhiz_function(double hBS, double hsr, double GenM, double GenN, double GenAlpha)
    • calculateConductance

      public static HashMap<String,Double> calculateConductance(double SUF, double Hsr, double hbs, double Hbs, double Hcollarlim, double Tpot, double Krs, double RLD, double rroot, double lroot, double kr, double z, double ThetaS, double Theta, double ThetaR, double GenM, double GenN, double GenAlpha)
    • WATUP

      public static HashMap<String,Object> WATUP(int DAE, double TTANTH, double TSUM, double WRT, double PTRANS, Double[] TKL, Double[] WCWP, Double[] WC, Double[] WCFC, double DAVTMP, double ZRT, int RLAYER, Double[] LAYERRT, Double[] WUperLayer)
    • PART

      public static HashMap<String,Double> PART(double TSUM, double TTSSE, double TTANTH, double PHY, Double[] PCRTB_x, Double[] PCRTB_y, Double[] PCLTB_x, Double[] PCLTB_y, double maxFractionLeaves, double maxFractionRoots, double parTsumLeaf, double parTsumRoot)
      Calculate partition Fractions
      Parameters:
      TSUM -
      TTSSE -
      TTANTH -
      PHY -
      PCRTB_x -
      PCRTB_y -
      PCLTB_x -
      PCLTB_y -
      maxFractionLeaves -
      maxFractionRoots -
      parTsumLeaf -
      parTsumRoot -
      Returns:
    • PART

      public static HashMap<String,Double> PART(double TSUM, double TTSSE, double TTANTH, double PHY, Double[] PCRTB_x, Double[] PCRTB_y, Double[] PCLTB_x, Double[] PCLTB_y)
      Calculates partitioning fractions
      Parameters:
      TSUM -
      TTSSE -
      TTANTH -
      PHY -
      PCRTB_x -
      PCRTB_y -
      PCLTB_x -
      PCLTB_y -
      Returns:
    • PART_RelativeSS

      public static HashMap<String,Double> PART_RelativeSS(double TSUM, double TTSSE, double TTANTH, double TWPAW, double root_ini_w, double root_end_w, double cLNRM, double stem_ini_w, double stem_end_w, double cLNSB, double cLNSM, double leaf_ini_w, double leaf_end_w, double cLNLM, double leaf_sens, double root_sens, double stem_sens, double PHY)
      Calculates partitioning fractions according to the relative sink strength principle using a sigmoid growth function
      Parameters:
      TSUM -
      TTSSE -
      TTANTH -
      TWPAW -
      Returns:
    • PART_RelativeSS_DVS

      public static HashMap<String,Double> PART_RelativeSS_DVS(double TSUM, double TTSSE, double TTANTH, double TWPAW, double RootWeightFlowering, double cDVSRootMain, double StemWeightFlowering, double cDVSStemBase, double cDVSStemMain, double LeafWeightFlowering, double cDVSLeafMain, double cDVSLeafBase, double cLeafSensWater, double cRootSensWater, double cStemSensWater, double PHY, double sDVS)
      Calculates partitioning fractions according to the relative sink strength principle using a sigmoid growth function
      Parameters:
      TSUM -
      TTSSE -
      TTANTH -
      TWPAW -
      Returns:
    • RSISO

      public static HashMap<String,Object> RSISO(double TSUM, double WSHOOT, int DAE, double TTANTH, double MSLPN, double MSLN, double DAVTMP, double TMMX, double TMMN, double POTGGR, double WST, double PRWSO, double GFDUR, double DSF1, Double[] TMPTB_y, Double[] TMPTB_x, double GRAINN, double SDWANT, int SWITCH, double TFAC, double CDSF1, Double[] PHEADW, Integer[] PHEDAE)
    • GLA

      public static HashMap<String,Double> GLA(double WLVG, double DTEFF, double TSUM, double RGRL, double DELT, double LAI, double GLV, double TTSSE, double PHY, double DSF1, double TTANTH, double TSUMend, double minSLA, double maxSLA)
    • TOTASSDiurnal

      public static HashMap<String,Object> TOTASSDiurnal(Double[] TM, double DAYLEN, int DAE, int DOY, double LAT, double[] DTR, double SCP, double KDF, double LAI, double KC25, double EAVCMX, double Flnr, double Fnr, double KMC25, double EAKMC, double EAKMO, double KMO25, double CO2A, double JMUMOL, double TWPAW, double O2, double STRESS, double PsiC, double RoCp, double Rbound, double ORLOSS, double SLA, boolean HasFLowered, double[] vAPDiurnal, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
    • TOTASSDiurnalOzone

      public static HashMap<String,Object> TOTASSDiurnalOzone(Double[] TM, double DAYLEN, int DAE, int DOY, double LAT, double[] DTR, double SCP, double KDF, double LAI, double KC25, double EAVCMX, double KMC25, double EAKMC, double EAKMO, double KMO25, Double[] CO2ADiurnal, double JMUMOL, double TWPAW, double O2, double STRESS, double PsiC, double RoCp, double Rbound, double ORLOSS, double[] vAPDiurnal, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit, Double[] OZIH, double DOZA, double DOZB, double longtermozonefactor)
    • calculate_radiation_and_vap

      public static HashMap<String,Double> calculate_radiation_and_vap(int J, double hour, double latitude, double z, double L_z, double L_m, double DAYLEN, double Temperature, double R_s, double WIND, double tCROPHT, double e_a, double PsiC, double albedo)
    • calculate_albedo

      public static double calculate_albedo(double WCL, double WCST, double LAI)