The BioCro C++ Library
temperature_response_functions.h File Reference
#include <cmath>
#include "../framework/constants.h"
+ Include dependency graph for temperature_response_functions.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

double arrhenius_exponential (double c, double activation_energy, double temperature_k)
 Calculates the exponential term of the Arrhenius equation. More...
 
double Q10_temperature_response (double temperature, double Tref)
 A typical Q10-based temperature response. The two temperatures below must be supplied in the same units, but the units can be either K or degrees C. More...
 
double johnson_eyring_williams_response (double c, double Ha, double Hd, double S, double temperature_k)
 A temperature response function originally defined in Johnson, Eyring, and Williams (1942), but used more recently to describe the temperature response of triose phosphate utilization limitations in Harley et al. (1992), Sharkey et al. (2007), and Yang et al. (2016). More...
 
double polynomial_response (double c0, double c1, double c2, double temperature_c)
 A simple second-order polynomial equation describing the temperature response of a reaction rate or other parameter. More...
 

Function Documentation

◆ arrhenius_exponential()

double arrhenius_exponential ( double  c,
double  activation_energy,
double  temperature_k 
)
inline

Calculates the exponential term of the Arrhenius equation.

The Arrhenius equation gives the dependence of the rate constant of a chemical reaction on the absolute temperature and is often written as

k = A * e^(-E_a / R / T) (1)

where k is the rate constant, E_a is the activation energy, R is the ideal gas constant, and T is the absolute temperature. As T approaches infinity, E_a / R / T approaches zero and so k approaches A. Thus, A represents the rate constant in the limit of infinite temperature. From a practical standpoint, A is not a particularly useful parameter and for this reason it is often written as

A = k_0 * e^c (2)

where k_0 is the rate constant measured at a reference temperature (e.g. 25 degrees C) and c is a dimensionless parameter chosen so that k = k_0 at the reference temperature.

In order to make this function reusable, it only calculates the exponential factor, which is always dimensionless. I.e., it calculates e^(c - E_a / R / T).

Parameters
[in]cDimensionless parameter related to the reference temperature at which the rate constant was measured
[in]activation_energyActivation energy of the reaction in J / mol
[in]temperature_kAbsolute temperature in Kelvin
Returns
Return The Arrhenius exponential e^(c - E_a / R / T)

Definition at line 41 of file temperature_response_functions.h.

Referenced by c3_temperature_response(), and johnson_eyring_williams_response().

+ Here is the caller graph for this function:

◆ johnson_eyring_williams_response()

double johnson_eyring_williams_response ( double  c,
double  Ha,
double  Hd,
double  S,
double  temperature_k 
)
inline

A temperature response function originally defined in Johnson, Eyring, and Williams (1942), but used more recently to describe the temperature response of triose phosphate utilization limitations in Harley et al. (1992), Sharkey et al. (2007), and Yang et al. (2016).

References:

Parameters
[in]cDimensionless scaling parameter
[in]HaEnthalpy of activation (J / mol)
[in]HdEnthalpy of deactivation (J / mol)
[in]SEntropy (J / K / mol)
[in]temperature_kAbsolute temperature (K)
Returns
The value of a reaction rate (or some other parameter) at the specified temperature; the units of the return value will depend on the particular situation where this function is being used.

Definition at line 107 of file temperature_response_functions.h.

References arrhenius_exponential().

Referenced by c3_temperature_response().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ polynomial_response()

double polynomial_response ( double  c0,
double  c1,
double  c2,
double  temperature_c 
)
inline

A simple second-order polynomial equation describing the temperature response of a reaction rate or other parameter.

Parameters
[in]c0The zeroth-order coefficient, in the same units as the output value
[in]c1The first-order coefficient, in units of (output units) / (degrees C)
[in]c2The second-order coefficient, in units of (output units) / (degrees C)^2
[in]temperature_cTemperature (degrees C)

Definition at line 142 of file temperature_response_functions.h.

Referenced by c3_temperature_response().

+ Here is the caller graph for this function:

◆ Q10_temperature_response()

double Q10_temperature_response ( double  temperature,
double  Tref 
)
inline

A typical Q10-based temperature response. The two temperatures below must be supplied in the same units, but the units can be either K or degrees C.

Parameters
[in]temperatureTemperature (K or degrees C)
[in]TrefReference temperature (K or degrees C)
Returns
A scaling factor

Sources

https://doi.org/10.1016/j.fcr.2010.07.007

Definition at line 65 of file temperature_response_functions.h.

Referenced by growth_resp_Q10(), and maintenance_resp_Q10().

+ Here is the caller graph for this function: