Class LintulFunctions
java.lang.Object
net.simplace.sim.components.models.lintul5.LintulFunctions
- Direct Known Subclasses:
LintulCassavaFunctions
Implements functions for the model Lintul5.
WIKI_START
Algorithms are the same as in (L5). There are only technical changes due to translation from Fortran to JAVA and
integration into Simplace Framework.
Functions are called by the !SimComponent Lintul5.
== References ==
- (L5) [http://models.pps.wur.nl/content/lintul-5-crop-growth-simulation-model-potential-water-limited-n-limited-and-npk-limited-co-0 LINTUL-5 Crop growth simulation model for potential, water-limited, N-limited and NPK-limited conditions]
WIKI_END
- 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
static final record
static final record
static final record
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic double
calculateNFixationFraction
(double FixationRestrictionFactor, double DVS, double RootDepth, Double[] SoilLayerDepth, Double[] FieldCapacity, Double[] WiltingPoint, Double[] WaterContent, Double[] NitrogenContent) Calculate the fraction of N demand that is fullfilled by N fixation The fraction depends on development, soil water content in the upper 30cm and total N content in the rooted zone.DailyTotalIrradiation
(int IDAY, double DAYL, double SINLD, double COSLD, double DTR) Computes daily total irradiationDeadRootsStemsRate
(double DVS, double WRT, double WST, double RDRRT, double RDRST, double DVSDR) Computes the N/P/K losses due to death of leaves, stems and rootsstatic LintulFunctions.DEATHLResult
DEATHL
(double DAY, boolean EMERG, double DVS, double DVSDLT, double RDRTMP, double RDRSHM, double RDRL, double TRANRF, double LAI, double LAICR, double WLVG, double RDRNS, double NPKI, double SLA, double HeatStressFactor) Computes the relative death rate (d-1) of leaves due to age, shading and drought and due to nutrient (NPK) stress and the death rate of leaves in totalstatic LintulFunctions.DEATHLResult
DEATHL
(double DAY, boolean EMERG, double DVS, double DVSDLT, double RDRTMP, double RDRSHM, double RDRL, double TRANRF, double LAI, double LAICR, double WLVG, double RDRNS, double NPKI, double SLA, double HeatStressFactor, double DamageDeadLeavesRelativeRate) Computes the relative death rate (d-1) of leaves due to age, shading and drought and due to nutrient (NPK) stress and the death rate of leaves in totalstatic double
GLA
(double DAY, boolean EMERG, double DTEFF, double LAII, double RGRLAI, double DELT, double SLA, double LAI, double GLV, double NLAI, double DVS, double TRANRF, double NPKI) Computes daily increase of leaf area indexstatic LintulFunctions.GROWTHResult
GROWTH
(double DAY, boolean EMERG, double PAR, double KDIF, double NLUE, double LAI, double RUE, double RTMCO, double TRANRF, double NPKI) Computes the total growth ratestatic LintulFunctions.NDEMNDResult
NDEMND
(double NMAXLV, double NMAXST, double NMAXRT, double NMAXSO, double WLVG, double WST, double WRT, double WSO, double PMAXLV, double PMAXST, double PMAXRT, double PMAXSO, double KMAXLV, double KMAXST, double KMAXRT, double KMAXSO, double ANLV, double ANST, double ANRT, double ANSO, double TCNT, double APLV, double APST, double APRT, double APSO, double TCPT, double AKLV, double AKST, double AKRT, double AKSO, double TCKT) Computes the N/P/K demands of crop organsNNINDX
(double DAY, double DAYEM, boolean EMERG, int IOPT, double NFGMR, double NRMR, double NOPTMR, double PFGMR, double PRMR, double POPTMR, double KFGMR, double KRMR, double KOPTMR) Computes NPK and N/P/K Nutrition Indicesstatic LintulFunctions.NOPTMResult
NOPTM
(double WLVG, double WST, double FRNX, double NMAXLV, double NMAXST, double FRPX, double PMAXLV, double PMAXST, double FRKX, double KMAXLV, double KMAXST) Computes the optimal N/P/K concentrations of crop organsstatic LintulFunctions.NTRANSResult
NTRANS
(double RNSO, double ATNLV, double ATNST, double ATNRT, double ATN, double RPSO, double ATPLV, double ATPST, double ATPRT, double ATP, double RKSO, double ATKLV, double ATKST, double ATKRT, double ATK) Computes the N/P/K translocated from different organsstatic LintulFunctions.NTRLOCResult
NTRLOC
(double ANLV, double ANST, double ANRT, double WLVG, double WST, double WRT, double RNFLV, double RNFST, double RNFRT, double FNTRT, double APLV, double APST, double APRT, double AKLV, double AKST, double AKRT, double RPFLV, double RPFST, double RPFRT, double RKFLV, double RKFST, double RKFRT) Computes the translocatable N/P/K in the organsNUptake
(boolean EMERG, int IOPT, double NLIMIT, double NFIXF, double NMINT, double PMINT, double KMINT, double NDEMSO, double PDEMSO, double KDEMSO, double NSUPSO, double PSUPSO, double KSUPSO, double NDEMTO, double PDEMTO, double KDEMTO) Computes NUptakestatic LintulFunctions.PENMANResult
PENMAN
(double ALTI, double TMIN, double TMAX, double WIND, double VAP, double CO2Factor, double AVRAD, double ATMTR) This subroutine calculates atmospheric transmission, potential evaporation from a free water surface (E0), a bare soil surface (ES0) and the potential transpiration of a closed crop canopy (ET0); CO2 effect on crop transpiration is included.static LintulFunctions.RELGRResult
RELGR
(double DAY, double DAYEM, boolean EMERG, double GRT, double FLV, double FRT, double FST, double FSO, double DLV, double DRRT, double DRST) Computes the relative growth rate of roots, leaves, stem and storage organsRemovedN
(double ANFRT, double ANFLV, double ANFST, double ANFSO, double RNFRT, double RNFLV, double RNFST, double RemovedRWRT, double RemovedRWLVG, double RemovedRWST, double RemovedRWSO, double RemovedDRRT, double RemovedDLV, double RemovedDRST, double DLVToLitter, double DRSTToLitter) Computes N in remmoved biomass (dead and living)RemovedP
(double APFRT, double APFLV, double APFST, double APFSO, double RPFRT, double RPFLV, double RPFST, double RemovedRWRT, double RemovedRWLVG, double RemovedRWST, double RemovedRWSO, double RemovedDRRT, double RemovedDLV, double RemovedDRST, double DLVToLitter, double DRSTToLitter) Computes P in removed biomass (dead and living)static LintulFunctions.RNLDResult
RNLD
(double RNFLV, double DLV, double RNFRT, double RPFLV, double RPFRT, double RKFLV, double RKFRT, double RNFST, double RPFST, double RKFST, double DRRT, double DRST) Computes the N/P/K losses due to death of leaves, stemsstatic LintulFunctions.RNUSUBResult
RNUSUB
(double DAY, double DAYEM, boolean EMERG, double NDEML, double NDEMS, double NDEMR, double NUPTR, double PDEML, double PDEMS, double PDEMR, double PUPTR, double KDEML, double KDEMS, double KDEMR, double KUPTR, double NFIXTR, double NDEMTO, double PDEMTO, double KDEMTO) Computes the partitioning of the total N/P/K uptake rates (NUPTR,PUPTR,KUPTR) over leaves, stem, and rootsSoilMineralKRates
(boolean EMERG, double NLIMIT, Double FERK, Double KRF, double RTKMINS, double KMINI, double KMIN, double KUPTR) SoilNutrientRates
(boolean EMERG, double NLIMIT, Double FERN, Double NRF, Double FERP, Double PRF, Double FERK, Double KRF, double RTNMINS, double RTPMINS, double RTKMINS, double NMINI, double PMINI, double KMINI, double NMIN, double PMIN, double KMIN, double NUPTR, double PUPTR, double KUPTR) SoilNutrientRates
(boolean EMERG, double NLIMIT, Double FERN, Double NRF, Double FERP, Double PRF, Double FERK, Double KRF, double RTNMINS, double RTPMINS, double RTKMINS, double NMINI, double PMINI, double KMINI, double NMIN, double PMIN, double KMIN, double NUPTR, double PUPTR, double KUPTR, double ScaleFactorFERN, double ScaleFactorFERP, double ScaleFactorFERK) static LintulFunctions.SUBPARResult
SUBPAR
(double NPART, double TRANRF, double NNI, double FRTWET, double FLVT, double FSTT, double FSOT) Modification of dry matter partitioning to leaves, stems, roots and storage organs in dependence of water and N stressstatic double
SWEAF
(double ET0, double CGNR) Calculates the fraction of easily available soil water between fc and wp Chapter 20 in documentation WOFOST Version 4.1 (1988) The fraction of easily available soil water between field capacity and wilting point is a function of the potential evapotranspiration rate (for a closed canopy) in cm/day, ET0, and the crop group number, CGNR (from 1 (=drought-sensitive) to 5 (=drought-resistent)).
-
Constructor Details
-
LintulFunctions
public LintulFunctions()
-
-
Method Details
-
NTRLOC
public static LintulFunctions.NTRLOCResult NTRLOC(double ANLV, double ANST, double ANRT, double WLVG, double WST, double WRT, double RNFLV, double RNFST, double RNFRT, double FNTRT, double APLV, double APST, double APRT, double AKLV, double AKST, double AKRT, double RPFLV, double RPFST, double RPFRT, double RKFLV, double RKFST, double RKFRT) Computes the translocatable N/P/K in the organs- Parameters:
ANLV
-ANST
-ANRT
-WLVG
-WST
-WRT
-RNFLV
-RNFST
-RNFRT
-FNTRT
-APLV
-APST
-APRT
-AKLV
-AKST
-AKRT
-RPFLV
-RPFST
-RPFRT
-RKFLV
-RKFST
-RKFRT
-- Returns:
-
NOPTM
public static LintulFunctions.NOPTMResult NOPTM(double WLVG, double WST, double FRNX, double NMAXLV, double NMAXST, double FRPX, double PMAXLV, double PMAXST, double FRKX, double KMAXLV, double KMAXST) Computes the optimal N/P/K concentrations of crop organs- Parameters:
WLVG
-WST
-FRNX
-NMAXLV
-NMAXST
-FRPX
-PMAXLV
-PMAXST
-FRKX
-KMAXLV
-KMAXST
-- Returns:
-
NNINDX
public static LintulFunctions.NNIINDXResult NNINDX(double DAY, double DAYEM, boolean EMERG, int IOPT, double NFGMR, double NRMR, double NOPTMR, double PFGMR, double PRMR, double POPTMR, double KFGMR, double KRMR, double KOPTMR) Computes NPK and N/P/K Nutrition Indices- Parameters:
DAY
-DAYEM
-EMERG
-IOPT
-NFGMR
-NRMR
-NOPTMR
-PFGMR
-PRMR
-POPTMR
-KFGMR
-KRMR
-KOPTMR
-- Returns:
-
DeadRootsStemsRate
public static LintulFunctions.DeadRootsStemsRateResult DeadRootsStemsRate(double DVS, double WRT, double WST, double RDRRT, double RDRST, double DVSDR) Computes the N/P/K losses due to death of leaves, stems and roots- Parameters:
DVS
-WRT
-WST
-RDRRT
-RDRST
-DVSDR
-- Returns:
-
RNLD
public static LintulFunctions.RNLDResult RNLD(double RNFLV, double DLV, double RNFRT, double RPFLV, double RPFRT, double RKFLV, double RKFRT, double RNFST, double RPFST, double RKFST, double DRRT, double DRST) Computes the N/P/K losses due to death of leaves, stems- Parameters:
RNFLV
-DLV
-RNFRT
-RPFLV
-RPFRT
-RKFLV
-RKFRT
-RNFST
-RPFST
-RKFST
-DRRT
-DRST
-- Returns:
-
RemovedN
public static LintulFunctions.RemovedNResult RemovedN(double ANFRT, double ANFLV, double ANFST, double ANFSO, double RNFRT, double RNFLV, double RNFST, double RemovedRWRT, double RemovedRWLVG, double RemovedRWST, double RemovedRWSO, double RemovedDRRT, double RemovedDLV, double RemovedDRST, double DLVToLitter, double DRSTToLitter) Computes N in remmoved biomass (dead and living)- Parameters:
ANFRT
-ANFLV
-ANFST
-ANFSO
-RNFRT
-RNFLV
-RNFST
-RemovedRWRT
-RemovedRWLVG
-RemovedRWST
-RemovedRWSO
-RemovedDRRT
-RemovedDLV
-RemovedDRST
-- Returns:
-
RemovedP
public static LintulFunctions.RemovedPResult RemovedP(double APFRT, double APFLV, double APFST, double APFSO, double RPFRT, double RPFLV, double RPFST, double RemovedRWRT, double RemovedRWLVG, double RemovedRWST, double RemovedRWSO, double RemovedDRRT, double RemovedDLV, double RemovedDRST, double DLVToLitter, double DRSTToLitter) Computes P in removed biomass (dead and living)- Parameters:
APFRT
-APFLV
-APFST
-APFSO
-RPFRT
-RPFLV
-RPFST
-RemovedRWRT
-RemovedRWLVG
-RemovedRWST
-RemovedRWSO
-RemovedDRRT
-RemovedDLV
-RemovedDRST
-DLVToLitter
-DRSTToLitter
-- Returns:
-
NDEMND
public static LintulFunctions.NDEMNDResult NDEMND(double NMAXLV, double NMAXST, double NMAXRT, double NMAXSO, double WLVG, double WST, double WRT, double WSO, double PMAXLV, double PMAXST, double PMAXRT, double PMAXSO, double KMAXLV, double KMAXST, double KMAXRT, double KMAXSO, double ANLV, double ANST, double ANRT, double ANSO, double TCNT, double APLV, double APST, double APRT, double APSO, double TCPT, double AKLV, double AKST, double AKRT, double AKSO, double TCKT) Computes the N/P/K demands of crop organs- Parameters:
NMAXLV
-NMAXST
-NMAXRT
-NMAXSO
-WLVG
-WST
-WRT
-WSO
-PMAXLV
-PMAXST
-PMAXRT
-PMAXSO
-KMAXLV
-KMAXST
-KMAXRT
-KMAXSO
-ANLV
-ANST
-ANRT
-ANSO
-TCNT
-APLV
-APST
-APRT
-APSO
-TCPT
-AKLV
-AKST
-AKRT
-AKSO
-TCKT
-- Returns:
-
NUptake
public static LintulFunctions.NUptakeResult NUptake(boolean EMERG, int IOPT, double NLIMIT, double NFIXF, double NMINT, double PMINT, double KMINT, double NDEMSO, double PDEMSO, double KDEMSO, double NSUPSO, double PSUPSO, double KSUPSO, double NDEMTO, double PDEMTO, double KDEMTO) Computes NUptake- Parameters:
EMERG
-IOPT
-NLIMIT
-NFIXF
-NMINT
-PMINT
-KMINT
-NDEMSO
-PDEMSO
-KDEMSO
-NSUPSO
-PSUPSO
-KSUPSO
-NDEMTO
-PDEMTO
-KDEMTO
-- Returns:
-
NTRANS
public static LintulFunctions.NTRANSResult NTRANS(double RNSO, double ATNLV, double ATNST, double ATNRT, double ATN, double RPSO, double ATPLV, double ATPST, double ATPRT, double ATP, double RKSO, double ATKLV, double ATKST, double ATKRT, double ATK) Computes the N/P/K translocated from different organs- Parameters:
RNSO
-ATNLV
-ATNST
-ATNRT
-ATN
-RPSO
-ATPLV
-ATPST
-ATPRT
-ATP
-RKSO
-ATKLV
-ATKST
-ATKRT
-ATK
-- Returns:
-
RNUSUB
public static LintulFunctions.RNUSUBResult RNUSUB(double DAY, double DAYEM, boolean EMERG, double NDEML, double NDEMS, double NDEMR, double NUPTR, double PDEML, double PDEMS, double PDEMR, double PUPTR, double KDEML, double KDEMS, double KDEMR, double KUPTR, double NFIXTR, double NDEMTO, double PDEMTO, double KDEMTO) Computes the partitioning of the total N/P/K uptake rates (NUPTR,PUPTR,KUPTR) over leaves, stem, and roots- Parameters:
DAY
-DAYEM
-EMERG
-NDEML
-NDEMS
-NDEMR
-NUPTR
-PDEML
-PDEMS
-PDEMR
-PUPTR
-KDEML
-KDEMS
-KDEMR
-KUPTR
-NFIXTR
-NDEMTO
-PDEMTO
-KDEMTO
-- Returns:
-
SoilNutrientRates
public static LintulFunctions.SoilNutrientRatesResult SoilNutrientRates(boolean EMERG, double NLIMIT, Double FERN, Double NRF, Double FERP, Double PRF, Double FERK, Double KRF, double RTNMINS, double RTPMINS, double RTKMINS, double NMINI, double PMINI, double KMINI, double NMIN, double PMIN, double KMIN, double NUPTR, double PUPTR, double KUPTR) -
SoilNutrientRates
public static LintulFunctions.SoilNutrientRatesResult SoilNutrientRates(boolean EMERG, double NLIMIT, Double FERN, Double NRF, Double FERP, Double PRF, Double FERK, Double KRF, double RTNMINS, double RTPMINS, double RTKMINS, double NMINI, double PMINI, double KMINI, double NMIN, double PMIN, double KMIN, double NUPTR, double PUPTR, double KUPTR, double ScaleFactorFERN, double ScaleFactorFERP, double ScaleFactorFERK) -
SoilMineralKRates
public static LintulFunctions.SoilMineralRatesResult SoilMineralKRates(boolean EMERG, double NLIMIT, Double FERK, Double KRF, double RTKMINS, double KMINI, double KMIN, double KUPTR) -
SUBPAR
public static LintulFunctions.SUBPARResult SUBPAR(double NPART, double TRANRF, double NNI, double FRTWET, double FLVT, double FSTT, double FSOT) Modification of dry matter partitioning to leaves, stems, roots and storage organs in dependence of water and N stress- Parameters:
NPART
-TRANRF
-NNI
-FRTWET
-FLVT
-FSTT
-FSOT
-- Returns:
-
GROWTH
public static LintulFunctions.GROWTHResult GROWTH(double DAY, boolean EMERG, double PAR, double KDIF, double NLUE, double LAI, double RUE, double RTMCO, double TRANRF, double NPKI) Computes the total growth rate- Parameters:
DAY
-EMERG
-PAR
-KDIF
-NLUE
-LAI
-RUE
-RTMCO
-TRANRF
-NPKI
-- Returns:
-
DEATHL
public static LintulFunctions.DEATHLResult DEATHL(double DAY, boolean EMERG, double DVS, double DVSDLT, double RDRTMP, double RDRSHM, double RDRL, double TRANRF, double LAI, double LAICR, double WLVG, double RDRNS, double NPKI, double SLA, double HeatStressFactor) Computes the relative death rate (d-1) of leaves due to age, shading and drought and due to nutrient (NPK) stress and the death rate of leaves in total- Parameters:
DAY
-EMERG
-DVS
-DVSDLT
-RDRTMP
-RDRSHM
-RDRL
-TRANRF
-LAI
-LAICR
-WLVG
-RDRNS
-NPKI
-SLA
-HeatStressFactor
-- Returns:
-
DEATHL
public static LintulFunctions.DEATHLResult DEATHL(double DAY, boolean EMERG, double DVS, double DVSDLT, double RDRTMP, double RDRSHM, double RDRL, double TRANRF, double LAI, double LAICR, double WLVG, double RDRNS, double NPKI, double SLA, double HeatStressFactor, double DamageDeadLeavesRelativeRate) Computes the relative death rate (d-1) of leaves due to age, shading and drought and due to nutrient (NPK) stress and the death rate of leaves in total- Parameters:
DAY
-EMERG
-DVS
-DVSDLT
-RDRTMP
-RDRSHM
-RDRL
-TRANRF
-LAI
-LAICR
-WLVG
-RDRNS
-NPKI
-SLA
-HeatStressFactor
-DamageDeadLeavesRelativeRate
-- Returns:
-
GLA
public static double GLA(double DAY, boolean EMERG, double DTEFF, double LAII, double RGRLAI, double DELT, double SLA, double LAI, double GLV, double NLAI, double DVS, double TRANRF, double NPKI) Computes daily increase of leaf area index- Parameters:
DAY
-EMERG
-DTEFF
-LAII
-RGRLAI
-DELT
-SLA
-LAI
-GLV
-NLAI
-DVS
-TRANRF
-NPKI
-- Returns:
- GLAI
-
RELGR
public static LintulFunctions.RELGRResult RELGR(double DAY, double DAYEM, boolean EMERG, double GRT, double FLV, double FRT, double FST, double FSO, double DLV, double DRRT, double DRST) Computes the relative growth rate of roots, leaves, stem and storage organs- Parameters:
DAY
-DAYEM
-EMERG
-GRT
-FLV
-FRT
-FST
-FSO
-DLV
-DRRT
-DRST
-- Returns:
-
DailyTotalIrradiation
public static LintulFunctions.DailyTotalIrradiationResult DailyTotalIrradiation(int IDAY, double DAYL, double SINLD, double COSLD, double DTR) Computes daily total irradiation- Parameters:
IDAY
-DAYL
-SINLD
-COSLD
-DTR
-- Returns:
- DailyTotalIrradiationResult with AVRAD and ATMTR
-
PENMAN
public static LintulFunctions.PENMANResult PENMAN(double ALTI, double TMIN, double TMAX, double WIND, double VAP, double CO2Factor, double AVRAD, double ATMTR) This subroutine calculates atmospheric transmission, potential evaporation from a free water surface (E0), a bare soil surface (ES0) and the potential transpiration of a closed crop canopy (ET0); CO2 effect on crop transpiration is included. Author : Daniel van Kraalingen, based on an earlier version written by: Kees van Diepen and Gert-Jan Nooy- Parameters:
ALTI
- Altitude (m)TMIN
- Minimum temperature during day (C)TMAX
- Maximum temperature during day (C)WIND
- Average windspeed (m s-1)VAP
- Vapour pressure (mbar)CO2Factor
- factor to correct ET0 regarding to CO2 concetrationAVRAD
- Daily total irradiation (J m-2 d-1)ATMTR
-- Returns:
- PENMANResult
-
SWEAF
public static double SWEAF(double ET0, double CGNR) Calculates the fraction of easily available soil water between fc and wp Chapter 20 in documentation WOFOST Version 4.1 (1988) The fraction of easily available soil water between field capacity and wilting point is a function of the potential evapotranspiration rate (for a closed canopy) in cm/day, ET0, and the crop group number, CGNR (from 1 (=drought-sensitive) to 5 (=drought-resistent)). The function SWEAF describes this relationship given in tabular form by Doorenbos & Kassam (1979) and by Van Keulen & Wolf (1986; p.108, table 20). Authors: D.M. Jansen and C.A. van Diepen, October 1986.- Parameters:
ET0
-CGNR
-- Returns:
- the fraction of easily available soil water between fc and wp
-
calculateNFixationFraction
public static double calculateNFixationFraction(double FixationRestrictionFactor, double DVS, double RootDepth, Double[] SoilLayerDepth, Double[] FieldCapacity, Double[] WiltingPoint, Double[] WaterContent, Double[] NitrogenContent) Calculate the fraction of N demand that is fullfilled by N fixation The fraction depends on development, soil water content in the upper 30cm and total N content in the rooted zone. The FixationRestrictionFactor controls how much these conditions influence the fraction. See: Williams and Izaurralde, The Apex Model, Equation 288 and 288a-288i- Parameters:
FixationRestrictionFactor
-DVS
- development stageRootDepth
- root depthSoilLayerDepth
- bottom depth of all soil layersFieldCapacity
- field capacity per soil layersWaterContent
- water content per soil layersNitrogenContent
- nitrogen content per soil layers- Returns:
-