StomtaModels API
Empirical models
StomataModels.empirical_equation — FunctionThis function returns the stomatal conductance computed from empirical stomatal models. This is not the solution! Supported methods are for
- Leaf
- Leaves1D (ind=1 for sunlit, ind=2 for shaded leaves)
- Leaves2D (ind=NA for shaded, ind>1 for sunlit leaves)
StomataModels.empirical_equation — Methodempirical_equation(sm::BallBerrySM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::GentineSM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::LeuningSM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::MedlynSM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}Return the stomatal conductance computed from empirical model formulation, given
smBallBerrySM,GentineSM,LeuningSM, orMedlynSMtype modelleafLeaftype structairAirLayertype environmental conditionsβTuning factor for G1 (must be 1 if tuning factor is not based on G1)
StomataModels.empirical_equation — Methodempirical_equation(sm::BallBerrySM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::GentineSM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::LeuningSM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::MedlynSM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}Return the stomatal conductance computed from empirical model formulation, given
smBallBerrySM,GentineSM,LeuningSM, orMedlynSMtype modelleavesLeaves1Dtype structairAirLayertype environmental conditionsindLeaf index (1 for sunlit and 2 for shaded)βTuning factor for G1 (must be 1 if tuning factor is not based on G1)
StomataModels.empirical_equation — Methodempirical_equation(sm::BallBerrySM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::GentineSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::LeuningSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::MedlynSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}Return the stomatal conductance computed from empirical model formulation for the shaded leaves of Leaves2D, given
smBallBerrySM,GentineSM,LeuningSM, orMedlynSMtype modelleavesLeaves2Dtype structairAirLayertype environmental conditionsβTuning factor for G1 (must be 1 if tuning factor is not based on G1)
StomataModels.empirical_equation — Methodempirical_equation(sm::BallBerrySM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::GentineSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::LeuningSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}
empirical_equation(sm::MedlynSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1)) where {FT<:AbstractFloat}Return the stomatal conductance computed from empirical model formulation for the sunlit leaves of Leaves2D, given
smBallBerrySM,GentineSM,LeuningSM, orMedlynSMtype modelleavesLeaves2Dtype structairAirLayertype environmental conditionsindSunlit leaf index within the leaf angular distributionβTuning factor for G1 (must be 1 if tuning factor is not based on G1)
Optimality models
StomataModels.∂A∂E — Function∂A∂E(leaf::Leaf{FT}, air::AirLayer{FT}) where {FT<:AbstractFloat}
∂A∂E(leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int) where {FT<:AbstractFloat}
∂A∂E(leaves::Leaves2D{FT}, air::AirLayer{FT}) where {FT<:AbstractFloat}
∂A∂E(leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int) where {FT<:AbstractFloat}Return the partial derivative of A per E, given
leafLeaftype leafairAirLayertype environmental conditionsleavesLeaves1D, andLeaves2Dtype leafindIndex of the leaves (1 for sunlit and 2 for shaded for Leaves1D, all sunlit for Leaves2D)
StomataModels.∂R∂E — Function∂R∂E(lf::Union{Leaf{FT}, Leaves1D{FT}, Leaves2D{FT}}, air::AirLayer{FT}) where {FT<:AbstractFloat}Returns the marginal increase in leaf respiration rate per transpiration rate, given
lfLeaf,Leaves1D, orLeaves2Dtype leafairAirLayertype environmental conditions
StomataModels.∂T∂E — Function∂T∂E(lf::Union{Leaf{FT}, Leaves1D{FT}, Leaves2D{FT}}, air::AirLayer{FT}, f_view::FT) where {FT<:AbstractFloat}Returns the marginal increase in leaf temperature per transpiration rate, given
lfLeaf,Leaves1D, orLeaves2Dtype leafairAirLayertype environmental conditionsf_viewRatio that leaf area is exposed to external sources/sinks (not other leaves, e.g., 2/LAI for canopy on average)
StomataModels.∂Θ∂E — FunctionThis function returns the marginal risk for stomatal opening. This function supports a variety of optimality models for
- Leaf
- Leaves1D (ind=1 for sunlit leaves, ind=2 for shaded leaves)
- Leaves2D (ind=NA for shaded leaves, ind>1 for sunlit leaves)
StomataModels.∂Θ∂E — Method∂Θ∂E(sm::AndereggSM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::EllerSM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::SperrySM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::WangSM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::Wang2SM{FT}, leaf::Leaf{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal risk for stomatal opening, given
smAndereggSM,EllerSM,SperrySM,WangSM, orWang2SMtype optimality modelleafLeaftype structairAirLayerfor environmental conditionsδeIncremental flow rate to compute ∂E∂P
StomataModels.∂Θ∂E — Method∂Θ∂E(sm::AndereggSM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::EllerSM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::SperrySM{FT}, leaf::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::WangSM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::Wang2SM{FT}, leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal risk for stomatal opening, given
smAndereggSM,EllerSM,SperrySM,WangSM, orWang2SMtype optimality modelleavesLeaves1Dtype structairAirLayerfor environmental conditionsindLeaf index (1 for sunlit and 2 for shaded)δeIncremental flow rate to compute ∂E∂P
StomataModels.∂Θ∂E — Method∂Θ∂E(sm::AndereggSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::EllerSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::SperrySM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::WangSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::Wang2SM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal risk for stomatal opening, given
smAndereggSM,EllerSM,SperrySM,WangSM, orWang2SMtype optimality modelleavesLeaves2Dtype structairAirLayerfor environmental conditionsδeIncremental flow rate to compute ∂E∂P
StomataModels.∂Θ∂E — Method∂Θ∂E(sm::AndereggSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::EllerSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::SperrySM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::WangSM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}
∂Θ∂E(sm::Wang2SM{FT}, leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal risk for stomatal opening, given
smAndereggSM,EllerSM,SperrySM,WangSM, orWang2SMtype optimality modelleafLeaftype structairAirLayerfor environmental conditionsδeIncremental flow rate to compute ∂E∂P
StomataModels.∂Θₙ∂E — FunctionThis function returns the ∂Θₙ∂E for nocturnal stomatal opening. Currently this function only supports WangSM which has been published for the purpose of computing nocturnal stomatal conductance. Supports to other optimality models will be added later when I am ready to test those.
Stomtal conductance limits
StomataModels.limit_stomatal_conductance! — Functionlimit_stomatal_conductance!(leaf::Leaf{FT}) where {FT<:AbstractFloat}
limit_stomatal_conductance!(leaves::Leaves1D{FT}) where {FT<:AbstractFloat}
limit_stomatal_conductance!(leaves::Leaves2D{FT}) where {FT<:AbstractFloat}Limit stomatal conductance for H₂O for
leafLeaftype structleavesLeaves1Dtype struct
Prognostic conductance
StomataModels.∂g∂t — FunctionThis function returns the stomatal conductance change slope. Supported functionalities are
- Leaf
- Leaves1D (ind=1 for sunlit, ind=2 for shaded leaves)
- Leaves2D (ind=NA for shaded, ind>1 for sunlit leaves)
StomataModels.∂g∂t — Method∂g∂t(leaf::Leaf{FT}, air::AirLayer{FT}; β::FT = FT(1), δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal increase of stomatal conductance, given
leafLeaftype structairAirLayertype environmental conditionsβTuning factor (only used for empirical models)δeIncremental flow rate to compute ∂E∂P (only used for optimality models)
StomataModels.∂g∂t — Method∂g∂t(leaves::Leaves1D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1), δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal increase of stomatal conductance, given
leavesLeaves1Dtype structairAirLayertype environmental conditionsindLeaf index (1 for sunlit and 2 for shaded)βTuning factor (only used for empirical models)δeIncremental flow rate to compute ∂E∂P (only used for optimality models)
StomataModels.∂g∂t — Method∂g∂t(leaves::Leaves2D{FT}, air::AirLayer{FT}; β::FT = FT(1), δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal increase of stomatal conductance, given
leavesLeaves2Dtype structairAirLayertype environmental conditionsβTuning factor (only used for empirical models)δeIncremental flow rate to compute ∂E∂P (only used for optimality models)
StomataModels.∂g∂t — Method∂g∂t(leaves::Leaves2D{FT}, air::AirLayer{FT}, ind::Int; β::FT = FT(1), δe::FT = FT(1e-7)) where {FT<:AbstractFloat}Return the marginal increase of stomatal conductance, given
leavesLeaves2Dtype structairAirLayertype environmental conditionsindSunlit leaf index within the leaf angular distributionβTuning factor (only used for empirical models)δeIncremental flow rate to compute ∂E∂P (only used for optimality models)
StomataModels.∂gₙ∂t — Function∂gₙ∂t(lf::Union{Leaf{FT}, Leaves1D{FT}, Leaves2D{FT}}, air::AirLayer{FT}) where {FT<:AbstractFloat}Return the marginal increase of stomatal conductance, given
lfLeaf,Leaves1D, orLeaves2Dtype structairAirLayertype environmental conditions
StomataModels.stomatal_conductance! — FunctionThis function updates stomatal conductance for H₂O and CO₂. Supported functionalities are
- Update conductance for H₂O prognostically
- Update conductance for CO₂ based on that for H₂O
StomataModels.stomatal_conductance! — Methodstomatal_conductance!(spac::MonoElementSPAC{FT}; β::FT = FT(1)) where {FT<:AbstractFloat}
stomatal_conductance!(spac::Union{MonoMLGrassSPAC{FT}, MonoMLPalmSPAC{FT}, MonoMLTreeSPAC{FT}}; β::FT = FT(1)) where {FT<:AbstractFloat}Update marginal stomatal conductance, given
spacMonoElementSPAC,MonoMLGrassSPAC,MonoMLPalmSPAC, orMonoMLTreeSPACtype structβTuning factor
StomataModels.stomatal_conductance! — Methodstomatal_conductance!(spac::MonoElementSPAC{FT}, Δt::FT) where {FT<:AbstractFloat}
stomatal_conductance!(spac::Union{MonoMLGrassSPAC{FT}, MonoMLPalmSPAC{FT}, MonoMLTreeSPAC{FT}}, Δt::FT) where {FT<:AbstractFloat}Update marginal stomatal conductance, given
spacMonoElementSPAC,MonoMLGrassSPAC,MonoMLPalmSPAC, orMonoMLTreeSPACtype structΔtTime step length[s]