'bake' leaf parameters using temperature response functions
Constructor function for baked
class. This will also inherit class leaf_par
. This function ensures that temperature is "baked in" to leaf parameter calculations T_leaf
using temperature response functions detailed below.
bake(leaf_par, bake_par, constants, assert_units = TRUE)temp_resp1(par25, E_a, R, T_leaf, T_ref, unitless)
temp_resp2(par25, D_s, E_a, E_d, R, T_leaf, T_ref, unitless)
A list of leaf parameters inheriting class leaf_par
. This can be generated using the make_leafpar
function.
A list of temperature response parameters inheriting class bake_par
. This can be generated using the make_bakepar
function.
A list of physical constants inheriting class constants
. This can be generated using the make_constants
function.
Logical. Should parameter units
be checked? The function is faster when FALSE, but input must be in correct units or else results will be incorrect without any warning.
Parameter value at 25 <U+00B0>C of class units
.
Empirical temperature response value in J/mol of class units
.
Ideal gas constant in J / (mol K) of class units
. See make_constants
.
Leaf temperature in K of class units
. Will be converted to <U+00B0>C.
Reference temperature in K of class units
.
Logical. Should units
be set? The function is faster when FALSE, but input must be in correct units or else results will be incorrect without any warning.
Empirical temperature response value in J / (mol K) of class units
.
Empirical temperature response value in J/mol of class units
.
Several leaf parameters (leaf_par
) are temperature sensitive. Temperature-sensitive parameters are input at a reference temperature of 25 <U+00B0>C. These parameters are provided as par_name25
and then "baked" using the appropriate temperature response function and parameters in bake_par
. The "baked" parameter will have the name without "25" appended (par_name
). E.g. V_cmax25
becomes V_cmax
.
Temperature response functions following Bernacchi et al. 2002.
Temperature response function 1 (temp_response1
):
$$\mathrm{par}(T_\mathrm{leaf}) = \mathrm{par25}~\mathrm{exp}(E_\mathrm{a} / (R T_\mathrm{ref}) (T_\mathrm{leaf} - 25) / (T_\mathrm{leaf} + 273.15))$$
\(T_\mathrm{ref}\) is the reference temperature in K \(T_\mathrm{leaf}\) is the leaf temperature in <U+00B0>C
Temperature response function 2 (temp_response2
) is the above equation multiplied by:
$$(1 + \mathrm{exp}((D_\mathrm{s} / R - E_\mathrm{d} / (R T_\mathrm{ref})))) / (1 + \mathrm{exp}((D_\mathrm{s} / R) - (E_\mathrm{d} / (R (T_\mathrm{leaf} + 273.15)))))$$
Function 1 increases exponentially with temperature; Function 2 peaks a particular temperature.
Bernacchi CJ, Portis AR, Nakano H, von Caemmerer S, Long SP. 2002. Temperature response of mesophyll conductance. Implications for the determination of Rubisco enzyme kinetics and for limitations to photosynthesis in vivo. Plant Physiology 130: 1992-8.
# NOT RUN {
bake_par <- make_bakepar()
constants <- make_constants(use_tealeaves = FALSE)
leaf_par <- make_leafpar(replace = list(T_leaf = set_units(293.15, "K")),
use_tealeaves = FALSE)
baked_leafpar <- bake(leaf_par, bake_par, constants)
baked_leafpar$V_cmax25
baked_leafpar$V_cmax
# }
Run the code above in your browser using DataLab