Stomatal conductance
The stomatal conductance (Gₛ
, $mol_{CO_2} \cdot m^{-2} \cdot s^{-1}$) defines the conductance for CO₂ between the atmosphere (the air around the leaf) and the air inside the stomata. The stomatal conductance to CO₂ and H₂O are related by a constant (see gsc_to_gsw
).
Models overview
Several models are available to simulate it:
Medlyn
: an implementation of the Medlyn et al. (2011) modelConstantGs
: a model to force a constant value forGₛ
You can choose which model to use by passing a component with a stomatal conductance model set to one of the struct
above.
For example, you can "simulate" a constant assimilation for a leaf using the following:
using PlantBiophysics, PlantSimEngine
meteo = Atmosphere(T = 20.0, Wind = 1.0, P = 101.3, Rh = 0.65)
leaf = ModelList(ConstantGs(Gₛ = 0.1))
run!(leaf,meteo)
leaf[:Gₛ]
1-element Vector{Float64}:
0.1
Medlyn
Parameters
The Medlyn model has the following set of parameters:
g0
: intercept ($mol_{CO_2} \cdot m^{-2} \cdot s^{-1}$).g1
: slope.gs_min = 0.001
: residual conductance ($mol_{CO_2} \cdot m^{-2} \cdot s^{-1}$).
We consider the residual conductance being different from g0
because in practice g0
can be negative when fitting real-world data.
Input variables
The Medlyn
model needs three input variables:
inputs(Medlyn(0.1, 8.0))
(:Dₗ, :Cₛ, :A)
Dₗ
(kPa) is the difference between the vapour pressure at the leaf surface and the saturated air vapour pressure, Cₛ
(ppm) is the air CO₂ concentration at the leaf surface, and A
is the CO₂ assimilation rate ($μmol \cdot m^{-2} \cdot s^{-1}$)
Example
Here is an example usage:
meteo = Atmosphere(T = 20.0, Wind = 1.0, P = 101.3, Rh = 0.65)
leaf = ModelList(
Medlyn(0.03, 12.0),
status = (A = 20.0, Cₛ = 400.0, Dₗ = meteo.VPD)
)
run!(leaf,meteo)
leaf
PlantSimEngine.DependencyGraph{Dict{Symbol, PlantSimEngine.SoftDependencyNode}, Any}(Dict{Symbol, PlantSimEngine.SoftDependencyNode}(:stomatal_conductance => Medlyn{Float64}
), Dict{Symbol, Any}())TimeStepTable{Status{(:Dₗ, :Cₛ, :A, :Gₛ...}(1 x 4):
╭─────┬──────────┬─────────┬─────────┬──────────╮
│ Row │ Dₗ │ Cₛ │ A │ Gₛ │
│ │ Float64 │ Float64 │ Float64 │ Float64 │
├─────┼──────────┼─────────┼─────────┼──────────┤
│ 1 │ 0.821448 │ 400.0 │ 20.0 │ 0.742005 │
╰─────┴──────────┴─────────┴─────────┴──────────╯
You can use inputs
to get the variables needed for a given model, e.g.: inputs(Medlyn(0.03, 12.0))
ConstantGs
Parameters
The ConstantGs
model has the following set of parameters:
g0 = 0.0
: intercept ($mol_{CO_2} \cdot m^{-2} \cdot s^{-1}$).Gₛ
: forced stomatal conductance.
This model computes the stomatal conductance using a constant value for the stomatal conductance.
g0
is only provided for compatibility with photosynthesis models such as Fvcb
that needs a partial computation of the stomatal conductance at one point:
(Gₛ - g0) / A
Input variables
ConstantGs
doesn't need any input variables.
Example
Here is an example usage:
meteo = Atmosphere(T = 20.0, Wind = 1.0, P = 101.3, Rh = 0.65)
leaf = ModelList(ConstantGs(Gₛ = 0.1))
run!(leaf,meteo)
leaf[:Gₛ]
1-element Vector{Float64}:
0.1
References
Medlyn, B. E., E. Dreyer, D. Ellsworth, M. Forstreuter, P. C. Harley, M. U. F. Kirschbaum, X. Le Roux, et al. 2002. « Temperature response of parameters of a biochemically based model of photosynthesis. II. A review of experimental data ». Plant, Cell & Environment 25 (9): 1167‑79. https://doi.org/10.1046/j.1365-3040.2002.00891.x.