Class LintulCCFunctions

java.lang.Object
net.simplace.sim.components.experimental.lintulcc.LintulCCFunctions

public class LintulCCFunctions extends Object
Defines various functions for the LintulCC SimComponent and its extensions.
Author:
G. Krauss
  • 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
    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)
     
    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)
     
    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
    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 VAP, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
     
    TOTASSDiurnal(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 CO2A, 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)
     
    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 VAP, double CiCaRatio, double g0, double a1, double d0, double VCmaxUpperLimit, double GAMmaxLowerLimit)
    • 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:
    • 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)
    • 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:
    • 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 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[] 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)