Leaf Ci optimization

Given: gs (stomatal conductance), gbc (boundary layer conductance for CO₂)
       Vcmax, J, Kc, Ko, Γ*, Rd (all temperature-adjusted)
       ca (atmospheric CO₂), oi (atmospheric O₂)
                    │
                    ▼
    ┌───────────────────────────────────┐
    │ Calculate gleaf = total CO₂       │  ← Eq. 11.75
    │ conductance (series combination)  │
    └───────────────────────────────────┘
                    │
          ┌─────────┴─────────┐
          ▼                   ▼
   Rubisco-limited       Light-limited
   (solve quadratic      (solve quadratic
    for Ac)               for Aj)
   Eq. 11.28 + 11.78    Eq. 11.29 + 11.78
          │                   │
          └─────────┬─────────┘
                    ▼
    ┌───────────────────────────────────┐
    │ Co-limitation: blend Ac and Aj    │  ← Eq. 11.31
    │ Θ·A² - (Ac+Aj)·A + Ac·Aj = 0      │
    └───────────────────────────────────┘
                    │
                    ▼
        An = Ag - Rd                       ← Eq. 11.30
        cs = ca - An/gbc                   ← Eq. 11.75
        ci = ca - An/gleaf                 ← Eq. 11.76

source

leaf_ci_optimization


def leaf_ci_optimization(
    atmos:Atmos, # Atmospheric forcing variables:
- o2air : float
    Atmospheric O2 concentration (mmol/mol).
- co2air : float
    Atmospheric CO2 concentration (umol/mol).
    leaf:Leaf, # Leaf physiological parameters:
- c3psn : int
    Photosynthetic pathway: 1 = C3, 0 = C4 plant.
- colim : int
    Photosynthesis co-limitation: 0 = no, 1 = yes.
- colim_c3 : float
    Empirical curvature parameter for C3 co-limitation (-).
- colim_c4a : float
    Empirical curvature parameter for C4 co-limitation (-).
- colim_c4b : float
    Empirical curvature parameter for C4 co-limitation (-).
- qe_c4 : float
    C4 quantum yield (mol CO2 / mol photons).
    flux:Flux, # Flux variables with the following inputs:
- vcmax : float
    Maximum carboxylation rate (umol/m2/s).
- cp : float
    CO2 compensation point (umol/mol).
- kc : float
    Michaelis-Menten constant for CO2 (umol/mol).
- ko : float
    Michaelis-Menten constant for O2 (mmol/mol).
- je : float
    Electron transport rate (umol/m2/s).
- kp_c4 : float
    C4 initial slope of CO2 response curve (mol/m2/s).
- gs : float
    Leaf stomatal conductance (mol H2O/m2 leaf/s).
- gbc : float
    Leaf boundary layer conductance for CO2 (mol CO2/m2 leaf/s).
- apar : float
    Leaf absorbed PAR (umol photon/m2 leaf/s).
- rd : float
    Leaf respiration rate (umol CO2/m2 leaf/s).
)->Flux: # Updated flux object with the following attributes:
- ac : float
    Rubisco-limited gross photosynthesis (umol CO2/m2 leaf/s).
- aj : float
    RuBP regeneration-limited gross photosynthesis (umol CO2/m2 leaf/s).
- ap : float
    Product-limited (C3) or CO2-limited (C4) gross photosynthesis
    (umol CO2/m2 leaf/s).
- ag : float
    Leaf gross photosynthesis (umol CO2/m2 leaf/s).
- an : float
    Leaf net photosynthesis (umol CO2/m2 leaf/s).
- cs : float
    Leaf surface CO2 concentration (umol/mol).
- ci : float
    Leaf intercellular CO2 concentration (umol/mol).

Calculate leaf photosynthesis for a specified stomatal conductance, then calculate Ci from the diffusion equation.

This routine uses a quadratic equation to solve for net photosynthesis (An). A general equation for C3 photosynthesis is:

     a*(Ci - Cp)
An = ----------- - Rd
      e*Ci + d

where:

An = Net leaf photosynthesis (umol CO2/m2/s)
Rd = Leaf respiration (umol CO2/m2/s)
Ci = Intercellular CO2 concentration (umol/mol)
Cp = CO2 compensation point (umol/mol)
  • Rubisco-limited photosynthesis (Ac):

    a = Vcmax, e = 1, d = Kc * (1 + Oi / Ko)

  • RuBP regeneration-limited photosynthesis (Aj):

    a = J, e = 4, d = 8 * Cp

where:

Vcmax = Maximum carboxylation rate (umol/m2/s)
Kc    = Michaelis-Menten constant for CO2 (umol/mol)
Ko    = Michaelis-Menten constant for O2 (mmol/mol)
Oi    = Intercellular O2 concentration (mmol/mol)
J     = Electron transport rate (umol/m2/s)

Ci is calculated from the diffusion equation:

                  1.4   1.6
An = (Ca - Ci) / (--- + ---)
                  gb    gs

           1.4   1.6
Ci = Ca - (--- + ---)*An
            gb    gs

where:

Ca  = Atmospheric CO2 concentration (umol/mol)
gb  = Leaf boundary layer conductance (mol H2O/m2/s)
gs  = Leaf stomatal conductance (mol H2O/m2/s)
1.4 = Corrects gb for the diffusivity of CO2 compared with H2O
1.6 = Corrects gs for the diffusivity of CO2 compared with H2O

The resulting quadratic equation is: aAn^2 + bAn + c = 0, which is solved for An. Correct solution is the smaller of the two roots.

A similar approach is used for C4 photosynthesis.

The total leaf conductance for CO2 (gleaf, mol CO2/m2/s) is computed from the boundary layer conductance gbc (mol CO2/m2/s) and stomatal conductance gs (mol H2O/m2/s) acting in series:

gleaf = 1 / (1/gbc + 1.6/gs)

where the factor 1.6 converts gs from H2O to CO2 basis.

Parameters:

  • Atmos: Atmospheric forcing variables

    • o2air: Atmospheric O2 concentration (mmol/mol).
    • co2air: Atmospheric CO2 concentration (umol/mol).
  • Leaf: Leaf physiological parameters

    • c3psn: Photosynthetic pathway: 1 = C3, 0 = C4 plant.
    • colim: Photosynthesis co-limitation: 0 = no, 1 = yes.
    • colim_c3: Empirical curvature parameter for C3 co-limitation (-).
    • colim_c4a: Empirical curvature parameter for C4 co-limitation (-).
    • colim_c4b: Empirical curvature parameter for C4 co-limitation (-).
    • qe_c4: C4 quantum yield (mol CO2 / mol photons).
  • Flux: Flux variables with the following inputs

    • vcmax: Maximum carboxylation rate (umol/m2/s).
    • cp: CO2 compensation point (umol/mol).
    • kc: Michaelis-Menten constant for CO2 (umol/mol).
    • ko: Michaelis-Menten constant for O2 (mmol/mol).
    • je: Electron transport rate (umol/m2/s).
    • kp_c4: C4 initial slope of CO2 response curve (mol/m2/s).
    • gs: Leaf stomatal conductance (mol H2O/m2 leaf/s).
    • gbc: Leaf boundary layer conductance for CO2 (mol CO2/m2 leaf/s).
    • apar: Leaf absorbed PAR (umol photon/m2 leaf/s).
    • rd: Leaf respiration rate (umol CO2/m2 leaf/s).

Returns:

  • Flux: Updated flux object with the following attributes

    • ac: Rubisco-limited gross photosynthesis (umol CO2/m2 leaf/s).
    • aj: RuBP regeneration-limited gross photosynthesis (umol CO2/m2 leaf/s).
    • ap: Product-limited (C3) or CO2-limited (C4) gross photosynthesis (umol CO2/m2 leaf/s).
    • ag: Leaf gross photosynthesis (umol CO2/m2 leaf/s).
    • an: Leaf net photosynthesis (umol CO2/m2 leaf/s).
    • cs: Leaf surface CO2 concentration (umol/mol).
    • ci: Leaf intercellular CO2 concentration (umol/mol).