Canopy
Canopy Model Structs
ClimaLSM.Canopy.CanopyModel
— Type CanopyModel{FT, RM, PM, SM, PHM, A, R, S, PS, D} <: AbstractExpModel{FT}
The model struct for the canopy, which contains
- the canopy model domain (a point for site-level simulations, or
an extended surface (plane/spherical surface) for regional or global simulations.
- subcomponent model type for radiative transfer. This is of type
AbstractRadiationModel
.
- subcomponent model type for photosynthesis. This is of type
AbstractPhotosynthesisModel
, and currently only the FarquharModel
is supported.
- subcomponent model type for stomatal conductance. This is of type
AbstractStomatalConductanceModel
and currently only the MedlynModel
is supported
- subcomponent model type for plant hydraulics. This is of type
AbstractPlantHydraulicsModel
and currently only a version which prognostically solves Richards equation in the plant is available.
- canopy model parameters, which include parameters that are shared
between canopy model components or those needed to compute boundary fluxes.
- The atmospheric conditions, which are either prescribed
(of type PrescribedAtmosphere
) or computed via a coupled simulation (of type CoupledAtmosphere
).
- The radiative flux conditions, which are either prescribed
(of type PrescribedRadiativeFluxes
) or computed via a coupled simulation (of type CoupledRadiativeFluxes
).
- The soil conditions, which are either prescribed (of type PrecribedSoil, for
running the canopy model in standalone mode), or prognostic (of type PrognosticSoil, for running integrated soil+canopy models)
Note that the canopy height is specified as part of the PlantHydraulicsModel, along with the area indices of the leaves, roots, and stems. Eventually, when plant biomass becomes a prognostic variable (by integrating with a carbon model), some parameters specified here will be treated differently.
radiative_transfer
: Radiative transfer model, a canopy component modelphotosynthesis
: Photosynthesis model, a canopy component modelconductance
: Stomatal conductance model, a canopy component modelhydraulics
: Plant hydraulics model, a canopy component modelatmos
: Atmospheric forcing: prescribed or coupledradiation
: Radiative forcing: prescribed or coupledsoil_driver
: Soil pressure: prescribed or prognosticparameters
: Shared canopy parameters between component modelsdomain
: Canopy model domain
ClimaLSM.Canopy.SharedCanopyParameters
— TypeSharedCanopyParameters{FT <: AbstractFloat, PSE}
A place to store shared parameters that are required by multiple canopy components.
z_0m
: Roughness length for momentum (m)z_0b
: Roughness length for scalars (m)earth_param_set
: Earth param set
Canopy Model Fluxes
ClimaLSM.Canopy.PlantHydraulics.DiagnosticTranspiration
— TypeDiagnosticTranspiration{FT} <: AbstractTranspiration{FT}
A concrete type used for dispatch in the case where transpiration is computed diagnostically, as a function of prognostic variables and parameters, and stored in p
during the update_aux!
step.
ClimaLSM.Canopy.canopy_surface_fluxes
— Functioncanopy_surface_fluxes(atmos::PrescribedAtmosphere{FT},
model::CanopyModel,
Y,
p,
t::FT) where {FT}
Computes canopy transpiration using Monin-Obukhov Surface Theory, the prescribed atmospheric conditions, and the canopy conductance.
Please note that in the future the SurfaceFluxes.jl code will compute fluxes taking into account the canopy conductance, so that what is returned by surface_fluxes
is correct. At present, it does not, so we are adjusting for it after the fact here in both ET and LHF.
Canopy Model Soil Drivers
ClimaLSM.Canopy.AbstractSoilDriver
— TypeAn abstract type of soil drivers of the canopy model.
ClimaLSM.Canopy.PrescribedSoil
— Type PrescribedSoil{FT} <: AbstractSoilDriver{FT}
A container for holding prescribed soil parameters needed by the canopy model when running the canopy in standalone mode, including the soil pressure and albedo.
root_depths
: The depth of the root tips, in metersψ_soil
: Prescribed soil potential (m) as a function of timesoil_α_PAR
: Soil albedo for PARsoil_α_NIR
: Soil albedo for NIR
ClimaLSM.Canopy.PrognosticSoil
— Type PrognosticSoil{FT} <: AbstractSoilDriver{FT}
Concrete type of AbstractSoilDriver used for dispatch in cases where both a canopy model and soil model are run. Contains the soil albedo to be shared between the canopy and soil models.
When running the SoilCanopyModel, the soil model specifies the albedo. In this case, the constructor for the model reads the albedo from the soil model and the user only specifies it once, for the soil model. When running the SoilPlantHydrologyModel (which is intended for internal usage/testing primarily) the user must specify the albedo because the soil model in that case does not have an albedo.
soil_α_PAR
: Soil albedo for PARsoil_α_NIR
: Soil albedo for NIR