Class LintulCCFunctions
java.lang.Object
net.simplace.sim.components.experimental.lintulcc.LintulCCFunctions
Defines various functions for the LintulCC SimComponent and its extensions.
- Author:
- G. Krauss
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
static final record
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionASSIM
(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 cropsASSIMOzone
(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) static LintulCCFunctions.GLAResult
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 LintulCCFunctions.PARTResult
PART
(double TSUM, double TTSSE, double TTANTH, double PHY, Double[] PCRTB_x, Double[] PCRTB_y, Double[] PCLTB_x, Double[] PCLTB_y) Calculates partitioning fractionsstatic LintulCCFunctions.PARTResult
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 FractionsPEN_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)
-
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 yearLAT
- latitudeDAE
- 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 LintulCCFunctions.TOTASSResult 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
-
PhenologyVariables
public static LintulCCFunctions.PhenologyVariables 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 LintulCCFunctions.ASSIMResult 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 LintulCCFunctions.ASSIMROzoneResult 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 LintulCCFunctions.WATERBResult 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
-
WFLOW
-
PEN_MONTH
public static LintulCCFunctions.PEN_MONTHResult PEN_MONTH(double WIND, double CROPHT, double VAP, double DRScropH2O, double PsiC, double ONRAD, double SLOPE, double SVAP) -
PEN_MONTH_Diurnal
public static LintulCCFunctions.PEN_MONTHResult 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
-
PART
public static LintulCCFunctions.PARTResult 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 LintulCCFunctions.PARTResult 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 LintulCCFunctions.RSISOResult 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 LintulCCFunctions.GLAResult 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 LintulCCFunctions.TOTASSDiurnalResult 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 LintulCCFunctions.TOTASSDiurnalOzoneResult 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 LintulCCFunctions.radiation_and_vap 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)
-