API documentation for the model_config module#

Abiotic simple model configuration.

Classes:

AbioticSharedConstants(*[, leaf_emissivity, ...])

Shared abiotic constants.

AbioticSimpleBounds(*[, air_temperature, ...])

Upper and lower bounds for abiotic variables.

AbioticSimpleConfiguration(*[, static, ...])

Root configuration class for the abiotic simple model.

AbioticSimpleConstants(*[, leaf_emissivity, ...])

Dataclass to store all constants for the abiotic_simple model.

class virtual_ecosystem.models.abiotic_simple.model_config.AbioticSharedConstants(*, leaf_emissivity: float = 0.98, soil_emissivity: float = 0.95)[source]#

Shared abiotic constants.

This is a pydantic basemodel to hold constants shared between the abiotic and abiotic_simple models.

Attributes:

leaf_emissivity

Leaf emissivity, unitless.

soil_emissivity

Soil emissivity, dimensionless.

leaf_emissivity: float#

Leaf emissivity, unitless.

Leaf emissivity is a measure of how efficiently a leaf emits thermal radiation compared to a perfect blackbody, typically ranging from 0.95 to 0.99. Value for tropical vegetation is taken from Ma et al. (2019).

soil_emissivity: float#

Soil emissivity, dimensionless.

Soil emissivity is a measure of how efficiently the soil surface emits thermal radiation compared to a perfect blackbody, with values typically ranging from 0.90 to 0.98 depending on soil texture, moisture, and surface roughness. Value taken from Mölders (2005).

class virtual_ecosystem.models.abiotic_simple.model_config.AbioticSimpleBounds(*, air_temperature: tuple[float, float, float] = (-20.0, 80.0, -1.27), relative_humidity: tuple[float, float, float] = (0.001, 99.999, 5.4), vapour_pressure_deficit: tuple[float, float, float] = (0.001, 10.0, -252.24), wind_speed: tuple[float, float, float] = (0.001, 100.0, -0.1), soil_temperature: tuple[float, float] = (-10.0, 50.0))[source]#

Upper and lower bounds for abiotic variables.

When a values falls outside these bounds, it is set to the bound value. NOTE that this approach does not conserve energy and matter in the system. This will be implemented at a later stage.

Attributes:

air_temperature

Bounds and gradient for air temperature, [C].

relative_humidity

Bounds and gradient for relative humidity, dimensionless.

soil_temperature

Bounds for soil temperature, [C].

vapour_pressure_deficit

Bounds and gradient for vapour pressure deficit, [kPa].

wind_speed

Bounds and gradient for wind speed, [m s-1].

air_temperature: tuple[float, float, float]#

Bounds and gradient for air temperature, [C].

Gradient for linear regression to calculate air temperature as a function of leaf area index from Hardwick et al. (2015).

relative_humidity: tuple[float, float, float]#

Bounds and gradient for relative humidity, dimensionless.

Gradient for linear regression to calculate relative humidity as a function of leaf area index from Hardwick et al. (2015).

soil_temperature: tuple[float, float]#

Bounds for soil temperature, [C].

vapour_pressure_deficit: tuple[float, float, float]#

Bounds and gradient for vapour pressure deficit, [kPa].

Gradient for linear regression to calculate vapour pressure deficit as a function of leaf area index from Hardwick et al. (2015).

wind_speed: tuple[float, float, float]#

Bounds and gradient for wind speed, [m s-1].

Gradient for linear regression to calculate wind speed as a function of leaf area index. The value is choses arbitrarily and needs to be replaced with observations.

class virtual_ecosystem.models.abiotic_simple.model_config.AbioticSimpleConfiguration(*, static: bool = False, constants: AbioticSimpleConstants = AbioticSimpleConstants(leaf_emissivity=0.98, soil_emissivity=0.95, placeholder=10.0), bounds: AbioticSimpleBounds = AbioticSimpleBounds(air_temperature=(-20.0, 80.0, -1.27), relative_humidity=(0.001, 99.999, 5.4), vapour_pressure_deficit=(0.001, 10.0, -252.24), wind_speed=(0.001, 100.0, -0.1), soil_temperature=(-10.0, 50.0)))[source]#

Root configuration class for the abiotic simple model.

class virtual_ecosystem.models.abiotic_simple.model_config.AbioticSimpleConstants(*, leaf_emissivity: float = 0.98, soil_emissivity: float = 0.95, placeholder: float = 10.0)[source]#

Dataclass to store all constants for the abiotic_simple model.

Attributes:

placeholder

Placeholder value for test.

leaf_emissivity: float#

Leaf emissivity, unitless.

Leaf emissivity is a measure of how efficiently a leaf emits thermal radiation compared to a perfect blackbody, typically ranging from 0.95 to 0.99. Value for tropical vegetation is taken from Ma et al. (2019).

placeholder: float#

Placeholder value for test.

soil_emissivity: float#

Soil emissivity, dimensionless.

Soil emissivity is a measure of how efficiently the soil surface emits thermal radiation compared to a perfect blackbody, with values typically ranging from 0.90 to 0.98 depending on soil texture, moisture, and surface roughness. Value taken from Mölders (2005).