Parameter classes
Params
def Params(
vis:int=0, nir:int=1
)->None:
Object holding Waveband indices
- vis: Index for visible radiation
- nir: Index for near-infrared radiation
PhysCon
def PhysCon(
grav:float=9.80665, tfrz:float=273.15, sigma:float=5.67e-08, mmdry:float=0.02897, mmh2o:float=0.01802,
cpd:float=1005.0, cpw:float=1846.0, rgas:float=8.31446, visc0:float=1.33e-05, Dh0:float=1.89e-05,
Dv0:float=2.18e-05, Dc0:float=1.38e-05, denh2o:float=1000.0
)->None:
Object holding Physical constants
- grav: Gravitational acceleration (m/s2)
- tfrz: Freezing point of water (K)
- sigma: Stefan-Boltzmann constant (W/m2/K4)
- mmdry: Molecular mass of dry air (kg/mol)
- mmh2o: Molecular mass of water (kg/mol)
- cpd: Specific heat of dry air at constant pressure (J/kg/K)
- cpw: Specific heat of water vapor at constant pressure (J/kg/K)
- rgas: Universal gas constant (J/K/mol)
- visc0: Kinematic viscosity at 0C and 1013.25 hPa (m2/s)
- Dh0: Molecular diffusivity (heat) at 0C and 1013.25 hPa (m2/s)
- Dv0: Molecular diffusivity (H2O) at 0C and 1013.25 hPa (m2/s)
- Dc0: Molecular diffusivity (CO2) at 0C and 1013.25 hPa (m2/s)
- denh2o: Density of liquid water (kg/m3)
Atmos
def Atmos(
co2air:float=0.0, o2air:float=0.0, tair:float=0.0, relhum:float=0.0, eair:float=0.0, qair:float=0.0,
wind:float=0.0, patm:float=0.0, rhomol:float=0.0, rhoair:float=0.0, mmair:float=0.0, cpair:float=0.0,
irsky:float=0.0, swsky:list=<factory>
)->None:
Object holding Atmospheric forcing variables
- co2air: Atmospheric CO2 (umol/mol)
- o2air: Atmospheric O2 (mmol/mol)
- tair: Air temperature (K)
- relhum: Relative humidity (%)
- eair: Vapor pressure of air (Pa)
- qair: Specific humidity (kg/kg)
- wind: Wind speed (m/s)
- patm: Atmospheric pressure (Pa)
- rhomol: Molar density (mol/m3)
- rhoair: Air density (kg/m3)
- mmair: Molecular mass of air (kg/mol)
- cpair: Specific heat of air at constant pressure (J/mol/K)
- irsky: Atmospheric longwave radiation (W/m2)
- swsky: Solar radiation by waveband (W/m2)
Ground
def Ground(
albsoi:list=<factory>, irgrd:float=0.0
)->None:
Object holding Ground surface variables
- albsoi: Soil albedo [vis, nir]
- irgrd: Ground longwave radiation (W/m2)
Soil
def Soil(
texture:int=5, nlevsoi:int=0, dz:list=<factory>, rootfr:list=<factory>, watsat:list=<factory>,
psisat:list=<factory>, hksat:list=<factory>, bsw:list=<factory>, h2osoi_vol:list=<factory>, psi:list=<factory>
)->None:
Object holding Soil parameters and state variables
- texture: Soil texture class
- nlevsoi: Number of soil layers
- dz: Soil layer thickness (m)
- rootfr: Fraction of roots in each soil layer
- watsat: Volumetric water content at saturation (porosity)
- psisat: Matric potential at saturation (mm)
- hksat: Hydraulic conductivity at saturation (mm H2O/s)
- bsw: Clapp and Hornberger “b” parameter
- h2osoi_vol: Volumetric water content (m3/m3)
- psi: Matric potential (mm)
RootVar
def RootVar(
radius:float=0.0, density:float=0.0, resist:float=0.0, biomass:float=0.0
)->None:
Object holding Fine root parameters
- radius: Fine root radius (m)
- density: Fine root density (g biomass / m3 root)
- resist: Hydraulic resistivity of root tissue (MPa.s.g/mmol H2O)
- biomass: Fine root biomass (g biomass / m2)
Leaf
def Leaf(
c3psn:int=1, colim:int=1, vcmax25:float=0.0, jmax25:float=0.0, rd25:float=0.0, kc25:float=0.0, ko25:float=0.0,
cp25:float=0.0, kcha:float=0.0, koha:float=0.0, cpha:float=0.0, vcmaxha:float=0.0, jmaxha:float=0.0,
rdha:float=0.0, vcmaxhd:float=0.0, jmaxhd:float=0.0, rdhd:float=0.0, vcmaxse:float=0.0, jmaxse:float=0.0,
rdse:float=0.0, vcmaxc:float=0.0, jmaxc:float=0.0, rdc:float=0.0, phi_psii:float=0.0, theta_j:float=0.0,
colim_c3:float=0.0, colim_c4a:float=0.0, colim_c4b:float=0.0, qe_c4:float=0.0, kp25_c4:float=0.0,
dleaf:float=0.0, emiss:float=0.0, rho:list=<factory>, tau:list=<factory>, iota:float=0.0, capac:float=0.0,
minl_wp:float=0.0, gplant:float=0.0, stomatal_model:Literal='optimization', g0:float=0.01, g1_medlyn:float=4.0,
a_psi:float=4.0
)->None:
Object holding Leaf physiological and structural parameters
- c3psn: Photosynthetic pathway: 1 = C3, 0 = C4
- colim: Photosynthesis co-limitation: 0 = no, 1 = yes
- vcmax25: Maximum carboxylation rate at 25C (umol/m2/s)
- jmax25: Maximum electron transport rate at 25C (umol/m2/s)
- rd25: Leaf respiration rate at 25C (umol CO2/m2/s)
- kc25: Michaelis-Menten constant for CO2 at 25C (umol/mol)
- ko25: Michaelis-Menten constant for O2 at 25C (mmol/mol)
- cp25: CO2 compensation point at 25C (umol/mol)
- kcha: Activation energy for Kc (J/mol)
- koha: Activation energy for Ko (J/mol)
- cpha: Activation energy for Cp (J/mol)
- vcmaxha: Activation energy for Vcmax (J/mol)
- jmaxha: Activation energy for Jmax (J/mol)
- rdha: Activation energy for Rd (J/mol)
- vcmaxhd: Deactivation energy for Vcmax (J/mol)
- jmaxhd: Deactivation energy for Jmax (J/mol)
- rdhd: Deactivation energy for Rd (J/mol)
- vcmaxse: Entropy term for Vcmax (J/mol/K)
- jmaxse: Entropy term for Jmax (J/mol/K)
- rdse: Entropy term for Rd (J/mol/K)
- vcmaxc: Vcmax scaling factor for high temperature inhibition
- jmaxc: Jmax scaling factor for high temperature inhibition
- rdc: Rd scaling factor for high temperature inhibition
- phi_psii: Quantum yield of PS II
- theta_j: Empirical curvature parameter for electron transport rate
- 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)
- kp25_c4: C4: Initial slope of CO2 response curve at 25C (mol/m2/s)
- dleaf: Leaf dimension (m)
- emiss: Leaf emissivity
- rho: Leaf reflectance [vis, nir]
- tau: Leaf transmittance [vis, nir]
- iota: Stomatal efficiency (umol CO2/ mol H2O)
- capac: Plant capacitance (mmol H2O/m2 leaf area/MPa)
- minl_wp: Minimum leaf water potential (MPa)
- gplant: Stem (xylem-to-leaf) hydraulic conductance (mmol H2O/m2 leaf area/s/MPa)
Flux
def Flux(
height:float=0.0, lai:float=0.0, rplant:float=0.0, rsoil:float=0.0, lsc:float=0.0, psi_soil:float=0.0,
psi_leaf:float=0.0, et_loss:list=<factory>, swinc:list=<factory>, swflx:list=<factory>, apar:float=0.0,
qa:float=0.0, tleaf:float=0.0, rnet:float=0.0, lwrad:float=0.0, shflx:float=0.0, lhflx:float=0.0,
etflx:float=0.0, gbh:float=0.0, gbv:float=0.0, gbc:float=0.0, gs:float=0.0, vcmax:float=0.0, jmax:float=0.0,
cp:float=0.0, kc:float=0.0, ko:float=0.0, je:float=0.0, kp_c4:float=0.0, rd:float=0.0, ac:float=0.0,
aj:float=0.0, ap:float=0.0, ag:float=0.0, an:float=0.0, cs:float=0.0, ci:float=0.0, hs:float=0.0, vpd:float=0.0,
dt:float=0.0
)->None:
Object holding Flux variables (state and output)
Site / canopy
- height: Leaf height (m)
- lai: Canopy leaf area index (m2/m2)
Hydraulics
- rplant: Aboveground plant stem resistance (MPa.s.m2/mmol H2O)
- rsoil: Soil hydraulic resistance (MPa.s.m2/mmol H2O)
- lsc: Leaf-specific conductance (mmol H2O/m2 leaf/s/MPa)
- psi_soil: Weighted soil water potential (MPa)
- psi_leaf: Leaf water potential (MPa)
- et_loss: Fraction of transpiration from each soil layer
Radiation
- swinc: Incident solar radiation on leaf [vis, nir]
- swflx: Absorbed solar radiation [vis, nir]
- apar: Absorbed PAR (umol photon/m2 leaf/s)
- qa: Leaf radiative forcing (W/m2 leaf)
Leaf temperature and energy balance
- tleaf: Leaf temperature (K)
- rnet: Leaf net radiation (W/m2 leaf)
- lwrad: Longwave radiation emitted from leaf (W/m2 leaf)
- shflx: Leaf sensible heat flux (W/m2 leaf)
- lhflx: Leaf latent heat flux (W/m2 leaf)
- etflx: Leaf transpiration flux (mol H2O/m2 leaf/s)
Boundary layer conductances
- gbh: Boundary layer conductance, heat (mol/m2 leaf/s)
- gbv: Boundary layer conductance, H2O (mol H2O/m2 leaf/s)
- gbc: Boundary layer conductance, CO2 (mol CO2/m2 leaf/s)
Stomatal conductance
- gs: Leaf stomatal conductance (mol H2O/m2 leaf/s)
Photosynthesis
- vcmax: Maximum carboxylation rate (umol/m2/s)
- jmax: Maximum electron transport 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)
- ac: Rubisco-limited gross photosynthesis (umol CO2/m2 leaf/s)
- rd: Leaf respiration rate (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
- ag: Leaf gross photosynthesis (umol CO2/m2 leaf/s)
- an: Leaf net photosynthesis (umol CO2/m2 leaf/s)
- cs: Leaf surface CO2 (umol/mol)
- ci: Leaf intercellular CO2 (umol/mol)
- hs: Leaf fractional humidity at surface (dimensionless)
- vpd: Leaf vapor pressure deficit at surface (Pa)
Time step
- dt: Model time step (s)