net.simplace.sim.components.models.lintul5.LintulFunctions
Implements functions for the model Lintul5.
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
public class LintulFunctions {
// Public Constructors
public LintulFunctions();
// Class Methods public static HashMap
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
- ANLV
- ANST
- ANRT
- WLVG
- WST
- WRT
- RNFLV
- RNFST
- RNFRT
- FNTRT
- APLV
- APST
- APRT
- AKLV
- AKST
- AKRT
- RPFLV
- RPFST
- RPFRT
- RKFLV
- RKFST
- RKFRT
returns public static HashMap
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
- WLVG
- WST
- FRNX
- NMAXLV
- NMAXST
- FRPX
- PMAXLV
- PMAXST
- FRKX
- KMAXLV
- KMAXST
returns public static HashMap
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
- DAY
- DAYEM
- EMERG
- IOPT
- NFGMR
- NRMR
- NOPTMR
- PFGMR
- PRMR
- POPTMR
- KFGMR
- KRMR
- KOPTMR
returns public static HashMap
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
- DVS
- WRT
- WST
- RDRRT
- RDRST
- DVSDR
returns public static HashMap
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
- RNFLV
- DLV
- RNFRT
- RPFLV
- RPFRT
- RKFLV
- RKFRT
- RNFST
- RPFST
- RKFST
- DRRT
- DRST
returns public static HashMap
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)
- ANFRT
- ANFLV
- ANFST
- ANFSO
- RNFRT
- RNFLV
- RNFST
- RemovedRWRT
- RemovedRWLVG
- RemovedRWST
- RemovedRWSO
- RemovedDRRT
- RemovedDLV
- RemovedDRST
returns public static HashMap
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)
- APFRT
- APFLV
- APFST
- APFSO
- RPFRT
- RPFLV
- RPFST
- RemovedRWRT
- RemovedRWLVG
- RemovedRWST
- RemovedRWSO
- RemovedDRRT
- RemovedDLV
- RemovedDRST
- DLVToLitter
- DRSTToLitter
returns public static HashMap
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
- 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 public static HashMap
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
- EMERG
- IOPT
- NLIMIT
- NFIXF
- NMINT
- PMINT
- KMINT
- NDEMSO
- PDEMSO
- KDEMSO
- NSUPSO
- PSUPSO
- KSUPSO
- NDEMTO
- PDEMTO
- KDEMTO
returns public static HashMap
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
- RNSO
- ATNLV
- ATNST
- ATNRT
- ATN
- RPSO
- ATPLV
- ATPST
- ATPRT
- ATP
- RKSO
- ATKLV
- ATKST
- ATKRT
- ATK
returns public static HashMap
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
- DAY
- DAYEM
- EMERG
- NDEML
- NDEMS
- NDEMR
- NUPTR
- PDEML
- PDEMS
- PDEMR
- PUPTR
- KDEML
- KDEMS
- KDEMR
- KUPTR
- NFIXTR
- NDEMTO
- PDEMTO
- KDEMTO
returns public static HashMap 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);
public static HashMap 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);
public static HashMap SoilMineralKRates(boolean EMERG, double NLIMIT, Double
FERK, Double KRF, double RTKMINS, double KMINI, double KMIN, double
KUPTR);
public static HashMap
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
- NPART
- TRANRF
- NNI
- FRTWET
- FLVT
- FSTT
- FSOT
returns public static HashMap
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
- DAY
- EMERG
- PAR
- KDIF
- NLUE
- LAI
- RUE
- RTMCO
- TRANRF
- NPKI
returns public static HashMap
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
- DAY
- EMERG
- DVS
- DVSDLT
- RDRTMP
- RDRSHM
- RDRL
- TRANRF
- LAI
- LAICR
- WLVG
- RDRNS
- NPKI
- SLA
- HeatStressFactor
returns 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
- DAY
- EMERG
- DTEFF
- LAII
- RGRLAI
- DELT
- SLA
- LAI
- GLV
- NLAI
- DVS
- TRANRF
- NPKI
returns GLAI
public static HashMap
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
- DAY
- DAYEM
- EMERG
- GRT
- FLV
- FRT
- FST
- FSO
- DLV
- DRRT
- DRST
returns public static HashMap
DailyTotalIrradiation(int IDAY, double DAYL, double
SINLD, double COSLD, double DTR);
Computes daily total irradiation
- IDAY
- DAYL
- SINLD
- COSLD
- DTR
returns Hashmap with AVRAD and ATMTR
public static HashMap
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
- 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 concetration
- AVRAD Daily total irradiation (J m-2 d-1)
- ATMTR
returns 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.
returns the fraction of easily available soil water between fc and wp
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
- FixationRestrictionFactor
- DVS development stage
- RootDepth root depth
- SoilLayerDepth bottom depth of all soil layers
- FieldCapacity field capacity per soil layers
- WaterContent water content per soil layers
- NitrogenContent nitrogen content per soil layers
returns
}
Extended by: net.simplace.sim.components.models.lintul5.extended.cassava.LintulCassavaFunctions