Learn R Programming

respirometry (version 2.0.0)

Q10: Parameters of Q10 Temperature Coefficient

Description

Calculates parameters from Q10 temperature coefficient for chemical or biological systems. This function can be used in two ways. 1. if four of the first five parameters are given (Q10, R1, R2, T1, T2) then the fifth parameter is returned, or 2. if R_vec and T_vec are given, then the best Q10 for those data is returned.

Usage

Q10(Q10, R1, R2, T1, T2, R_vec, T_vec, model = FALSE)

q10(Q10, R1, R2, T1, T2, R_vec, T_vec, model = FALSE)

calc_q10(Q10, R1, R2, T1, T2, R_vec, T_vec, model = FALSE)

Arguments

Q10

factor by which rate changes due to 10 °C increase in temperature.

R1

rate 1. Could also be Pcrit or any other temperature-dependent biological parameters.

R2

rate 2. Could also be Pcrit or any other temperature-dependent biological parameters.

T1

temperature 1 (in °C).

T2

temperature 2 (in °C).

R_vec

a vector of temperature-dependent values, such as rates (e.g. MO2), Pcrit or other biological parameters.

T_vec

a vector of temperature values (in °C).

model

logical. If TRUE, then a list is returned which includes an linear model of log10(R_vec) and T_vec fit by stats::lm(). Default is FALSE.

Author

Matthew A. Birk, matthewabirk@gmail.com

Details

$$Q_{10} = (R_2 / R_1) ^ {\frac{10}{T_2 - T_1}}$$

See Also

scale_MO2, calc_E, adj_by_temp

Examples

Run this code
Q10(R1 = 5, R2 = 10, T1 = 10, T2 = 20) # Returns Q10; = 2
Q10(Q10 = 2.66, R1 = 5, T1 = 10, T2 = 20) # Returns R2; = 13.3

# My species has an MO2 of 9.5 umol/g/h at 10 *C. What MO2 should I expect at 13 *C?
Q10(Q10 = 2, R1 = 9.5, T1 = 10, T2 = 13) # expect ~11.7 umol/g/h at 13 *C.

# I measured MO2 at a spectrum of temperatures. What Q10 value best fits my data?
Q10(R_vec = c(1, 2, 5, NA, 18, 33), T_vec = c(0, 10, 20, 30, 40, 50))

# A 100 g individual at 10 *C has an MO2 of 1270 umol/h. How much
# would a 250 g individual likely consume at 14 *C?
Q10(Q10 = 2, R1 = scale_MO2(mass_1 = 100, MO2_1 = 1270, mass_2 = 250), T1 = 10, T2 = 14)

# Visualize MO2 scaling by mass and temperature:
mass <- seq(10, 200, 10)
temp <- 10:25
base_mass <- 50
base_temp <- 20
base_MO2 <- 750
mo2 <- outer(mass, temp, function(mass, temp){
	scale_MO2(mass_1 = base_mass, mass_2 = mass, MO2_1 = Q10(Q10 = 2, R1 = base_MO2,
	 T1 = base_temp, T2 = temp))
})
persp(mass, temp, mo2, xlab = 'Mass (g)', ylab = 'Temperature (*C)', zlab = 'MO2 (umol / hr)',
 theta = 35, phi = 15, expand = 0.5, ticktype = 'detailed', nticks = 10)

Run the code above in your browser using DataLab