API for the constants module

The models.abiotic.constants module contains a set of dataclasses which contain parameters required by the broader abiotic_model model. These parameters are constants in that they should not be changed during a particular simulation.

Classes:

AbioticConsts(wind_reference_height, ...)

Dataclass to store all constants for the abiotic model.

class virtual_ecosystem.models.abiotic.constants.AbioticConsts(wind_reference_height: float = 10.0, specific_heat_equ_factors: list[float] = <factory>, latent_heat_vap_equ_factors: list[float] = <factory>, zero_plane_scaling_parameter: float = 7.5, substrate_surface_drag_coefficient: float = 0.003, roughness_element_drag_coefficient: float = 0.3, roughness_sublayer_depth_parameter: float = 0.193, max_ratio_wind_to_friction_velocity: float = 0.3, drag_coefficient: float = 0.2, relative_turbulence_intensity: float = 0.5, diabatic_correction_factor_below: float = 1, mixing_length_factor: float = 0.32, min_relative_turbulence_intensity: float = 0.36, max_relative_turbulence_intensity: float = 0.9, min_wind_speed_above_canopy: float = 0.1, min_windspeed_below_canopy: float = 0.001, min_friction_velocity: float = 0.001, min_roughness_length: float = 0.01, yasuda_stability_parameters: list[float] = <factory>, diabatic_heat_momentum_ratio: float = 0.6, turbulence_sign: bool = True, canopy_temperature_ini_factor: float = 0.01, light_extinction_coefficient: float = 0.01, gas_constant_water_vapour: float = 461.51, specific_heat_capacity_leaf: float = 2760.0, leaf_heat_transfer_coefficient: float = 50.0, stomatal_resistance: float = 200.0, soil_thermal_conductivity: float = 0.7, specific_heat_capacity_soil: float = 2700000.0, initial_air_conductivity: float = 50.0, top_leaf_vapour_conductivity: float = 0.32, bottom_leaf_vapour_conductivity: float = 0.25, top_leaf_air_conductivity: float = 0.19, bottom_leaf_air_conductivity: float = 0.13, surface_albedo: float = 0.125, soil_emissivity: float = 0.8, surface_layer_depth: float = 0.1, volume_to_weight_conversion: float = 1000.0, kinematic_viscosity_parameters: list[float] = <factory>, thermal_diffusivity_parameters: list[float] = <factory>, grashof_parameter: float = 9.807, forced_conductance_parameter: float = 0.34, positive_free_conductance_parameter: float = 0.54, negative_free_conductance_parameter: float = 0.26, leaf_emissivity: float = 0.8, saturated_pressure_slope_parameters: list[float] = <factory>, wind_profile_parameters: list[float] = <factory>, richardson_bounds: list[float] = <factory>, stable_wind_shear_slope: float = 4.7, stable_temperature_gradient_intercept: float = 0.74)

Dataclass to store all constants for the abiotic model.

Methods:

__init__([wind_reference_height, ...])

Attributes:

bottom_leaf_air_conductivity

Initial leaf air heat conductivity at the bottom of the canopy, [mol m-2 s-1].

bottom_leaf_vapour_conductivity

Initial leaf vapour conductivity at the bottom of the canopy, [mol m-2 s-1].

canopy_temperature_ini_factor

Factor used to initialise canopy temperature as a function of air temperature and absorbed shortwave radiation.

diabatic_correction_factor_below

Diabatic correction factor below canopy, dimensionless.

diabatic_heat_momentum_ratio

Factor that relates diabatic correction factors for heat and momentum.

drag_coefficient

Drag coefficient, dimensionless.

forced_conductance_parameter

Parameter in calculation of forced conductance (Campbell and Norman, 2012).

gas_constant_water_vapour

Gas constant for water vapour, [J kg -1 K-1].

grashof_parameter

Parameter in calculation of Grashof number (Campbell and Norman, 2012).

initial_air_conductivity

Initial air conductivity, [mol m-2 s-1].

kinematic_viscosity_parameters

Parameters in calculation of kinematic viscosity (Campbell and Norman, 2012).

latent_heat_vap_equ_factors

Factors in calculation of latent heat of vapourisation.

leaf_emissivity

Leaf emissivity, dimensionless.

leaf_heat_transfer_coefficient

Leaf heat transfer coefficient, [s^1/2 m^-1/2], (Linacre, 1964).

light_extinction_coefficient

Light extinction coefficient for canopy.

max_ratio_wind_to_friction_velocity

Maximum ratio of wind velocity to friction velocity, dimensionless.

max_relative_turbulence_intensity

Maximum relative turbulence intensity, dimensionless.

min_friction_velocity

Minimum friction velocity, [m s-1].

min_relative_turbulence_intensity

Minimum relative turbulence intensity, dimensionless.

min_roughness_length

Minimum roughness length, [m].

min_wind_speed_above_canopy

Minimum wind speed above the canopy, [m s-1].

min_windspeed_below_canopy

Minimum wind speed below the canopy or in absence of vegetation, [m s-1].

mixing_length_factor

Factor in calculation of mixing length, dimensionless.

negative_free_conductance_parameter

Parameter in calculation of free conductance for negative temperature difference (Campbell and Norman, 2012).

positive_free_conductance_parameter

Parameter in calculation of free conductance for positive temperature difference (Campbell and Norman, 2012).

relative_turbulence_intensity

Relative turbulence intensity, dimensionless.

richardson_bounds

Minimum and maximum value for Richardson number.

roughness_element_drag_coefficient

Roughness-element drag coefficient, dimensionless.

roughness_sublayer_depth_parameter

Parameter characterizes the roughness sublayer depth.

saturated_pressure_slope_parameters

List of parameters to calcualte the slope of saturated vapour pressure curve.

soil_emissivity

Soil emissivity, dimensionless.

soil_thermal_conductivity

Soil thermal conductivity, [W m-1 K-1], (Monteith and Unsworth, 1990).

specific_heat_capacity_leaf

Specific heat capacity of leaf, [J kg-1 K-1], (Aston, 1985).

specific_heat_capacity_soil

Specific heat capacity of soil, [J kg-1 K-1], (Monteith and Unsworth, 1990).

specific_heat_equ_factors

Factors in calculation of molar specific heat of air.

stable_temperature_gradient_intercept

Temperature gradient intercept under stable conditions after Goudriaan (1977).

stable_wind_shear_slope

Wind shear slope under stable conditions after Gourdiaan (1977).

stomatal_resistance

Default stomatal resistance, [s m2 mumol-1].

substrate_surface_drag_coefficient

Substrate-surface drag coefficient, dimensionless.

surface_albedo

Mean surface albedo of a tropical rainforest in South East Asia, dimensionless.

surface_layer_depth

Surface layer depth, [m].

thermal_diffusivity_parameters

Parameter in calculation of thermal diffusivity (Campbell and Norman, 2012).

top_leaf_air_conductivity

Initial leaf air heat conductivity at the top of the canopy, [mol m-2 s-1].

top_leaf_vapour_conductivity

Initial leaf vapour conductivity at the top of the canopy, [mol m-2 s-1].

turbulence_sign

Flag indicating if turbulence increases or decreases with height.

volume_to_weight_conversion

Factor to convert between soil volume and weight in kilograms.

wind_profile_parameters

Factors in calculation of logarithmic wind profile above canopy.

wind_reference_height

Reference height for wind speed above the canopy.

yasuda_stability_parameters

Parameters to approximate diabatic correction factors for heat and momentum.

zero_plane_scaling_parameter

Control parameter for scaling zero displacement to height, dimensionless.

__init__(wind_reference_height: float = 10.0, specific_heat_equ_factors: list[float] = <factory>, latent_heat_vap_equ_factors: list[float] = <factory>, zero_plane_scaling_parameter: float = 7.5, substrate_surface_drag_coefficient: float = 0.003, roughness_element_drag_coefficient: float = 0.3, roughness_sublayer_depth_parameter: float = 0.193, max_ratio_wind_to_friction_velocity: float = 0.3, drag_coefficient: float = 0.2, relative_turbulence_intensity: float = 0.5, diabatic_correction_factor_below: float = 1, mixing_length_factor: float = 0.32, min_relative_turbulence_intensity: float = 0.36, max_relative_turbulence_intensity: float = 0.9, min_wind_speed_above_canopy: float = 0.1, min_windspeed_below_canopy: float = 0.001, min_friction_velocity: float = 0.001, min_roughness_length: float = 0.01, yasuda_stability_parameters: list[float] = <factory>, diabatic_heat_momentum_ratio: float = 0.6, turbulence_sign: bool = True, canopy_temperature_ini_factor: float = 0.01, light_extinction_coefficient: float = 0.01, gas_constant_water_vapour: float = 461.51, specific_heat_capacity_leaf: float = 2760.0, leaf_heat_transfer_coefficient: float = 50.0, stomatal_resistance: float = 200.0, soil_thermal_conductivity: float = 0.7, specific_heat_capacity_soil: float = 2700000.0, initial_air_conductivity: float = 50.0, top_leaf_vapour_conductivity: float = 0.32, bottom_leaf_vapour_conductivity: float = 0.25, top_leaf_air_conductivity: float = 0.19, bottom_leaf_air_conductivity: float = 0.13, surface_albedo: float = 0.125, soil_emissivity: float = 0.8, surface_layer_depth: float = 0.1, volume_to_weight_conversion: float = 1000.0, kinematic_viscosity_parameters: list[float] = <factory>, thermal_diffusivity_parameters: list[float] = <factory>, grashof_parameter: float = 9.807, forced_conductance_parameter: float = 0.34, positive_free_conductance_parameter: float = 0.54, negative_free_conductance_parameter: float = 0.26, leaf_emissivity: float = 0.8, saturated_pressure_slope_parameters: list[float] = <factory>, wind_profile_parameters: list[float] = <factory>, richardson_bounds: list[float] = <factory>, stable_wind_shear_slope: float = 4.7, stable_temperature_gradient_intercept: float = 0.74) None
bottom_leaf_air_conductivity: float = 0.13

Initial leaf air heat conductivity at the bottom of the canopy, [mol m-2 s-1].

bottom_leaf_vapour_conductivity: float = 0.25

Initial leaf vapour conductivity at the bottom of the canopy, [mol m-2 s-1].

canopy_temperature_ini_factor: float = 0.01

Factor used to initialise canopy temperature as a function of air temperature and absorbed shortwave radiation.

diabatic_correction_factor_below: float = 1

Diabatic correction factor below canopy, dimensionless.

The diabatic correction factor is a scaling adjustment used to compensate for the effects of vertical heat transfer or thermal non-adiabaticity on atmospheric variables or processes, particularly when estimating or interpreting measurements across different heights or conditions. This factor is used to adjust wind profiles below the canopy. Implementation and value from Maclean and Klinges (2021).

diabatic_heat_momentum_ratio: float = 0.6

Factor that relates diabatic correction factors for heat and momentum.

Dimenionless parameter, implementation after Maclean and Klinges (2021) and values taken from Yasuda (1988).

drag_coefficient: float = 0.2

Drag coefficient, dimensionless.

The drag coefficient is a dimensionless quantity that characterizes the drag or resistance experienced by an object moving through a fluid (here the atmosphere) and is defined as the ratio of the drag force on the object to the dynamic pressure of the fluid flow and the reference area of the object. Implementation and value from Maclean and Klinges (2021).

forced_conductance_parameter: float = 0.34

Parameter in calculation of forced conductance (Campbell and Norman, 2012).

gas_constant_water_vapour: float = 461.51

Gas constant for water vapour, [J kg -1 K-1].

grashof_parameter: float = 9.807

Parameter in calculation of Grashof number (Campbell and Norman, 2012).

initial_air_conductivity: float = 50.0

Initial air conductivity, [mol m-2 s-1].

kinematic_viscosity_parameters: list[float]

Parameters in calculation of kinematic viscosity (Campbell and Norman, 2012).

latent_heat_vap_equ_factors: list[float]

Factors in calculation of latent heat of vapourisation.

Implementation after Maclean and Klinges (2021), value is taken from Henderson-Sellers (1984).

leaf_emissivity: float = 0.8

Leaf emissivity, dimensionless.

leaf_heat_transfer_coefficient: float = 50.0

Leaf heat transfer coefficient, [s^1/2 m^-1/2], (Linacre, 1964).

light_extinction_coefficient: float = 0.01

Light extinction coefficient for canopy.

max_ratio_wind_to_friction_velocity: float = 0.3

Maximum ratio of wind velocity to friction velocity, dimensionless.

Implementation and value from Maclean and Klinges (2021).

max_relative_turbulence_intensity: float = 0.9

Maximum relative turbulence intensity, dimensionless.

See relative_turbulence_intensity. The default value from Shaw et al (1974) Agricultural Meteorology, 13: 419-425. TODO this is not representative of a rainforest environment and needs to be adjusted.

min_friction_velocity: float = 0.001

Minimum friction velocity, [m s-1].

min_relative_turbulence_intensity: float = 0.36

Minimum relative turbulence intensity, dimensionless.

See relative_turbulence_intensity. The default value is taken from Shaw et al (1974) Agricultural Meteorology, 13: 419-425. TODO this is not representative of a rainforest environment and needs to be adjusted.

min_roughness_length: float = 0.01

Minimum roughness length, [m].

The minimum roughness length represents the lowest height at which the surface roughness significantly affects the wind flow over a particular terrain or surface. Implementation and value from Maclean and Klinges (2021).

min_wind_speed_above_canopy: float = 0.1

Minimum wind speed above the canopy, [m s-1].

Implementation and value from Maclean and Klinges (2021).

min_windspeed_below_canopy: float = 0.001

Minimum wind speed below the canopy or in absence of vegetation, [m s-1].

mixing_length_factor: float = 0.32

Factor in calculation of mixing length, dimensionless.

Implementation and value from Maclean and Klinges (2021).

negative_free_conductance_parameter: float = 0.26

Parameter in calculation of free conductance for negative temperature difference (Campbell and Norman, 2012).

positive_free_conductance_parameter: float = 0.54

Parameter in calculation of free conductance for positive temperature difference (Campbell and Norman, 2012).

relative_turbulence_intensity: float = 0.5

Relative turbulence intensity, dimensionless.

The relative turbulence intensity is a proportionality factor that relates the mean eddy velocity is assumed to the local wind speed below the canopy. Implementation and value from Maclean and Klinges (2021).

richardson_bounds: list[float]

Minimum and maximum value for Richardson number.

roughness_element_drag_coefficient: float = 0.3

Roughness-element drag coefficient, dimensionless.

The roughness-element drag coefficient refers to the dimensionless coefficient used to quantify the drag force exerted by individual roughness elements (such as buildings, trees, or surface irregularities) on airflow, influencing the overall aerodynamic characteristics of a surface within the atmospheric boundary layer. Implementation and value from Maclean and Klinges (2021).

roughness_sublayer_depth_parameter: float = 0.193

Parameter characterizes the roughness sublayer depth.

The roughness sublayer depth refers to the layer near the surface where the effects of surface roughness significantly influence airflow, turbulence, and momentum transfer, typically extending up to about 10% of the height of the roughness elements or features on the surface. This layer is characterized by intense turbulence and rapid velocity changes due to surface irregularities. Implentation and value taken from (Maclean and Klinges, 2021).

saturated_pressure_slope_parameters: list[float]

List of parameters to calcualte the slope of saturated vapour pressure curve.

soil_emissivity: float = 0.8

Soil emissivity, dimensionless.

soil_thermal_conductivity: float = 0.7

Soil thermal conductivity, [W m-1 K-1], (Monteith and Unsworth, 1990).

specific_heat_capacity_leaf: float = 2760.0

Specific heat capacity of leaf, [J kg-1 K-1], (Aston, 1985).

specific_heat_capacity_soil: float = 2700000.0

Specific heat capacity of soil, [J kg-1 K-1], (Monteith and Unsworth, 1990).

specific_heat_equ_factors: list[float]

Factors in calculation of molar specific heat of air.

Implementation after Maclean and Klinges (2021).

stable_temperature_gradient_intercept: float = 0.74

Temperature gradient intercept under stable conditions after Goudriaan (1977).

stable_wind_shear_slope: float = 4.7

Wind shear slope under stable conditions after Gourdiaan (1977).

stomatal_resistance: float = 200.0

Default stomatal resistance, [s m2 mumol-1].

substrate_surface_drag_coefficient: float = 0.003

Substrate-surface drag coefficient, dimensionless.

The substrate-surface drag coefficient represents the resistance encountered by an object moving on or through a surface and varies based on the nature of the surface and the object’s properties. Here, it affects how wind speed is altered by a surface . Implementation and value from Maclean and Klinges (2021).

surface_albedo: float = 0.125

Mean surface albedo of a tropical rainforest in South East Asia, dimensionless.

The value is takes from a study that compares changes in surface albedo before and after deforestation in South East Asia (Wilson, 2020).

surface_layer_depth: float = 0.1

Surface layer depth, [m].

This depth defines the soil depth that is directly involved in the surface energy balance.

thermal_diffusivity_parameters: list[float]

Parameter in calculation of thermal diffusivity (Campbell and Norman, 2012).

top_leaf_air_conductivity: float = 0.19

Initial leaf air heat conductivity at the top of the canopy, [mol m-2 s-1].

top_leaf_vapour_conductivity: float = 0.32

Initial leaf vapour conductivity at the top of the canopy, [mol m-2 s-1].

turbulence_sign: bool = True

Flag indicating if turbulence increases or decreases with height.

volume_to_weight_conversion: float = 1000.0

Factor to convert between soil volume and weight in kilograms.

wind_profile_parameters: list[float]

Factors in calculation of logarithmic wind profile above canopy.

wind_reference_height: float = 10.0

Reference height for wind speed above the canopy. The reference height for horizontal wind is typically 10m above ground compared to 2m for other atmospheric variables such as temperature and relative humidity. We assume here that the reference height is above the canopy, please check the input data carefully and be aware of limitations.

yasuda_stability_parameters: list[float]

Parameters to approximate diabatic correction factors for heat and momentum.

Dimenionless parameter, implementation after Maclean and Klinges (2021) and values taken from Yasuda (1988).

zero_plane_scaling_parameter: float = 7.5

Control parameter for scaling zero displacement to height, dimensionless.

Implementation after Maclean and Klinges (2021), value is taken from Raupach (1994).