Learn R Programming

ZeBook (version 0.4)

maize.model: The basic Maize model function

Description

Model description. This model is a dynamic model of crop growth for Maize cultivated in potential conditions. The crop growth is represented by three state variables, leaf area per unit ground area (leaf area index, LAI), total biomass (B) and cumulative thermal time since plant emergence (TT). It is based on key concepts included in most crop models, at least for the "potential production" part. In fact, this model does not take into account any effects of soil water, nutrients, pests, or diseases,...

Usage

maize.model(Tbase, RUE, K, alpha, LAImax, TTM, TTL,
    weather, sdate, ldate)

Arguments

Tbase
: parameter the baseline temperature for growth (degreeCelsius)
TTM
: parameter temperature sum for crop maturity (degreeC.day)
TTL
: parameter temperature sum at the end of leaf area increase (degreeC.day)
K
: parameter extinction coefficient (relation between leaf area index and intercepted radiation) (-)
RUE
: parameter radiation use efficiency (?)
alpha
: parameter the relative rate of leaf area index increase for small values of leaf area index (?)
LAImax
: parameter maximum leaf area index (-)
weather
: weather data.frame for one single year
sdate
: sowing date
ldate
: last date

Value

  • data.frame with daily TT, LAI,B

Details

The tree state variables are dynamic variables depending on days after emergence: TT(day), B(day), and LAI(day). The model has a time step dt of one day. The model is defined by a few equations, with a total of seven parameters for the described process. (1) $TT(day+1) = TT(day)+dTT(day)$ (2) $B(day+1) = B(day)+dB(day)$ (3) $LAI(day+1) = LAI(day)+dLAI(day)$ (4) $dTT(day) = \max(\frac{TMIN(day)+TMAX(day)}{2}-Tbase;0)$ (5) $dB(day) = RUE*(1-e^{-K*LAI(day)*I(day)}),\ if\ TT(day)\le TTM$ $dB(day) = 0,\ if\ TT(day)>TTM$ (6) $dLAI(day) = alpha*dTT(day)*LAI(day)*\max(LAImax-LAI(day);0),\ if \ TT(day)\le TTL$ $dLAI(day) = 0,\ if\ TT(day)>TTL$

Examples

Run this code
weather = maize.weather(working.year=2010, working.site=30,weather_all=weather_EuropeEU)
maize.model(Tbase=7, RUE=1.85, K=0.7, alpha=0.00243, LAImax=7, TTM=1200, TTL=700, weather, sdate=100, ldate=250)

Run the code above in your browser using DataLab