Phenology

Warning

This page is a work in progress. If you have any questions or notice any errors, please raise an issue.

Overview

Phenology describes the seasonal emergence and senescence of leaves. Models typically distinguish between three phenology types: evergreen, in which plants maintain constant leaf foliage throughout the year, summergreen (seasonal deciduous), in which leaves are present during the warm season and drop in the cold season, and raingreen (stress deciduous), in which leaves are present during the rainy season and drop in the dry season.

subtypes(Terrarium.AbstractPhenology)
2-element Vector{Any}:
 PALADYNPhenology
 PrescribedPhenology

PALADYN phenology model

Terrarium.PALADYNPhenologyType
struct PALADYNPhenology{NF} <: Terrarium.AbstractPhenology{NF}

Prognostic, growing-degree-day (GDD) based vegetation phenology following the cold-deciduous scheme of [16] and [24].

The instantaneous leaf area index is LAI = ϕ·LAI_b, where LAI_b is the balanced (annual-maximum) leaf area index and ϕ is the phenology factor. For a cold-deciduous PFT, ϕ ramps up linearly with accumulated growing degree days above a base temperature T_gdd_base at a rate set by gdd_crit [16, Eq. (83)], holds at 1 once fully leafed out, and declines linearly during senescence as air temperature falls from T_gdd_base to T_gdd_base − T_senescence_range.

Unlike the discrete daily accumulation of the original scheme in PALADYN, the growing degree days are integrated as a prognostic state variable, so no history of past inputs needs to be stored. To recover a periodic seasonal cycle without a discrete annual reset (which would violate the continuous-time design), a cold-season relaxation term drains the accumulator with timescale gdd_relaxation_time whenever air temperature is below T_gdd_base.

The deciduous/evergreen distinction, set in PALADYN by the coldest-month temperature, is represented here by the prescribed f_deciduous fraction: ϕ = f_deciduous·ϕ_deciduous + (1 − f_deciduous), so an evergreen PFT (f_deciduous = 0) has ϕ = 1 (and LAI = LAI_b) independent of temperature.

Authors: Maha Badri and Matteo Willeit

Properties:

  • T_gdd_base::Any: Base temperature for growing-degree-day accumulation and senescence onset

  • gdd_crit::Any: Critical growing-degree-day sum for full leaf-out

  • T_senescence_range::Any: Air-temperature range below T_gdd_base over which leaves fully senesce

  • gdd_relaxation_time::Any: Cold-season relaxation timescale for the continuous growing-degree-day reset

  • f_deciduous::Any: Deciduous fraction (0 = evergreen, 1 = fully deciduous); prescribed per PFT via the coldest-month-temperature criterion

References

  • [16] Willeit & Ganopolski, Geoscientific Model Development (2016)
  • [24] Sitch et al., Global Change Biology (2003)
source
variables(PALADYNPhenology(Float32))
Variables
├─ Prognostic: 
├── growing_degree_days [d K] on XY{Center, Center}
├─ Auxiliary: 
├── phenology_factor [-] on XY{Center, Center}
├── leaf_area_index [-] on XY{Center, Center}
├─ Inputs: 
├─ Namespaces:

This implementation follows the phenology scheme of PALADYN [16], in which raingreen phenology is not represented. The phenology factor $\phi$ represents the current fraction of the maximum leaf coverage (0 to 1), and $f_{\text{deciduous}}$ is a climate-dependent smooth transition parameter (0 to 1) between evergreen and deciduous behavior.

Leaf area index computation

The leaf area index (LAI) is computed from the balanced LAI $\text{LAI}_b$ as follows

\[\begin{equation} \text{LAI} = (f_{\text{deciduous}} \cdot \phi + (1 - f_{\text{deciduous}})) \cdot \text{LAI}_b \end{equation}\]

Warning

Phenology is not fully implemented yet: currently $\phi = 1$ and $f_{\text{deciduous}} = 0$ which assumes an evergreen phenology.

Prescribed phenology

Terrarium.PrescribedPhenologyType
struct PrescribedPhenology{NF} <: Terrarium.AbstractPhenology{NF}

Prescribed vegetation phenology where leaf_area_index is treated as a (possibly time-varying) input variable.

Properties:

source
variables(PrescribedPhenology(Float32))
Variables
├─ Prognostic: 
├─ Auxiliary: 
├─ Inputs: 
├── leaf_area_index [-] on XY{Center, Center}
├─ Namespaces:

The PrescribedPhenology scheme treats the leaf area index as an externally imposed (and possibly time-varying) input rather than deriving it from a prognostic carbon pool. It is intended for simulations driven by observed or reanalysis LAI (e.g. an ERA5-Land LAI climatology).

When plant traits are supplied by the enclosing vegetation component, the scheme additionally derives the phenology factor $\phi$ by inverting the deciduous relation $\text{LAI} = \phi \cdot \text{LAI}_b$, using the maximum (reference, annual-maximum) leaf area index $\text{LAI}_{\max}$ as the balanced LAI:

\[\begin{equation} \phi = \mathrm{clamp}\!\left(\frac{\text{LAI}}{\text{LAI}_{\max}},\ 0,\ 1\right) \end{equation}\]

so that PrescribedPhenology becomes a drop-in producer of phenology_factor for downstream processes. $\text{LAI}_{\max}$ is a plant functional-type parameter carried by the vegetation traits.

Note

The seasonal amplitude of $\phi$ is set entirely by how well $\text{LAI}_{\max}$ matches the true annual maximum of the prescribed LAI series. Because $\phi$ here is a structural ratio rather than a phenological leaf-out state, it is most appropriate for deciduous vegetation; for an evergreen plant functional type $\phi$ should remain near 1 regardless of LAI.

Process interface

Terrarium.compute_auxiliary!Method
compute_auxiliary!(
    state,
    grid,
    phenol::PALADYNPhenology,
    vegcarbon::PALADYNCarbonDynamics,
    atmos::Terrarium.AbstractAtmosphere
)
source

Methods

Terrarium.compute_phenology_factorFunction
compute_phenology_factor(phenol, gdd, T_air)

Compute the phenology factor ϕ [-] from accumulated growing degree days gdd and air temperature T_air.

The cold-deciduous factor combines the growth-phase ramp gdd / gdd_crit [16, Eq. (83)] with a senescence ramp that declines linearly from 1 at T_gdd_base to 0 at T_gdd_base − T_senescence_range. Taking the minimum reproduces all three PALADYN regimes (linear green-up, held at 1 when mature and warm, temperature-driven senescence). The result is then blended with the evergreen value of 1 via the prescribed deciduous fraction.

source
Terrarium.compute_leaf_area_indexFunction
compute_leaf_area_index(phenol, ϕ, LAI_b)

Compute the instantaneous leaf area index LAI = ϕ·LAI_b from the phenology factor ϕ and the balanced leaf area index LAI_b.

source

Kernel functions

Terrarium.compute_phenologyFunction
compute_phenology(i, j, grid, fields, phenol::AbstractPhenology, atmos::AbstractAtmosphere)

Cell-level phenology computation. Implementations return phenology factors and derived LAI at the given index i, j, using atmospheric inputs (e.g. air temperature) where required by the scheme.

source

References

[16]
M. Willeit and A. Ganopolski. PALADYN v1.0, a Comprehensive Land Surface–Vegetation–Carbon Cycle Model of Intermediate Complexity. Geoscientific Model Development 9, 3817–3857 (2016).
[24]
S. Sitch, B. Smith, I. C. Prentice, A. Arneth, A. Bondeau, W. Cramer, J. O. Kaplan, S. Levis, W. Lucht, M. T. Sykes, K. Thonicke and S. Venevsky. Evaluation of Ecosystem Dynamics, Plant Geography and Terrestrial Carbon Cycling in the LPJ Dynamic Global Vegetation Model. Global Change Biology 9, 161–185 (2003).