EPIC - crop.leaves

class mef_agri.models.crop.leaves.model_epic.Leaves(**kwargs)

Model which computes the leaf area index according to [R2] (no biomass, …).

gc()

RQ - 'growth_constraint' from model with id 'crop.stress'

\(c_{\textrm{gc},k}\ [\ ]\)

Returns:

crop biomass growth constraint

Return type:

Requirement

hufl()

RQ - 'heat_unit_factor_leaves' from model with id 'crop.development'

\(c_{\textrm{L-huf},k}\ [\ ]\)

Returns:

heat unit factor for leaves at current day

Return type:

Requirement

hui()

RQ - 'heat_unit_index' from model with id 'crop.development'

\(c_{\textrm{D-hui},k}\ [\ ]\)

Returns:

current heat unit index

Return type:

Requirement

hui_leaf_decline()

MQ - Hyper-Parameter

\(c_{\textrm{L-hld},0}\ [\ ]\) - [R2] (equ. 10, table 2)

Returns:

heat unit index at which leaf decline starts

Return type:

numpy.ndarray

initialize(epoch)

Initialize class-intern variables and lai_rate_pot() with a zero vector.

Parameters:

epoch (datetime.date) – intialization epoch

lai()

MQ - State

\(c_{\textrm{L-lai},k}\ [\ ]\) - [R2] (equ. 7)

Returns:

current leaf area index

Return type:

numpy.ndarray

lai_max()

MQ - Hyper-Parameter

\(c_{\textrm{L-lmx},0}\ [\ ]\) - [R2] (equ. 8, table 2)

Returns:

max. possible value of lai

Return type:

numpy.ndarray

lai_rate_pot()

MQ - Random Output

\(c_{\textrm{L-lrp},k}\ [\ ]\) - [R2] (equ. 8)

Returns:

potential daily increase of lai

Return type:

numpy.ndarray

lai_regr_coeff()

MQ - Hyper-Parameter

\(c_{\textrm{L-lc},0}\ [\ ]\) - [R2] (equ. 10, table 2)

Returns:

regression coefficient of lai computation at leaf decline stage

Return type:

numpy.ndarray

update(epoch)

The following computations are performed

  • daily change of hufl()

  • lai_rate_pot()

  • compute boolean/condition array cld = self.hui.value > self.hui_leaf_decline

  • save value of lai() at the day when leaf decline starts (i.e. when a realization of hui() exceeds a realization of hui_leaf_decline(), or where cld contains True)

  • two lai values are computed

    • one before leaf decline lai1 \(\rightarrow\) [R2] (equ. 7)

    • one after leaf decline has started lai2 \(\rightarrow\) [R2] (equ. 10)

    • depending on cld, lai1 or lai2 is set for lai()

Parameters:

epoch (datetime.date) – current evaluation epoch