![]() |
0.1.33
|
Farquhar-von Caemmerer-Berry photosynthesis model coefficients. More...
Farquhar-von Caemmerer-Berry photosynthesis model coefficients.
This model provides a mechanistic description of leaf photosynthesis based on biochemical limitations and temperature responses.
Core Parameters (at 25°C): Vcmax Maximum carboxylation rate (μmol/m²/s, -1 = uninitialized) Jmax Maximum electron transport rate (μmol/m²/s, -1 = uninitialized) alpha Quantum efficiency of photosystem II (μmol electrons/μmol photons) Rd Dark respiration rate (μmol/m²/s, -1 = uninitialized) O Ambient oxygen concentration (mmol/mol) TPU_flag Enable triose phosphate utilization limitation (0/1)
Temperature Response Parameters: c_ Scaling factor for Arrhenius equation dH_ Activation energy for temperature response
Definition at line 248 of file photosynthesis.py.
Public Member Functions | |
| __post_init__ (self) | |
| Validate parameter values after initialization. | |
| None | setVcmax (self, float vcmax_at_25c, Optional[float] dha=None, Optional[float] topt=None, Optional[float] dhd=None) |
| Set Vcmax with temperature response (mimics C++ overloads). | |
| None | setJmax (self, float jmax_at_25c, Optional[float] dha=None, Optional[float] topt=None, Optional[float] dhd=None) |
| Set Jmax with temperature response (mimics C++ overloads). | |
| None | setRd (self, float rd_at_25c, Optional[float] dha=None, Optional[float] topt=None, Optional[float] dhd=None) |
| Set dark respiration with temperature response (mimics C++ overloads). | |
| None | setQuantumEfficiency_alpha (self, float alpha_at_25c, Optional[float] dha=None, Optional[float] topt=None, Optional[float] dhd=None) |
| Set quantum efficiency with temperature response (mimics C++ overloads). | |
| None | setLightResponseCurvature_theta (self, float theta_at_25c, Optional[float] dha=None, Optional[float] topt=None, Optional[float] dhd=None) |
| Set light response curvature with temperature response (mimics C++ overloads). | |
| PhotosyntheticTemperatureResponseParameters | getVcmaxTempResponse (self) |
| Get Vcmax temperature response parameters. | |
| PhotosyntheticTemperatureResponseParameters | getJmaxTempResponse (self) |
| Get Jmax temperature response parameters. | |
| PhotosyntheticTemperatureResponseParameters | getRdTempResponse (self) |
| Get dark respiration temperature response parameters. | |
| PhotosyntheticTemperatureResponseParameters | getQuantumEfficiencyTempResponse (self) |
| Get quantum efficiency temperature response parameters. | |
| PhotosyntheticTemperatureResponseParameters | getLightResponseCurvatureTempResponse (self) |
| Get light response curvature temperature response parameters. | |
| List[float] | to_array (self) |
| Convert to float array for C++ interface (38 floats; helios-core 1.3.80+). | |
| 'FarquharModelCoefficients' | from_array (cls, List[float] coefficients) |
| Create from float array (from C++ interface). | |
Static Public Attributes | |
| float | Vcmax = -1.0 |
| float | Jmax = -1.0 |
| float | alpha = -1.0 |
| float | Rd = -1.0 |
| float | O = 213.5 |
| int | TPU_flag = 0 |
| float | c_Rd = 18.72 |
| float | c_Vcmax = 26.35 |
| float | c_Jmax = 18.86 |
| float | c_Gamma = 19.02 |
| float | c_Kc = 38.05 |
| float | c_Ko = 20.30 |
| float | dH_Rd = 46.39 |
| float | dH_Vcmax = 65.33 |
| float | dH_Jmax = 46.36 |
| float | dH_Gamma = 37.83 |
| float | dH_Kc = 79.43 |
| float | dH_Ko = 36.38 |
| float | gm_at_25C = float('inf') |
| float | dHa_gm = -1.0 |
| float | Topt_gm_C = -1.0 |
| float | dHd_gm = -1.0 |
Protected Member Functions | |
| List[float] | _temp_response_block (self, PhotosyntheticTemperatureResponseParameters response, float fallback_value) |
| Pack a temperature response into its 4-float (value, dHa, Topt_C, dHd) block. | |
Static Protected Attributes | |
| Optional | _vcmax_temp_response = field(default=None, init=False) |
| Optional | _jmax_temp_response = field(default=None, init=False) |
| Optional | _rd_temp_response = field(default=None, init=False) |
| Optional | _alpha_temp_response = field(default=None, init=False) |
| Optional | _theta_temp_response = field(default=None, init=False) |
| pyhelios.types.photosynthesis.FarquharModelCoefficients.__post_init__ | ( | self | ) |
Validate parameter values after initialization.
Definition at line 291 of file photosynthesis.py.
|
protected |
Pack a temperature response into its 4-float (value, dHa, Topt_C, dHd) block.
``Topt`` is stored in Kelvin and defaults to 10000 K to mean "no optimum". The flat array carries Topt in Celsius with -1 as the no-optimum sentinel, matching ``packTempResponse`` in native/src/pyhelios_wrapper_photosynthesis.cpp.
Definition at line 432 of file photosynthesis.py.
| 'FarquharModelCoefficients' pyhelios.types.photosynthesis.FarquharModelCoefficients.from_array | ( | cls, | |
| List[float] | coefficients ) |
Create from float array (from C++ interface).
Accepts the legacy 18-float layout (pre-1.3.72), the 22-float layout with mesophyll conductance gm in slots 18..21, and the 38-float layout (1.3.80+) that additionally carries the Vcmax/Jmax/Rd/alpha temperature responses in slots 22..37, and the 42-float layout that adds the light response curvature theta in slots 38..41. Shorter arrays leave the corresponding responses unset, reproducing the earlier behaviour.
Definition at line 485 of file photosynthesis.py.
| PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getJmaxTempResponse | ( | self | ) |
Get Jmax temperature response parameters.
Definition at line 401 of file photosynthesis.py.
| PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getLightResponseCurvatureTempResponse | ( | self | ) |
Get light response curvature temperature response parameters.
Definition at line 419 of file photosynthesis.py.
| PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getQuantumEfficiencyTempResponse | ( | self | ) |
Get quantum efficiency temperature response parameters.
Definition at line 413 of file photosynthesis.py.
| PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getRdTempResponse | ( | self | ) |
Get dark respiration temperature response parameters.
Definition at line 407 of file photosynthesis.py.
| PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getVcmaxTempResponse | ( | self | ) |
Get Vcmax temperature response parameters.
Definition at line 395 of file photosynthesis.py.
| None pyhelios.types.photosynthesis.FarquharModelCoefficients.setJmax | ( | self, | |
| float | jmax_at_25c, | ||
| Optional[float] | dha = None, | ||
| Optional[float] | topt = None, | ||
| Optional[float] | dhd = None ) |
Set Jmax with temperature response (mimics C++ overloads).
Definition at line 329 of file photosynthesis.py.
| None pyhelios.types.photosynthesis.FarquharModelCoefficients.setLightResponseCurvature_theta | ( | self, | |
| float | theta_at_25c, | ||
| Optional[float] | dha = None, | ||
| Optional[float] | topt = None, | ||
| Optional[float] | dhd = None ) |
Set light response curvature with temperature response (mimics C++ overloads).
Definition at line 380 of file photosynthesis.py.
| None pyhelios.types.photosynthesis.FarquharModelCoefficients.setQuantumEfficiency_alpha | ( | self, | |
| float | alpha_at_25c, | ||
| Optional[float] | dha = None, | ||
| Optional[float] | topt = None, | ||
| Optional[float] | dhd = None ) |
Set quantum efficiency with temperature response (mimics C++ overloads).
Definition at line 363 of file photosynthesis.py.
| None pyhelios.types.photosynthesis.FarquharModelCoefficients.setRd | ( | self, | |
| float | rd_at_25c, | ||
| Optional[float] | dha = None, | ||
| Optional[float] | topt = None, | ||
| Optional[float] | dhd = None ) |
Set dark respiration with temperature response (mimics C++ overloads).
Definition at line 346 of file photosynthesis.py.
| None pyhelios.types.photosynthesis.FarquharModelCoefficients.setVcmax | ( | self, | |
| float | vcmax_at_25c, | ||
| Optional[float] | dha = None, | ||
| Optional[float] | topt = None, | ||
| Optional[float] | dhd = None ) |
Set Vcmax with temperature response (mimics C++ overloads).
Definition at line 308 of file photosynthesis.py.
| List[float] pyhelios.types.photosynthesis.FarquharModelCoefficients.to_array | ( | self | ) |
Convert to float array for C++ interface (38 floats; helios-core 1.3.80+).
Slots 0..17 are the legacy Farquhar fields (Vcmax/Jmax/alpha/Rd/O/TPU_flag plus the 12 c_*/dH_* temperature constants). Slots 18..21 carry the mesophyll conductance gm temperature response: (gm_at_25C, dHa, Topt_C, dHd) using the -1 sentinel convention (dHa < 0 → constant, Topt_C < 0 → monotonic Arrhenius, dHd < 0 → default deactivation energy). Slots 22..37 carry the same 4-float block for Vcmax, Jmax, Rd and alpha in that order, and slots 38..41 the same block for the light response curvature theta. The rate blocks in slots 22..37 exist because slots 0..3 can only express a rate at 25 C. As of helios-core 1.3.80 the C++ setters stamp the deprecated scalar fields to -1 so the temperature-response object is authoritative, and every species in the library is populated through those setters — so slots 0..3 alone cannot round-trip a peaked response.
Definition at line 457 of file photosynthesis.py.
|
staticprotected |
Definition at line 287 of file photosynthesis.py.
|
staticprotected |
Definition at line 285 of file photosynthesis.py.
|
staticprotected |
Definition at line 286 of file photosynthesis.py.
|
staticprotected |
Definition at line 288 of file photosynthesis.py.
|
staticprotected |
Definition at line 284 of file photosynthesis.py.
|
static |
Definition at line 252 of file photosynthesis.py.
|
static |
Definition at line 261 of file photosynthesis.py.
|
static |
Definition at line 260 of file photosynthesis.py.
|
static |
Definition at line 262 of file photosynthesis.py.
|
static |
Definition at line 263 of file photosynthesis.py.
|
static |
Definition at line 258 of file photosynthesis.py.
|
static |
Definition at line 259 of file photosynthesis.py.
|
static |
Definition at line 269 of file photosynthesis.py.
|
static |
Definition at line 268 of file photosynthesis.py.
|
static |
Definition at line 270 of file photosynthesis.py.
|
static |
Definition at line 271 of file photosynthesis.py.
|
static |
Definition at line 266 of file photosynthesis.py.
|
static |
Definition at line 267 of file photosynthesis.py.
|
static |
Definition at line 279 of file photosynthesis.py.
|
static |
Definition at line 281 of file photosynthesis.py.
|
static |
Definition at line 278 of file photosynthesis.py.
|
static |
Definition at line 251 of file photosynthesis.py.
|
static |
Definition at line 254 of file photosynthesis.py.
|
static |
Definition at line 253 of file photosynthesis.py.
|
static |
Definition at line 280 of file photosynthesis.py.
|
static |
Definition at line 255 of file photosynthesis.py.
|
static |
Definition at line 250 of file photosynthesis.py.