0.1.33
Loading...
Searching...
No Matches
pyhelios.types.photosynthesis.FarquharModelCoefficients Class Reference

Farquhar-von Caemmerer-Berry photosynthesis model coefficients. More...

Detailed Description

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+).
 
'FarquharModelCoefficientsfrom_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)
 

Member Function Documentation

◆ __post_init__()

pyhelios.types.photosynthesis.FarquharModelCoefficients.__post_init__ ( self)

Validate parameter values after initialization.

Definition at line 291 of file photosynthesis.py.

◆ _temp_response_block()

List[float] pyhelios.types.photosynthesis.FarquharModelCoefficients._temp_response_block ( self,
PhotosyntheticTemperatureResponseParameters response,
float fallback_value )
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.

◆ from_array()

'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.

◆ getJmaxTempResponse()

PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getJmaxTempResponse ( self)

Get Jmax temperature response parameters.

Definition at line 401 of file photosynthesis.py.

◆ getLightResponseCurvatureTempResponse()

PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getLightResponseCurvatureTempResponse ( self)

Get light response curvature temperature response parameters.

Definition at line 419 of file photosynthesis.py.

◆ getQuantumEfficiencyTempResponse()

PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getQuantumEfficiencyTempResponse ( self)

Get quantum efficiency temperature response parameters.

Definition at line 413 of file photosynthesis.py.

◆ getRdTempResponse()

PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getRdTempResponse ( self)

Get dark respiration temperature response parameters.

Definition at line 407 of file photosynthesis.py.

◆ getVcmaxTempResponse()

PhotosyntheticTemperatureResponseParameters pyhelios.types.photosynthesis.FarquharModelCoefficients.getVcmaxTempResponse ( self)

Get Vcmax temperature response parameters.

Definition at line 395 of file photosynthesis.py.

◆ setJmax()

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.

◆ setLightResponseCurvature_theta()

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.

◆ setQuantumEfficiency_alpha()

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.

◆ setRd()

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.

◆ setVcmax()

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.

◆ to_array()

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.

Member Data Documentation

◆ _alpha_temp_response

pyhelios.types.photosynthesis.FarquharModelCoefficients._alpha_temp_response = field(default=None, init=False)
staticprotected

Definition at line 287 of file photosynthesis.py.

◆ _jmax_temp_response

pyhelios.types.photosynthesis.FarquharModelCoefficients._jmax_temp_response = field(default=None, init=False)
staticprotected

Definition at line 285 of file photosynthesis.py.

◆ _rd_temp_response

pyhelios.types.photosynthesis.FarquharModelCoefficients._rd_temp_response = field(default=None, init=False)
staticprotected

Definition at line 286 of file photosynthesis.py.

◆ _theta_temp_response

pyhelios.types.photosynthesis.FarquharModelCoefficients._theta_temp_response = field(default=None, init=False)
staticprotected

Definition at line 288 of file photosynthesis.py.

◆ _vcmax_temp_response

pyhelios.types.photosynthesis.FarquharModelCoefficients._vcmax_temp_response = field(default=None, init=False)
staticprotected

Definition at line 284 of file photosynthesis.py.

◆ alpha

pyhelios.types.photosynthesis.FarquharModelCoefficients.alpha = -1.0
static

Definition at line 252 of file photosynthesis.py.

◆ c_Gamma

pyhelios.types.photosynthesis.FarquharModelCoefficients.c_Gamma = 19.02
static

Definition at line 261 of file photosynthesis.py.

◆ c_Jmax

pyhelios.types.photosynthesis.FarquharModelCoefficients.c_Jmax = 18.86
static

Definition at line 260 of file photosynthesis.py.

◆ c_Kc

pyhelios.types.photosynthesis.FarquharModelCoefficients.c_Kc = 38.05
static

Definition at line 262 of file photosynthesis.py.

◆ c_Ko

pyhelios.types.photosynthesis.FarquharModelCoefficients.c_Ko = 20.30
static

Definition at line 263 of file photosynthesis.py.

◆ c_Rd

pyhelios.types.photosynthesis.FarquharModelCoefficients.c_Rd = 18.72
static

Definition at line 258 of file photosynthesis.py.

◆ c_Vcmax

pyhelios.types.photosynthesis.FarquharModelCoefficients.c_Vcmax = 26.35
static

Definition at line 259 of file photosynthesis.py.

◆ dH_Gamma

pyhelios.types.photosynthesis.FarquharModelCoefficients.dH_Gamma = 37.83
static

Definition at line 269 of file photosynthesis.py.

◆ dH_Jmax

pyhelios.types.photosynthesis.FarquharModelCoefficients.dH_Jmax = 46.36
static

Definition at line 268 of file photosynthesis.py.

◆ dH_Kc

pyhelios.types.photosynthesis.FarquharModelCoefficients.dH_Kc = 79.43
static

Definition at line 270 of file photosynthesis.py.

◆ dH_Ko

pyhelios.types.photosynthesis.FarquharModelCoefficients.dH_Ko = 36.38
static

Definition at line 271 of file photosynthesis.py.

◆ dH_Rd

pyhelios.types.photosynthesis.FarquharModelCoefficients.dH_Rd = 46.39
static

Definition at line 266 of file photosynthesis.py.

◆ dH_Vcmax

pyhelios.types.photosynthesis.FarquharModelCoefficients.dH_Vcmax = 65.33
static

Definition at line 267 of file photosynthesis.py.

◆ dHa_gm

pyhelios.types.photosynthesis.FarquharModelCoefficients.dHa_gm = -1.0
static

Definition at line 279 of file photosynthesis.py.

◆ dHd_gm

pyhelios.types.photosynthesis.FarquharModelCoefficients.dHd_gm = -1.0
static

Definition at line 281 of file photosynthesis.py.

◆ gm_at_25C

pyhelios.types.photosynthesis.FarquharModelCoefficients.gm_at_25C = float('inf')
static

Definition at line 278 of file photosynthesis.py.

◆ Jmax

pyhelios.types.photosynthesis.FarquharModelCoefficients.Jmax = -1.0
static

Definition at line 251 of file photosynthesis.py.

◆ O

pyhelios.types.photosynthesis.FarquharModelCoefficients.O = 213.5
static

Definition at line 254 of file photosynthesis.py.

◆ Rd

pyhelios.types.photosynthesis.FarquharModelCoefficients.Rd = -1.0
static

Definition at line 253 of file photosynthesis.py.

◆ Topt_gm_C

pyhelios.types.photosynthesis.FarquharModelCoefficients.Topt_gm_C = -1.0
static

Definition at line 280 of file photosynthesis.py.

◆ TPU_flag

pyhelios.types.photosynthesis.FarquharModelCoefficients.TPU_flag = 0
static

Definition at line 255 of file photosynthesis.py.

◆ Vcmax

pyhelios.types.photosynthesis.FarquharModelCoefficients.Vcmax = -1.0
static

Definition at line 250 of file photosynthesis.py.


The documentation for this class was generated from the following file: