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
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
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
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
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
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)
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)
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
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
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
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
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 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
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
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
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
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
returns
public static HashMap DailyTotalIrradiation(int IDAY, double DAYL, double
SINLD, double COSLD, double DTR);

Computes daily total irradiation
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
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


}



Extended by: net.simplace.sim.components.models.lintul5.extended.cassava.LintulCassavaFunctions