Title: | Tools for Microclimate and Biophysical Ecology |
---|---|
Description: | Tools for translating environmental change into organismal response. Microclimate models to vertically scale weather station data to organismal heights. The biophysical modeling tools include both general models for heat flows and specific models to predict body temperatures for a variety of ectothermic taxa. Additional functions model and temporally partition air and soil temperatures and solar radiation. Utility functions estimate the organismal and environmental parameters needed for biophysical ecology. 'TrenchR' focuses on relatively simple and modular functions so users can create transparent and flexible biophysical models. Many functions are derived from Gates (1980) <doi:10.1007/978-1-4612-6024-0> and Campbell and Norman (1988) <isbn:9780387949376>. |
Authors: | Lauren Buckley [aut, cre] , Bryan Briones Ortiz [aut], Isaac Caruso [aut], Aji John [aut] , Ofir Levy [aut] , Abigail Meyer [aut], Eric Riddell [aut] , Yutaro Sakairi [aut], Juniper Simonis [aut] , Brian Helmuth [ctb] |
Maintainer: | Lauren Buckley <[email protected]> |
License: | MIT + file LICENSE |
Version: | 1.1.1 |
Built: | 2024-11-12 05:58:19 UTC |
Source: | https://github.com/trenchproject/trenchr |
The function calculates actual vapor pressure from dewpoint temperature based on Stull (2000); Riddell et al. (2018).
actual_vapor_pressure(T_dewpoint)
actual_vapor_pressure(T_dewpoint)
T_dewpoint |
|
numeric
actual vapor pressure (kPa).
Eric Riddell
Riddell EA, Odom JP, Damm JD, Sears MW (2018).
“Plasticity reveals hidden resistance to extinction under climate change in the global hotspot of salamander diversity.”
Science Advances, 4(4).
doi:10.1126/sciadv.aar5471.
Stull RB (2000).
Meteorology for Scientists and Engineers.
Brooks Cole.
ISBN 978-0534372149.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
actual_vapor_pressure(T_dewpoint = 293)
actual_vapor_pressure(T_dewpoint = 293)
The function estimates air temperature (C) at a specified height (m). Estimates a single, unsegmented temperature profile using the MICRO routine from NicheMapR (Kearney and Porter 2017).
air_temp_profile(T_r, u_r, zr, z0, z, T_s)
air_temp_profile(T_r, u_r, zr, z0, z, T_s)
T_r |
|
u_r |
|
zr |
|
z0 |
|
z |
|
T_s |
|
numeric
air temperature (C).
Kearney MR, Porter WP (2017). “NicheMapR - an R package for biophysical modelling: the microclimate model.” Ecography, 40, 664-674. doi:10.1111/ecog.02360.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
air_temp_profile(T_r = 20, u_r = 0.1, zr = 0.1, z0 = 0.2, z = 0.15, T_s = 25)
air_temp_profile(T_r = 20, u_r = 0.1, zr = 0.1, z0 = 0.2, z = 0.15, T_s = 25)
The function calculates air temperature (C) at a specified height (m) within a boundary layer near the surface. The velocity profile is the neutral profile described by Sellers (1965). Function is included as equations (2) and (3) of Porter et al. (1973).
air_temp_profile_neutral(T_r, zr, z0, z, T_s)
air_temp_profile_neutral(T_r, zr, z0, z, T_s)
T_r |
|
zr |
|
z0 |
|
z |
|
T_s |
|
numeric
air temperature (C).
Porter WP, Mitchell JW, Bekman A, DeWitt CB (1973).
“Behavioral implications of mechanistic ecology: thermal and behavioral modeling of desert ectotherms and their microenvironments.”
Oecologia, 13, 1-54.
Sellers WD (1965).
Physical climatology.
University of Chicago Press, Chicago, IL, USA.
Other microclimate functions:
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
air_temp_profile_neutral(T_r = 20, zr = 0.1, z0 = 0.2, z = 0.15, T_s = 25)
air_temp_profile_neutral(T_r = 20, zr = 0.1, z0 = 0.2, z = 0.15, T_s = 25)
The function calculates air temperature (C) at a specified height (m). Estimates a three segment velocity and temperature profile based on user-specified, experimentally determined values for 3 roughness heights and reference heights. Multiple heights are appropriate in heterogenous areas with, for example, a meadow, bushes, and rocks. Implements the MICROSEGMT routine from NicheMapR as described in Kearney and Porter (2017).
air_temp_profile_segment(T_r, u_r, zr, z0, z, T_s)
air_temp_profile_segment(T_r, u_r, zr, z0, z, T_s)
T_r |
|
u_r |
|
zr |
|
z0 |
|
z |
|
T_s |
|
numeric
air temperature (C).
Kearney MR, Porter WP (2017). “NicheMapR - an R package for biophysical modelling: the microclimate model.” Ecography, 40, 664-674. doi:10.1111/ecog.02360.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
air_temp_profile_segment(T_r = c(25, 22, 20), u_r = c(0.01, 0.025, 0.05), zr = c(0.05, 0.25, 0.5), z0 = c(0.01, 0.15, 0.2), z = 0.3, T_s = 27)
air_temp_profile_segment(T_r = c(25, 22, 20), u_r = c(0.01, 0.025, 0.05), zr = c(0.05, 0.25, 0.5), z0 = c(0.01, 0.15, 0.2), z = 0.3, T_s = 27)
The function estimates air pressure (kPa) as a function of elevation (Engineering ToolBox 2003).
airpressure_from_elev(elev)
airpressure_from_elev(elev)
elev |
|
numeric
air pressure (kPa).
Engineering ToolBox (2003). Atmospheric Pressure vs. Elevation above Sea Level. https://www.engineeringtoolbox.com/air-altitude-pressure-d_462.html.
Other utility functions:
azimuth_angle()
,
day_of_year()
,
daylength()
,
dec_angle()
,
solar_noon()
,
temperature conversions
,
zenith_angle()
airpressure_from_elev(elev = 1500)
airpressure_from_elev(elev = 1500)
The function converts angles in radians to degrees or degrees to radians.
radians_to_degrees(rad) degrees_to_radians(deg)
radians_to_degrees(rad) degrees_to_radians(deg)
rad |
|
deg |
|
numeric
angle (degrees or radians).
radians_to_degrees(0.831) degrees_to_radians(47.608)
radians_to_degrees(0.831) degrees_to_radians(47.608)
The function calculates the azimuth angle, the angle (degrees) from which the sunlight is coming measured from true north or south measured in the horizontal plane. The azimuth angle is measured with respect to due south, increasing in the counter clockwise direction so 90 degrees is east (Campbell and Norman 1998).
azimuth_angle(doy, lat, lon, hour, offset = NA)
azimuth_angle(doy, lat, lon, hour, offset = NA)
doy |
|
lat |
|
lon |
|
hour |
|
offset |
|
numeric
azimuth angle (degrees).
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other utility functions:
airpressure_from_elev()
,
day_of_year()
,
daylength()
,
dec_angle()
,
solar_noon()
,
temperature conversions
,
zenith_angle()
azimuth_angle(doy = 112, lat = 47.61, lon = -122.33, hour = 12, offset = -8)
azimuth_angle(doy = 112, lat = 47.61, lon = -122.33, hour = 12, offset = -8)
The function estimates boundary layer resistance under free convection based on the function in Riddell et al. (2018).
boundary_layer_resistance(T_a, e_s, e_a, elev, D, u = NA)
boundary_layer_resistance(T_a, e_s, e_a, elev, D, u = NA)
T_a |
|
e_s |
|
e_a |
|
elev |
|
D |
|
u |
|
numeric
boundary layer resistance (s cm-1).
Eric Riddell
Riddell EA, Odom JP, Damm JD, Sears MW (2018). “Plasticity reveals hidden resistance to extinction under climate change in the global hotspot of salamander diversity.” Science Advances, 4(4). doi:10.1126/sciadv.aar5471.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
boundary_layer_resistance(T_a = 293, e_s = 2.5, e_a = 2.0, elev = 500, D = 0.007, u = 2)
boundary_layer_resistance(T_a = 293, e_s = 2.5, e_a = 2.0, elev = 500, D = 0.007, u = 2)
Basic functions for numerical constants for conversions.
specific_heat_h2o(units = "J_kg-1_K-1") latent_heat_vaporization_h2o(units = "J_kg-1") stefan_boltzmann_constant(units = "W_m-2_K-4") von_karman_constant(units = "")
specific_heat_h2o(units = "J_kg-1_K-1") latent_heat_vaporization_h2o(units = "J_kg-1") stefan_boltzmann_constant(units = "W_m-2_K-4") von_karman_constant(units = "")
units |
|
numeric
values in units
.
specific_heat_h2o() latent_heat_vaporization_h2o() stefan_boltzmann_constant()
specific_heat_h2o() latent_heat_vaporization_h2o() stefan_boltzmann_constant()
The function converts a date (day, month, year) to Calendar Day (day of year).
day_of_year(day, format = "%Y-%m-%d")
day_of_year(day, format = "%Y-%m-%d")
day |
|
format |
|
numeric
Julian day number, 1-366 (e.g. 1 for January 1st).
Other utility functions:
airpressure_from_elev()
,
azimuth_angle()
,
daylength()
,
dec_angle()
,
solar_noon()
,
temperature conversions
,
zenith_angle()
day_of_year(day = "2017-04-22", format = "%Y-%m-%d") day_of_year(day = "2017-04-22") day_of_year(day = "04/22/2017", format = "%m/%d/%Y")
day_of_year(day = "2017-04-22", format = "%Y-%m-%d") day_of_year(day = "2017-04-22") day_of_year(day = "04/22/2017", format = "%m/%d/%Y")
The function calculates daylength in hours as a function of latitude and day of year. Uses the CMB model (Campbell and Norman 1998).
daylength(lat, doy)
daylength(lat, doy)
lat |
|
doy |
|
numeric
day length (hours).
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other utility functions:
airpressure_from_elev()
,
azimuth_angle()
,
day_of_year()
,
dec_angle()
,
solar_noon()
,
temperature conversions
,
zenith_angle()
daylength(lat = 47.61, doy = 112)
daylength(lat = 47.61, doy = 112)
The function calculates solar declination, which is the angular distance of the sun north or south of the earth’s equator, based on the day of year (Campbell and Norman 1998).
dec_angle(doy)
dec_angle(doy)
doy |
|
numeric
declination angle (radians).
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other utility functions:
airpressure_from_elev()
,
azimuth_angle()
,
day_of_year()
,
daylength()
,
solar_noon()
,
temperature conversions
,
zenith_angle()
dec_angle(doy = 112) dec_angle(doy = 360)
dec_angle(doy = 112) dec_angle(doy = 360)
The function calculates degree days using the following approximations: single or double sine wave, single or double triangulation (University of California Integrated Pest Management Program 2016). Double approximation methods assume symmetry, such that a day's thermal minimum is equal to that of the previous day. Double sine wave approximation of degree days from Allen (1976).
degree_days(T_min, T_max, LDT = NA, UDT = NA, method = "single.sine")
degree_days(T_min, T_max, LDT = NA, UDT = NA, method = "single.sine")
T_min |
|
T_max |
|
LDT |
|
UDT |
|
method |
|
numeric
degree days (C).
Allen JC (1976).
“A Modified Sine Wave Method for Calculating Degree Days.”
Environmental Entomology, 5(3), 388-396.
doi:10.1093/ee/5.3.388.
University of California Integrated Pest Management Program (2016).
Degree Days: Methods.
https://ipm.ucanr.edu/WEATHER/ddfigindex.html.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
degree_days(T_min = 7, T_max = 14, LDT = 12, UDT = 33, method = "single.sine") degree_days(T_min = 7, T_max = 14, LDT = 12, UDT = 33, method = "single.triangulation")
degree_days(T_min = 7, T_max = 14, LDT = 12, UDT = 33, method = "single.sine") degree_days(T_min = 7, T_max = 14, LDT = 12, UDT = 33, method = "single.triangulation")
The function estimates direct solar radiation (W/m2) based on latitude, day of year, elevation, and time. The function uses two methods (McCullough and Porter 1971; Campbell and Norman 1998) compiled in Tracy et al. (1983).
direct_solar_radiation(lat, doy, elev, t, t0, method = "Campbell 1977")
direct_solar_radiation(lat, doy, elev, t, t0, method = "Campbell 1977")
lat |
|
doy |
|
elev |
|
t |
|
t0 |
|
method |
|
numeric
direct solar radiation (W/m2).
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
McCullough EC, Porter WP (1971).
“Computing Clear Day Solar Radiation Spectra for the Terrestrial Ecological Environment.”
Ecology, 52(6), 1008-1015.
doi:10.2307/1933806.
Tracy CR, Hammond KA, Lechleitner RA, II WJS, Thompson DB, Whicker AD, Williamson SC (1983).
“Estimating clear-day solar radiation: an evaluation of three models.”
Journal of Thermal Biology, 8(3), 247-251.
doi:10.1016/0306-4565(83)90003-7.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
direct_solar_radiation(lat = 47.61, doy = 112, elev = 1500, t = 9, t0 = 12, method = "Campbell 1977")
direct_solar_radiation(lat = 47.61, doy = 112, elev = 1500, t = 9, t0 = 12, method = "Campbell 1977")
The function estimates hourly solar radiation (W m-2 hr-1) as a function of daily global solar radiation (W m-2 d-1). Based on Tham et al. (2010) and Tham et al. (2011).
diurnal_radiation_variation(doy, S, hour, lon, lat)
diurnal_radiation_variation(doy, S, hour, lon, lat)
doy |
|
S |
|
hour |
|
lon |
|
lat |
|
numeric
hourly solar radiation (W m-2).
Tham Y, Muneer T, Davison B (2010).
“Estimation of hourly averaged solar irradiation: evaluation of models.”
Building Services Engingeering Research Technology, 31(1).
doi:10.1177/0143624409350547.
Tham Y, Muneer T, Davison B (2011).
“Prediction of hourly solar radiation on horizontal and inclined surfaces for Muscat/Oman.”
The Journal of Engineering Research, 8(2), 19-31.
doi:10.24200/tjer.vol8iss2pp19-31.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
diurnal_radiation_variation(doy = 112, S = 8000, hour = 12, lon = -122.33, lat = 47.61)
diurnal_radiation_variation(doy = 112, S = 8000, hour = 12, lon = -122.33, lat = 47.61)
The function estimates temperature for a specified hour using the sine interpolation in Campbell and Norman (1998).
diurnal_temp_variation_sine(T_max, T_min, t)
diurnal_temp_variation_sine(T_max, T_min, t)
T_max , T_min
|
|
t |
|
numeric
temperature (C) at a specified hour.
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
diurnal_temp_variation_sine(T_max = 30, T_min = 10, t = 11)
diurnal_temp_variation_sine(T_max = 30, T_min = 10, t = 11)
The function estimates temperature across hours using a diurnal temperature variation function incorporating sine and exponential components (Parton and Logan 1981).
diurnal_temp_variation_sineexp( T_max, T_min, t, t_r, t_s, alpha = 2.59, beta = 1.55, gamma = 2.2 )
diurnal_temp_variation_sineexp( T_max, T_min, t, t_r, t_s, alpha = 2.59, beta = 1.55, gamma = 2.2 )
T_max , T_min
|
|
t |
|
t_r , t_s
|
|
alpha |
|
beta |
|
gamma |
|
Default alpha
, beta
, and gamma
values are the average of 5 North Carolina sites (Wann et al. 1985).
Other alpha
, beta
, and gamma
parameterizations include values for Denver, Colorado from Parton and Logan (1981):
150 cm air temperature: alpha
= 1.86, beta
= 2.20, gamma
= -0.17
10 cm air temperature: alpha
= 1.52, beta
= 2.00, gamma
= -0.18
soil surface temperature: alpha
= 0.50, beta
= 1.81, gamma
= 0.49
10cm soil temperature: alpha
= 0.45, beta
= 2.28, gamma
= 1.83
numeric
temperature (C) at a specified hour.
Parton WJ, Logan JA (1981).
“A model for diurnal variation in soil and air temperature.”
Agricultural Meteorology, 23, 205-216.
doi:10.1016/0002-1571(81)90105-9, https://www.sciencedirect.com/science/article/abs/pii/0002157181901059.
Wann M, Yen D, Gold HJ (1985).
“Evaluation and calibration of three models for daily cycle of air temperature.”
Agricultural and Forest Meteorology, 34, 121-128.
https://doi.org/10.1016/0168-1923(85)90013-9.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
diurnal_temp_variation_sineexp(T_max = 30, T_min = 10, t = 11, t_r = 6, t_s = 18, alpha = 2.59, beta = 1.55, gamma = 2.2)
diurnal_temp_variation_sineexp(T_max = 30, T_min = 10, t = 11, t_r = 6, t_s = 18, alpha = 2.59, beta = 1.55, gamma = 2.2)
The function estimates temperature for a specified hour using sine and square root functions (Cesaraccio et al. 2001).
diurnal_temp_variation_sinesqrt(t, t_r, t_s, T_max, T_min, T_minp)
diurnal_temp_variation_sinesqrt(t, t_r, t_s, T_max, T_min, T_minp)
t |
|
t_r , t_s
|
|
T_max , T_min
|
|
T_minp |
|
numeric
temperature (C) at a specified hour.
Cesaraccio C, Spano D, Duce P, Snyder RL (2001). “An improved model for determining degree-day values from daily temperature data.” International Journal of Biometeorology, 45, 161-169. doi:10.1007/s004840100104.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
diurnal_temp_variation_sinesqrt(t = 8, t_r = 6, t_s = 18, T_max = 30, T_min = 10, T_minp = 12)
diurnal_temp_variation_sinesqrt(t = 8, t_r = 6, t_s = 18, T_max = 30, T_min = 10, T_minp = 12)
The function calculates several properties of dry air and related characteristics shown as output variables below. The program is based on equations from List (1971) and code implementation from NicheMapR (Kearney and Porter 2017; Kearney and Porter 2020).
The user must supply values for the input variables db
, bp
, and alt
. If alt
is known (-1000 < alt < 20000) but not BP, then set bp = 0
.
DRYAIR(db, bp = 0, alt = 0)
DRYAIR(db, bp = 0, alt = 0)
db |
|
bp |
|
alt |
|
Named list
with elements
patmos
: numeric
standard atmospheric pressure (Pa)
density
: numeric
density (kg m-3)
visdyn
: numeric
dynamic viscosity (kg m-1 s-1)
viskin
: numeric
kinematic viscosity (m2 s-1)
difvpr
: numeric
diffusivity of water vapor in air (m2 s-1)
thcond
: numeric
thermal conductivity (W K-1 m-1)
htovpr
: numeric
latent heat of vaporization of water (J kg-1)
tcoeff
: numeric
temperature coefficient of volume expansion (K-1)
ggroup
: numeric
group of variables in Grashof number (m-3 K-1)
bbemit
: numeric
black body emittance (W m-2)
emtmax
: numeric
wave length of maximum emittance (m)
Kearney MR, Porter WP (2017).
“NicheMapR - an R package for biophysical modelling: the microclimate model.”
Ecography, 40, 664-674.
doi:10.1111/ecog.02360.
Kearney MR, Porter WP (2020).
“NicheMapR - an R package for biophysical modelling: the ectotherm and Dynamic Energy Budget models.”
Ecography, 43(1), 85-96.
doi:10.1111/ecog.04680.
List RJ (1971).
“Smithsonian Meteorological Tables.”
Smithsonian Miscellaneous Collections, 114(1), 1-527.
https://repository.si.edu/handle/10088/23746.
DRYAIR(db = 30, bp = 100*1000, alt = 0)
DRYAIR(db = 30, bp = 100*1000, alt = 0)
The function estimate external resistance to water vapor transfer using the Lewis rule relating heat and mass transport (Spotila et al. 1992)
external_resistance_to_water_vapor_transfer(H, ecp = 12000)
external_resistance_to_water_vapor_transfer(H, ecp = 12000)
H |
|
ecp |
|
numeric
external resistance to water vapor transfer (s m-1).
Spotila JR, Feder ME, Burggren WW (1992). “Biophysics of Heat and Mass Transfer.” Environmental Physiology of the Amphibians. https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
external_resistance_to_water_vapor_transfer(H = 20)
external_resistance_to_water_vapor_transfer(H = 20)
The function compares the Grashof and Reynolds numbers to determine whether convection is free or forced (Gates 1980).
free_or_forced_convection(Gr, Re)
free_or_forced_convection(Gr, Re)
Gr |
|
Re |
|
character
"free"
, "forced"
, or "intermediate"
.
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
free_or_forced_convection(Gr = 100, Re = 5)
free_or_forced_convection(Gr = 100, Re = 5)
The function estimates the Grashof Number, which describes the ability of a parcel of fluid warmer or colder than the surrounding fluid to rise against or fall with the attractive force of gravity. The Grashof Number is estimated as the ratio of a buoyant force times an inertial force to the square of a viscous force (Campbell and Norman 1998).
Grashof_number(T_a, T_g, D, nu)
Grashof_number(T_a, T_g, D, nu)
T_a |
|
T_g |
|
D |
|
nu |
|
numeric
Grashof number.
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other biophysical models:
Grashof_number_Gates()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Grashof_number(T_a = 30, T_g = 35, D = 0.001, nu = 1.2)
Grashof_number(T_a = 30, T_g = 35, D = 0.001, nu = 1.2)
The function estimates the Grashof Number, which describes the ability of a parcel of fluid warmer or colder than the surrounding fluid to rise against or fall with the attractive force of gravity (Gates 1980). The Grashof Number is estimated as the ratio of a buoyant force times an inertial force to the square of a viscous force.
Grashof_number_Gates(T_a, T_g, beta, D, nu)
Grashof_number_Gates(T_a, T_g, beta, D, nu)
T_a |
|
T_g |
|
beta |
|
D |
|
nu |
|
numeric
Grashof number.
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Grashof_number_Gates(T_a = 30, T_g = 35, beta = 0.00367, D = 0.001, nu = 1.2)
Grashof_number_Gates(T_a = 30, T_g = 35, beta = 0.00367, D = 0.001, nu = 1.2)
The function estimates the heat transfer coefficient for various taxa based on empirical measurements (Mitchell 1976).
heat_transfer_coefficient(u, D, K, nu, taxon = "cylinder")
heat_transfer_coefficient(u, D, K, nu, taxon = "cylinder")
u |
|
D |
|
K |
|
nu |
|
taxon |
|
numeric
heat transfer coefficient, H_L
(W K-1 m-2).
Mitchell JW (1976). “Heat transfer from spheres and other animal forms.” Biophysical Journal, 16(6), 561-569. ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
heat_transfer_coefficient(u = 0.5, D = 0.05, K = 25.7 * 10^(-3), nu = 15.3 * 10^(-6), taxon = "cylinder")
heat_transfer_coefficient(u = 0.5, D = 0.05, K = 25.7 * 10^(-3), nu = 15.3 * 10^(-6), taxon = "cylinder")
The function estimates the heat transfer coefficient for various taxa. Approximates forced convective heat transfer for animal shapes using the convective relationship for a sphere (Mitchell 1976).
heat_transfer_coefficient_approximation(u, D, K, nu, taxon = "sphere")
heat_transfer_coefficient_approximation(u, D, K, nu, taxon = "sphere")
u |
|
D |
|
K |
|
nu |
|
taxon |
|
numeric
heat transfer coefficient, H_L
(W m-2 K-1).
Mitchell JW (1976). “Heat transfer from spheres and other animal forms.” Biophysical Journal, 16(6), 561-569. ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
heat_transfer_coefficient_approximation(u = 3, D = 0.05, K = 25.7 * 10^(-3), nu = 15.3 * 10^(-6), taxon = "sphere")
heat_transfer_coefficient_approximation(u = 3, D = 0.05, K = 25.7 * 10^(-3), nu = 15.3 * 10^(-6), taxon = "sphere")
The function estimates the heat transfer coefficient (Mitchell 1976) using either the relationship in Spotila et al. (1992) or that in Gates (1980).
heat_transfer_coefficient_simple(u, D, type)
heat_transfer_coefficient_simple(u, D, type)
u |
|
D |
|
type |
|
numeric
heat transfer coefficient, H_L (W m-2 K-1).
Gates DM (1980).
Biophysical Ecology.
Springer-Verlag, New York, NY, USA.
Mitchell JW (1976).
“Heat transfer from spheres and other animal forms.”
Biophysical Journal, 16(6), 561-569.
ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Spotila JR, Feder ME, Burggren WW (1992).
“Biophysics of Heat and Mass Transfer.”
Environmental Physiology of the Amphibians.
https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
heat_transfer_coefficient_simple(u = 0.5, D = 0.05, type = "Gates")
heat_transfer_coefficient_simple(u = 0.5, D = 0.05, type = "Gates")
The function estimates mass (g) from length (m) for a variety of taxa.
mass_from_length(l, taxon)
mass_from_length(l, taxon)
l |
|
taxon |
|
All models follow (m = a lb) with mass in grams and length in meters.
Lizards: Meiri (2010):
Salamanders: Pough (1980):
Frogs: Pough (1980):
Snakes: Pough (1980):
Turtles: Pough (1980):
Insects: Sample et al. (1993):
numeric
mass (g).
Meiri S (2010).
“Length - weight allometries in lizards.”
Journal of Zoology, 281(3), 218-226.
doi:10.1111/j.1469-7998.2010.00696.x.
Pough FH (1980).
“The Advantages of Ectothermy for Tetrapods.”
The American Naturalist, 115(1), 92–112.
ISSN 00030147, 15375323.
Sample BE, Cooper RJ, Greer RD, Whitmore RC (1993).
“Estimation of Insect Biomass by Length and Width.”
The American Midland Naturalist, 129(2), 234–240.
ISSN 00030031, 19384238, doi:10.2307/2426503.
Other allometric functions:
proportion_silhouette_area_shapes()
,
proportion_silhouette_area()
,
surface_area_from_length()
,
surface_area_from_mass()
,
surface_area_from_volume()
,
volume_from_length()
mass_from_length(l = 0.04, taxon = "insect") mass_from_length(l = 0.04, taxon = "lizard") mass_from_length(l = 0.04, taxon = "salamander") mass_from_length(l = 0.04, taxon = "frog") mass_from_length(l = 0.04, taxon = "snake") mass_from_length(l = 0.04, taxon = "turtle")
mass_from_length(l = 0.04, taxon = "insect") mass_from_length(l = 0.04, taxon = "lizard") mass_from_length(l = 0.04, taxon = "salamander") mass_from_length(l = 0.04, taxon = "frog") mass_from_length(l = 0.04, taxon = "snake") mass_from_length(l = 0.04, taxon = "turtle")
The function estimates average monthly solar radiation (W m-2 d-1) using basic topographic and climatic information as input. Cloudiness is stochastically modeled, so output will vary between functional calls. Based on Nikolov and Zeller (1992).
monthly_solar_radiation(lat, lon, doy, elev, T_a, hp, P)
monthly_solar_radiation(lat, lon, doy, elev, T_a, hp, P)
lat |
|
lon |
|
doy |
|
elev |
|
T_a |
|
hp |
|
P |
|
numeric
average monthly solar radiation (W m-2).
Nikolov NT, Zeller K (1992). “A solar radiation algorithm for ecosystem dynamic models.” Ecological Modelling, 61(3-4), 149-168. doi:10.24200/tjer.vol8iss2pp19-31.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
monthly_solar_radiation(lat = 47.61, lon = -122.33, doy = 112, elev = 1500, T_a = 15, hp = 50, P = 50)
monthly_solar_radiation(lat = 47.61, lon = -122.33, doy = 112, elev = 1500, T_a = 15, hp = 50, P = 50)
The function estimates the Nusselt number from the Grashof Number (Gates 1980).
Nusselt_from_Grashof(Gr)
Nusselt_from_Grashof(Gr)
Gr |
|
numeric
Nusselt number (dimensionless).
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Nusselt_from_Grashof(Gr = 5)
Nusselt_from_Grashof(Gr = 5)
The function estimates the Nusselt number from the Reynolds number for various taxa using Mitchell (1976) (Table 1: Convective Heat Transfer Relations for Animal Shapes).
Nusselt_from_Reynolds(Re, taxon = "cylinder")
Nusselt_from_Reynolds(Re, taxon = "cylinder")
Re |
|
taxon |
|
numeric
Nusselt number (dimensionless).
Mitchell JW (1976). “Heat transfer from spheres and other animal forms.” Biophysical Journal, 16(6), 561-569. ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Nusselt_from_Reynolds(Re = 5, taxon = "cylinder")
Nusselt_from_Reynolds(Re = 5, taxon = "cylinder")
The function estimates the Nusselt Number, which describes dimensionless conductance (Gates 1980).
Nusselt_number(H_L, D, K)
Nusselt_number(H_L, D, K)
H_L |
|
D |
|
K |
|
numeric
Nusselt number.
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Nusselt_number(H_L = 20, D = 0.01, K = 0.5)
Nusselt_number(H_L = 20, D = 0.01, K = 0.5)
The function partitions solar radiation (W m-2) into direct and diffuse components by estimating the diffuse fraction (k_d). The function uses the models presented in Wong and Chow (2001).
partition_solar_radiation(method, kt, lat = NA, sol.elev = NA)
partition_solar_radiation(method, kt, lat = NA, sol.elev = NA)
method |
|
kt |
|
lat |
|
sol.elev |
|
numeric
diffuse fraction.
Wong LT, Chow WK (2001). “Solar radiation model.” Applied Energy, 69(3), 191-224. ISSN 0306-2619, doi:10.1016/S0306-2619(01)00012-5, https://www.sciencedirect.com/science/article/pii/S0306261901000125.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
partition_solar_radiation(method = "Erbs", kt = 0.5, lat = 40, sol.elev = 60)
partition_solar_radiation(method = "Erbs", kt = 0.5, lat = 40, sol.elev = 60)
The function estimates the Prandtl Number, which describes the ratio of kinematic viscosity to thermal diffusivity (Gates 1980).
Prandtl_number(c_p, mu, K)
Prandtl_number(c_p, mu, K)
c_p |
|
mu |
|
K |
|
numeric
Prandtl number.
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Prandtl_number(c_p = 29.3, mu = 0.00001, K = 0.5)
Prandtl_number(c_p = 29.3, mu = 0.00001, K = 0.5)
The function estimates the ratio of diffuse to direct solar radiation based on the approximation of the SOLRAD model (McCullough and Porter 1971) described in Tracy et al. (1983).
proportion_diffuse_solar_radiation(psi, p_a, rho)
proportion_diffuse_solar_radiation(psi, p_a, rho)
psi |
|
p_a |
|
rho |
|
numeric
diffuse fraction.
McCullough EC, Porter WP (1971).
“Computing Clear Day Solar Radiation Spectra for the Terrestrial Ecological Environment.”
Ecology, 52(6), 1008-1015.
doi:10.2307/1933806.
Tracy CR, Hammond KA, Lechleitner RA, II WJS, Thompson DB, Whicker AD, Williamson SC (1983).
“Estimating clear-day solar radiation: an evaluation of three models.”
Journal of Thermal Biology, 8(3), 247-251.
doi:10.1016/0306-4565(83)90003-7.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
proportion_diffuse_solar_radiation(psi = 60, p_a = 86.1, rho = 0.25)
proportion_diffuse_solar_radiation(psi = 60, p_a = 86.1, rho = 0.25)
The function estimates the projected (silhouette) area as a portion of the surface area of the organism as a function of zenith angle. The function is useful for estimating absorbed solar radiation.
proportion_silhouette_area(psi, taxon, raz = 0, posture = "prostrate")
proportion_silhouette_area(psi, taxon, raz = 0, posture = "prostrate")
psi |
|
taxon |
|
raz |
|
posture |
|
Relationships come from
Lizards: Muth (1977)
Frogs: Tracy (1976)
Grasshoppers: Anderson et al. (1979)
numeric
silhouette area as a proportion.
Anderson RV, Tracy CR, Abramsky Z (1979).
“Habitat Selection in Two Species of Short-Horned Grasshoppers. The Role of Thermal and Hydric Stresses.”
Oecologia, 38(3), 359–374.
doi:10.1007/BF00345194.
Muth A (1977).
“Thermoregulatory Postures and Orientation to the Sun: A Mechanistic Evaluation for the Zebra-Tailed Lizard, Callisaurus draconoides.”
Copeia, 4, 710 - 720.
Tracy CR (1976).
“A Model of the Dynamic Exchanges of Water and Energy between a Terrestrial Amphibian and Its Environment.”
Ecological Monographs, 46(3), 293-326.
doi:10.2307/1942256.
Other allometric functions:
mass_from_length()
,
proportion_silhouette_area_shapes()
,
surface_area_from_length()
,
surface_area_from_mass()
,
surface_area_from_volume()
,
volume_from_length()
proportion_silhouette_area(psi = 60, taxon = "frog") proportion_silhouette_area(psi = 60, taxon = "grasshopper") proportion_silhouette_area(psi = 60, taxon = "lizard", posture = "prostrate", raz = 90) proportion_silhouette_area(psi = 60, taxon = "lizard", posture = "elevated", raz = 180)
proportion_silhouette_area(psi = 60, taxon = "frog") proportion_silhouette_area(psi = 60, taxon = "grasshopper") proportion_silhouette_area(psi = 60, taxon = "lizard", posture = "prostrate", raz = 90) proportion_silhouette_area(psi = 60, taxon = "lizard", posture = "elevated", raz = 180)
The function estimates the projected (silhouette) area as a portion of the surface area of the organism. The function estimates the projected area as a function of the dimensions and the angle between the solar beam and the longitudinal axis of the solid, using Figure 11.6 in Campbell and Norman (1998). The function is useful for estimating absorbed solar radiation.
proportion_silhouette_area_shapes(shape, theta, h, d)
proportion_silhouette_area_shapes(shape, theta, h, d)
shape |
|
theta |
|
h |
|
d |
|
numeric
silhouette area as a proportion.
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other allometric functions:
mass_from_length()
,
proportion_silhouette_area()
,
surface_area_from_length()
,
surface_area_from_mass()
,
surface_area_from_volume()
,
volume_from_length()
proportion_silhouette_area_shapes(shape = "spheroid", theta = 60, h = 0.01, d = 0.001) proportion_silhouette_area_shapes(shape = "cylinder flat ends", theta = 60, h = 0.01, d = 0.001) proportion_silhouette_area_shapes(shape = "cylinder hemisphere ends", theta = 60, h = 0.01, d = 0.001)
proportion_silhouette_area_shapes(shape = "spheroid", theta = 60, h = 0.01, d = 0.001) proportion_silhouette_area_shapes(shape = "cylinder flat ends", theta = 60, h = 0.01, d = 0.001) proportion_silhouette_area_shapes(shape = "cylinder hemisphere ends", theta = 60, h = 0.01, d = 0.001)
The function calculates conductance (W) of an ectothermic animal to its substrate. Method assumes the major resistance to conduction is within surface layers of the animal and that the interior of the animal is equal in temperature to its surface (thermally well mixed) (Spotila et al. 1992).
Qconduction_animal(T_g, T_b, d, K = 0.5, A, proportion)
Qconduction_animal(T_g, T_b, d, K = 0.5, A, proportion)
T_g |
|
T_b |
|
d |
|
K |
|
A |
|
proportion |
|
numeric
conductance (W).
Galushko D, Ermakov N, Karpovski M, Palevski A, Ishay JS, Bergman DJ (2005).
“Electrical, thermoelectric and thermophysical properties of hornet cuticle.”
Semiconductor Science and Technology, 20(3), 286–289.
doi:10.1088/0268-1242/20/3/005.
Spotila JR, Feder ME, Burggren WW (1992).
“Biophysics of Heat and Mass Transfer.”
Environmental Physiology of the Amphibians.
https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qconduction_animal(T_g = 293, T_b = 303, d = 10^-6, K = 0.5, A = 10^-3, proportion = 0.2)
Qconduction_animal(T_g = 293, T_b = 303, d = 10^-6, K = 0.5, A = 10^-3, proportion = 0.2)
The function calculates conductance (W) of an ectothermic animal to its substrate. The method assumes the major resistance to conduction is the substrate and that the interior of the animal is equal in temperature to its surface (thermally well mixed) (Spotila et al. 1992).
Qconduction_substrate(T_g, T_b, D, K_g = 0.5, A, proportion)
Qconduction_substrate(T_g, T_b, D, K_g = 0.5, A, proportion)
T_g |
|
T_b |
|
D |
|
K_g |
|
A |
|
proportion |
|
numeric
conductance (W).
Spotila JR, Feder ME, Burggren WW (1992). “Biophysics of Heat and Mass Transfer.” Environmental Physiology of the Amphibians. https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qconduction_substrate(T_g = 293, T_b = 303, D = 0.01, K_g = 0.3, A = 10^-2, proportion = 0.2)
Qconduction_substrate(T_g = 293, T_b = 303, D = 0.01, K_g = 0.3, A = 10^-2, proportion = 0.2)
The function calculates convection from an organism to its environment as in Mitchell (1976). It includes an enhancement factor associated with outdoor environments.
Qconvection(T_a, T_b, A, proportion, H_L = 10.45, ef = 1.23)
Qconvection(T_a, T_b, A, proportion, H_L = 10.45, ef = 1.23)
T_a |
|
T_b |
|
A |
|
proportion |
|
H_L |
|
ef |
|
numeric
convection (W).
Mitchell JW (1976). “Heat transfer from spheres and other animal forms.” Biophysical Journal, 16(6), 561-569. ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qconvection(T_a = 293, T_b = 303, H_L = 10.45, A = 0.0025, proportion = 0.85)
Qconvection(T_a = 293, T_b = 303, H_L = 10.45, A = 0.0025, proportion = 0.85)
The function estimates the net thermal radiation (W) emitted by the surface of an animal (Gates 1980; Spotila et al. 1992).
Qemitted_thermal_radiation( epsilon = 0.96, A, psa_dir, psa_ref, T_b, T_g, T_sky = NA, T_a, enclosed = FALSE )
Qemitted_thermal_radiation( epsilon = 0.96, A, psa_dir, psa_ref, T_b, T_g, T_sky = NA, T_a, enclosed = FALSE )
epsilon |
|
A |
|
psa_dir |
|
psa_ref |
|
T_b |
|
T_g |
|
T_sky |
|
T_a |
|
enclosed |
|
numeric
emitted thermal radiation, Qemit
(W).
Gates DM (1980).
Biophysical Ecology.
Springer-Verlag, New York, NY, USA.
Spotila JR, Feder ME, Burggren WW (1992).
“Biophysics of Heat and Mass Transfer.”
Environmental Physiology of the Amphibians.
https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qemitted_thermal_radiation(epsilon = 0.96, A = 1, psa_dir = 0.4, psa_ref = 0.5, T_b = 303, T_g = 293, T_a = 298, enclosed = FALSE)
Qemitted_thermal_radiation(epsilon = 0.96, A = 1, psa_dir = 0.4, psa_ref = 0.5, T_b = 303, T_g = 293, T_a = 298, enclosed = FALSE)
The function estimates heat loss associated with evaporative water loss for an amphibian (Spotila et al. 1992) or lizard. The lizard estimation is based on empirical measurements in Porter et al. (1973)).
Qevaporation(A, T_b, taxon, e_s = NA, e_a = NA, hp = NA, H = NA, r_i = NA)
Qevaporation(A, T_b, taxon, e_s = NA, e_a = NA, hp = NA, H = NA, r_i = NA)
A |
|
T_b |
|
taxon |
|
e_s |
|
e_a |
|
hp |
|
H |
|
r_i |
|
numeric
evaporative heat loss (W).
Porter WP, Mitchell JW, Bekman A, DeWitt CB (1973).
“Behavioral implications of mechanistic ecology: thermal and behavioral modeling of desert ectotherms and their microenvironments.”
Oecologia, 13, 1-54.
Spotila JR, Feder ME, Burggren WW (1992).
“Biophysics of Heat and Mass Transfer.”
Environmental Physiology of the Amphibians.
https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qevaporation(A = 0.1, T_b = 293, taxon = "amphibian", e_s = 0.003, e_a = 0.002, hp = 0.5, H = 20, r_i = 50) Qevaporation(A = 0.1, T_b = 293, taxon = "lizard")
Qevaporation(A = 0.1, T_b = 293, taxon = "amphibian", e_s = 0.003, e_a = 0.002, hp = 0.5, H = 20, r_i = 50) Qevaporation(A = 0.1, T_b = 293, taxon = "lizard")
The function estimates the field metabolic rate (W) of various taxa as a function of mass (g). The function does not account for temperature and is based on empirical relationships from Nagy (2005).
Qmetabolism_from_mass(m, taxon = "reptile")
Qmetabolism_from_mass(m, taxon = "reptile")
m |
|
taxon |
|
numeric
metabolism (W).
Nagy KA (2005). “Field metabolic rate and body size.” Journal of Experimental Biology, 208, 1621-1625. doi:10.1242/jeb.01553, https://journals.biologists.com/jeb/article/208/9/1621/9364/Field-metabolic-rate-and-body-size.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qmetabolism_from_mass(m = 12, taxon = "reptile")
Qmetabolism_from_mass(m = 12, taxon = "reptile")
The function estimates basal (or resting) metabolic rate (W) as a function of mass (g) and temperature (C). The function is based on empirical data and the metabolic theory of ecology (assumes a 3/4 scaling exponent) (Gillooly et al. 2001).
Qmetabolism_from_mass_temp(m, T_b, taxon)
Qmetabolism_from_mass_temp(m, T_b, taxon)
m |
|
T_b |
|
taxon |
|
numeric
basal metabolism (W).
Gillooly JF, Brown JH, West GB, Savage VM, Charnov EL (2001). “Effects of size and temperature on metabolic rate.” Science, 293, 2248-2251. doi:10.1126/science.1061967.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qmetabolism_from_mass_temp(m = 100, T_b = 30, taxon = "reptile")
Qmetabolism_from_mass_temp(m = 100, T_b = 30, taxon = "reptile")
The function estimates the net energy exchange (W) between an animal and the environment. The function follows Gates (1980) and others.
Qnet_Gates(Qabs, Qemit, Qconv, Qcond, Qmet, Qevap)
Qnet_Gates(Qabs, Qemit, Qconv, Qcond, Qmet, Qevap)
Qabs |
|
Qemit |
|
Qconv |
|
Qcond |
|
Qmet |
|
Qevap |
|
numeric
net energy exchange (W).
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qnet_Gates(Qabs = 500, Qemit = 10, Qconv = 100, Qcond = 100, Qmet = 10, Qevap = 5)
Qnet_Gates(Qabs = 500, Qemit = 10, Qconv = 100, Qcond = 100, Qmet = 10, Qevap = 5)
The function estimates solar and thermal radiation (W) absorbed by the surface of an animal following (Gates 1980) and (Spotila et al. 1992).
Qradiation_absorbed( a = 0.9, A, psa_dir, psa_dif, psa_ref, S_dir, S_dif, S_ref = NA, rho = NA )
Qradiation_absorbed( a = 0.9, A, psa_dir, psa_dif, psa_ref, S_dir, S_dif, S_ref = NA, rho = NA )
a |
|
A |
|
psa_dir |
|
psa_dif |
|
psa_ref |
|
S_dir |
|
S_dif |
|
S_ref |
|
rho |
|
numeric
solar radiation absorbed (W)
Gates DM (1980).
Biophysical Ecology.
Springer-Verlag, New York, NY, USA.
Spotila JR, Feder ME, Burggren WW (1992).
“Biophysics of Heat and Mass Transfer.”
Environmental Physiology of the Amphibians.
https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qradiation_absorbed(a = 0.9, A = 1, psa_dir = 0.5, psa_dif = 0.5, psa_ref = 0.5, S_dir = 1000, S_dif = 200, rho = 0.5)
Qradiation_absorbed(a = 0.9, A = 1, psa_dir = 0.5, psa_dif = 0.5, psa_ref = 0.5, S_dir = 1000, S_dif = 200, rho = 0.5)
The function estimates longwave (thermal) radiation (W) absorbed from the sky and the ground (Campbell and Norman 1998; Riddell et al. 2018).
Qthermal_radiation_absorbed( T_a, T_g, epsilon_ground = 0.97, a_longwave = 0.965 )
Qthermal_radiation_absorbed( T_a, T_g, epsilon_ground = 0.97, a_longwave = 0.965 )
T_a |
|
T_g |
|
epsilon_ground |
|
a_longwave |
|
numeric
thermal radiation absorbed (W).
Eric Riddell
Bartlett PN, Gates DM (1967).
“The energy budget of a lizard on a tree trunk.”
Ecology, 48, 316-322.
Buckley LB (2008).
“Linking traits to energetics and population dynamics to predict lizard ranges in changing environments.”
American Naturalist, 171(1), E1 - E19.
doi:10.1086/523949, https://pubmed.ncbi.nlm.nih.gov/18171140/.
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Riddell EA, Odom JP, Damm JD, Sears MW (2018).
“Plasticity reveals hidden resistance to extinction under climate change in the global hotspot of salamander diversity.”
Science Advances, 4(4).
doi:10.1126/sciadv.aar5471.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Qthermal_radiation_absorbed(T_a = 20, T_g = 25, epsilon_ground = 0.97, a_longwave = 0.965)
Qthermal_radiation_absorbed(T_a = 20, T_g = 25, epsilon_ground = 0.97, a_longwave = 0.965)
The function estimates the Reynolds Number, which describes the dynamic properties of the fluid surrounding the animal as the ratio of internal viscous forces (Gates 1980).
Reynolds_number(u, D, nu)
Reynolds_number(u, D, nu)
u |
|
D |
|
nu |
|
numeric
Reynolds number.
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Reynolds_number(u = 1, D = 0.001, nu = 1.2)
Reynolds_number(u = 1, D = 0.001, nu = 1.2)
The function calculates saturation vapor pressure (kPa) based on the Clausius-Clapeyron equation (Stull 2000; Riddell et al. 2018).
saturation_vapor_pressure(T_a)
saturation_vapor_pressure(T_a)
T_a |
|
numeric
saturation vapor pressure, e_s
(kPa).
Eric Riddell
Riddell EA, Odom JP, Damm JD, Sears MW (2018).
“Plasticity reveals hidden resistance to extinction under climate change in the global hotspot of salamander diversity.”
Science Advances, 4(4).
doi:10.1126/sciadv.aar5471.
Stull RB (2000).
Meteorology for Scientists and Engineers.
Brooks Cole.
ISBN 978-0534372149.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_water_vapor_pressure()
saturation_vapor_pressure(T_a = 293)
saturation_vapor_pressure(T_a = 293)
The function approximates saturation water vapor pressure as a function of ambient temperature for temperatures from 0 to 40 C using Rosenberg (1974) in Spotila et al. (1992). See also NicheMapR WETAIR
and DRYAIR
(Kearney and Porter 2020).
saturation_water_vapor_pressure(T_a)
saturation_water_vapor_pressure(T_a)
T_a |
|
numeric
Saturation water vapor pressure, e_s
(Pa).
Kearney MR, Porter WP (2020).
“NicheMapR - an R package for biophysical modelling: the ectotherm and Dynamic Energy Budget models.”
Ecography, 43(1), 85-96.
doi:10.1111/ecog.04680.
Rosenberg NJ (1974).
Microclimate: the biological environment.
Wiley, New York.
Spotila JR, Feder ME, Burggren WW (1992).
“Biophysics of Heat and Mass Transfer.”
Environmental Physiology of the Amphibians.
https://press.uchicago.edu/ucp/books/book/chicago/E/bo3636401.html.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
saturation_water_vapor_pressure(T_a = 20)
saturation_water_vapor_pressure(T_a = 20)
The function estimates soil thermal conductivity (W m-1 K-1) using the methods of deVries (1963).
soil_conductivity(x, lambda, g_a)
soil_conductivity(x, lambda, g_a)
x |
|
lambda |
|
g_a |
|
numeric
soil thermal conductivity (W m-1 K-1).
Joseph Grigg
deVries DA (1952).
“Thermal Conductivity of Soil.”
Nature, 178, 1074.
doi:10.1038/1781074a0.
deVries DA (1963).
“Thermal Properties of Soils.”
In Physics of Plant Environment.
North Holland Publishing Company.
doi:10.1002/qj.49709038628.
Other soil temperature functions:
soil_specific_heat()
,
soil_temperature_equation()
,
soil_temperature_function()
,
soil_temperature_integrand()
,
soil_temperature()
soil_conductivity(x = c(0.10, 0.40, 0.11, 0.01, 0.2, 0.18), lambda = c(0.10, 0.40, 0.11, 0.01, 0.2, 0.18), g_a = 0.125)
soil_conductivity(x = c(0.10, 0.40, 0.11, 0.01, 0.2, 0.18), lambda = c(0.10, 0.40, 0.11, 0.01, 0.2, 0.18), g_a = 0.125)
The function estimates soil specific heat (J kg-1 K-1) using the methods of deVries (1963). The function incorporates the volume fraction of organic material, minerals, and water in soil.
soil_specific_heat(x_o, x_m, x_w, rho_so)
soil_specific_heat(x_o, x_m, x_w, rho_so)
x_o |
|
x_m |
|
x_w |
|
rho_so |
|
numeric
soil specific heat (J kg-1 K-1).
Joseph Grigg
deVries DA (1963). “Thermal Properties of Soils.” In Physics of Plant Environment. North Holland Publishing Company. doi:10.1002/qj.49709038628.
Other soil temperature functions:
soil_conductivity()
,
soil_temperature_equation()
,
soil_temperature_function()
,
soil_temperature_integrand()
,
soil_temperature()
soil_specific_heat(x_o = 0.01, x_m = 0.6, x_w = 0.2, rho_so = 1620)
soil_specific_heat(x_o = 0.01, x_m = 0.6, x_w = 0.2, rho_so = 1620)
This function is called to calculate soil temperature (C) as in Beckman et al. (1973). This function calls soil_temperature_function
, which uses ODEs to calculate a soil profile using equations from deVries (1963)
soil_temperature( z_r.intervals = 12, z_r, z, T_a, u, Tsoil0, z0, SSA, TimeIn, S, water_content = 0.2, air_pressure, rho_so = 1620, shade = FALSE )
soil_temperature( z_r.intervals = 12, z_r, z, T_a, u, Tsoil0, z0, SSA, TimeIn, S, water_content = 0.2, air_pressure, rho_so = 1620, shade = FALSE )
z_r.intervals |
|
z_r |
|
z |
|
T_a |
|
u |
|
Tsoil0 |
|
z0 |
|
SSA |
|
TimeIn |
|
S |
|
water_content |
|
air_pressure |
|
rho_so |
|
shade |
|
numeric
soil temperature (C).
Joseph Grigg
Beckman WA, Mitchell JW, Porter WP (1973).
“Thermal Model for Prediction of a Desert Iguana's Daily and Seasonal Behavior.”
Journal of Heat Transfer, 95(2), 257-262.
doi:10.1115/1.3450037.
deVries DA (1963).
“Thermal Properties of Soils.”
In Physics of Plant Environment.
North Holland Publishing Company.
doi:10.1002/qj.49709038628.
Other soil temperature functions:
soil_conductivity()
,
soil_specific_heat()
,
soil_temperature_equation()
,
soil_temperature_function()
,
soil_temperature_integrand()
set.seed(123) temp_vector <- runif(48, min = -10, max = 10) wind_speed_vector <- runif(48, min = 0, max = 0.4) time_vector <- rep(1:24, 2) solrad_vector <- rep(c(rep(0, 6), seq(10, 700, length.out = 6), seq(700, 10, length.out = 6), rep(0, 6)), 2) soil_temperature(z_r.intervals = 12, z_r = 1.5, z = 2, T_a = temp_vector, u = wind_speed_vector, Tsoil0 = 20, z0 = 0.02, SSA = 0.7, TimeIn = time_vector, S = solrad_vector, water_content = 0.2, air_pressure = 85, rho_so = 1620, shade = FALSE)
set.seed(123) temp_vector <- runif(48, min = -10, max = 10) wind_speed_vector <- runif(48, min = 0, max = 0.4) time_vector <- rep(1:24, 2) solrad_vector <- rep(c(rep(0, 6), seq(10, 700, length.out = 6), seq(700, 10, length.out = 6), rep(0, 6)), 2) soil_temperature(z_r.intervals = 12, z_r = 1.5, z = 2, T_a = temp_vector, u = wind_speed_vector, Tsoil0 = 20, z0 = 0.02, SSA = 0.7, TimeIn = time_vector, S = solrad_vector, water_content = 0.2, air_pressure = 85, rho_so = 1620, shade = FALSE)
The function called by soil_temperature_function
to solve equation for soil temperature from Beckman et al. (1973).
soil_temperature_equation(L, rho_a, c_a, u_inst, z_r, z0, T_inst, T_s)
soil_temperature_equation(L, rho_a, c_a, u_inst, z_r, z0, T_inst, T_s)
L |
|
rho_a |
|
c_a |
|
u_inst |
|
z_r |
|
z0 |
|
T_inst |
|
T_s |
|
numeric
soil temperature (C).
Joseph Grigg
Beckman WA, Mitchell JW, Porter WP (1973). “Thermal Model for Prediction of a Desert Iguana's Daily and Seasonal Behavior.” Journal of Heat Transfer, 95(2), 257-262. doi:10.1115/1.3450037.
Other soil temperature functions:
soil_conductivity()
,
soil_specific_heat()
,
soil_temperature_function()
,
soil_temperature_integrand()
,
soil_temperature()
soil_temperature_equation(L = -10, rho_a = 1.177, c_a = 1006, u_inst = 0.3, z_r = 1.5, z0 = 0.02, T_inst = 8, T_s = 20)
soil_temperature_equation(L = -10, rho_a = 1.177, c_a = 1006, u_inst = 0.3, z_r = 1.5, z0 = 0.02, T_inst = 8, T_s = 20)
This function is called to calculate soil temperature as in Beckman et al. (1973). Parameters are passed as a list to facilitating solving the equations. This function is not intended to be called directly. The energy balance equations are from Porter et al. (1973) and Kingsolver (1979)
soil_temperature_function(j, T_so, params)
soil_temperature_function(j, T_so, params)
j |
|
T_so |
|
params |
|
Soil temperature profile as a list
.
Joseph Grigg
Beckman WA, Mitchell JW, Porter WP (1973).
“Thermal Model for Prediction of a Desert Iguana's Daily and Seasonal Behavior.”
Journal of Heat Transfer, 95(2), 257-262.
doi:10.1115/1.3450037.
Kingsolver JG (1979).
“Thermal and hydric aspects of environmental hetergeneity in the pitcher plant mosquito.”
Ecological Monographs, 49, 357-376.
Porter WP, Mitchell JW, Bekman A, DeWitt CB (1973).
“Behavioral implications of mechanistic ecology: thermal and behavioral modeling of desert ectotherms and their microenvironments.”
Oecologia, 13, 1-54.
Other soil temperature functions:
soil_conductivity()
,
soil_specific_heat()
,
soil_temperature_equation()
,
soil_temperature_integrand()
,
soil_temperature()
set.seed(123) temp_vector <- runif(96, min = -10, max = 10) wind_speed_vector <- runif(96, min = 0, max = 0.4) time_vector <- rep(1:24, 4) solrad_vector <- rep(c(rep(0, 6), seq(10, 700, length.out = 6), seq(700, 10, length.out = 6), rep(0, 6)), 4) params <- list(SSA = 0.7, epsilon_so = 0.98, k_so = 0.293, c_so = 800, dz = 0.05, z_r = 1.5, z0 = 0.02, S = solrad_vector, T_a = temp_vector, u = wind_speed_vector, rho_a = 1.177, rho_so = 1620, c_a = 1006, TimeIn = time_vector, dt = 60 * 60, shade = FALSE) soil_temperature_function(j = 1, T_so = rep(20,13), params = params)
set.seed(123) temp_vector <- runif(96, min = -10, max = 10) wind_speed_vector <- runif(96, min = 0, max = 0.4) time_vector <- rep(1:24, 4) solrad_vector <- rep(c(rep(0, 6), seq(10, 700, length.out = 6), seq(700, 10, length.out = 6), rep(0, 6)), 4) params <- list(SSA = 0.7, epsilon_so = 0.98, k_so = 0.293, c_so = 800, dz = 0.05, z_r = 1.5, z0 = 0.02, S = solrad_vector, T_a = temp_vector, u = wind_speed_vector, rho_a = 1.177, rho_so = 1620, c_a = 1006, TimeIn = time_vector, dt = 60 * 60, shade = FALSE) soil_temperature_function(j = 1, T_so = rep(20,13), params = params)
This function is called by soil_temperature_equation
to solve the equation for soil temperature from Beckman et al. (1973). The function represents the integrand in the equation. It is not intended to be called directly.
soil_temperature_integrand(x, L, z0)
soil_temperature_integrand(x, L, z0)
x |
|
L |
|
z0 |
|
numeric
integrand for soil temperature function.
Joseph Grigg
Beckman WA, Mitchell JW, Porter WP (1973). “Thermal Model for Prediction of a Desert Iguana's Daily and Seasonal Behavior.” Journal of Heat Transfer, 95(2), 257-262. doi:10.1115/1.3450037.
Other soil temperature functions:
soil_conductivity()
,
soil_specific_heat()
,
soil_temperature_equation()
,
soil_temperature_function()
,
soil_temperature()
soil_temperature_integrand(x = c(0.10, 0.40, 0.11, 0.01, 0.2, 0.18), L = -10, z0 = 0.2)
soil_temperature_integrand(x = c(0.10, 0.40, 0.11, 0.01, 0.2, 0.18), L = -10, z0 = 0.2)
The function calculates the time of solar noon in hours as a function of the day of year and longitude (Campbell and Norman 1998).
solar_noon(lon, doy, offset = NA)
solar_noon(lon, doy, offset = NA)
lon |
|
doy |
|
offset |
|
numeric
time of solar noon (hours).
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other utility functions:
airpressure_from_elev()
,
azimuth_angle()
,
day_of_year()
,
daylength()
,
dec_angle()
,
temperature conversions
,
zenith_angle()
solar_noon(lon = -122.335, doy = 112)
solar_noon(lon = -122.335, doy = 112)
The function estimate direct, diffuse, and reflected components of solar radiation (W m-2) as a function of day of year using the model in Campbell and Norman (1998).
solar_radiation(doy, psi, tau, elev, rho = 0.7)
solar_radiation(doy, psi, tau, elev, rho = 0.7)
doy |
|
psi |
|
tau |
|
elev |
|
rho |
|
numeric
radiation components - direct, diffused and reflected (W m-2).
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
solar_radiation(doy = 112, psi = 1, tau = 0.6, elev = 1500, rho = 0.7)
solar_radiation(doy = 112, psi = 1, tau = 0.6, elev = 1500, rho = 0.7)
This function estimates surface area (m2) from length (m) by approximating the animal's body as a rotational ellipsoid with half the body length as the semi-major axis.
surface_area_from_length(l)
surface_area_from_length(l)
l |
|
Following Samietz et al. (2005) and Lactin and Johnson (1998).
numeric
surface area (m2).
Lactin DJ, Johnson DL (1998).
“Convective heat loss and change in body temperature of grasshopper and locust nymphs: Relative importance of wind speed, insect size and insect orientation.”
Journal of Thermal Biology, 23(1), 5-13.
ISSN 0306-4565, doi:10.1016/S0306-4565(97)00037-5, https://www.sciencedirect.com/science/article/pii/S0306456597000375.
Samietz J, Salser MA, Dingle H (2005).
“Altitudinal variation in behavioural thermoregulation: local adaptation vs. plasticity in California grasshoppers.”
Journal of Evolutionary Biology, 18(4), 1087-1096.
doi:10.1111/j.1420-9101.2005.00893.x.
Other allometric functions:
mass_from_length()
,
proportion_silhouette_area_shapes()
,
proportion_silhouette_area()
,
surface_area_from_mass()
,
surface_area_from_volume()
,
volume_from_length()
surface_area_from_length(l = 0.04)
surface_area_from_length(l = 0.04)
The function estimates surface area (m2) from mass (g) for one of a variety of taxa.
surface_area_from_mass(m, taxon)
surface_area_from_mass(m, taxon)
m |
|
taxon |
|
All models follow (SA = a Mb) with mass in grams and surface area in meters2.
Lizards (Norris 1965; Porter and James 1979; Roughgarden 1981; O'Connor 1999; Fei et al. 2012):
Salamanders (Whitford and Hutchison 1967; Riddell et al. 2017):
Frogs (McClanahan and Baldwin 1969):
Insects (Lactin and Johnson 1997):
numeric
surface area (m2).
Fei T, Skidmore AK, Venus V, Wang T, Schlerf M, Toxopeus B, van Overjijk S, Bian M, Liu Y (2012).
“A body temperature model for lizards as estimated from the thermal environment.”
Journal of Thermal Biology, 37(1), 56-64.
ISSN 0306-4565, doi:10.1016/j.jtherbio.2011.10.013, https://www.sciencedirect.com/science/article/pii/S0306456511001513.
Lactin DJ, Johnson DL (1997).
“Response of body temperature to solar radiation in restrained nymphal migratory grasshoppers (Orthoptera: Acrididae): influences of orientation and body size.”
Physiological Entomology, 22(2), 131-139.
doi:10.1111/j.1365-3032.1997.tb01150.x.
McClanahan L, Baldwin R (1969).
“Rate of water uptake through the integument of the desert toad, Bufo punctatus.”
Comparative Biochemistry and Physiology, 28(1), 381-389.
ISSN 0010-406X, doi:10.1016/0010-406X(69)91351-6.
Norris KS (1965).
“Color adaptation in desert reptiles and its thermal relationships.”
In Symposium on Lizard Ecology, 162- 229.
U. Missouri Press.
O'Connor M (1999).
“Physiological and ecological implications of a simple model of heating and cooling in reptiles.”
Journal of Thermal Biology, 24, 113-136.
Porter WP, James FC (1979).
“Behavioral Implications of Mechanistic Ecology II: The African Rainbow Lizard, Agama agama.”
Copeia, 1979(4), 594–619.
ISSN 00458511, 19385110, doi:10.2307/1443867.
Riddell EA, Apanovitch EK, Odom JP, Sears MW (2017).
“Physical calculations of resistance to water loss improve predictions of species range models.”
Ecological Monographs, 87(1), 21-33.
doi:10.1002/ecm.1240.
Roughgarden J (1981).
“Resource partitioning of space and its relationship to body temperature in Anolis lizard populations.”
Oecologia, 50, 256 – 264.
https://link.springer.com/article/10.1007/BF00348048.
Whitford WG, Hutchison VH (1967).
“Body Size and Metabolic Rate in Salamanders.”
Physiological Zoology, 40(2), 127-133.
doi:10.1086/physzool.40.2.30152447.
Other allometric functions:
mass_from_length()
,
proportion_silhouette_area_shapes()
,
proportion_silhouette_area()
,
surface_area_from_length()
,
surface_area_from_volume()
,
volume_from_length()
surface_area_from_mass(m = 1:50, taxon = "lizard") surface_area_from_mass(m = 1:50, taxon = "salamander") surface_area_from_mass(m = 1:50, taxon = "frog") surface_area_from_mass(m = seq(0.1, 5, 0.1), taxon = "insect")
surface_area_from_mass(m = 1:50, taxon = "lizard") surface_area_from_mass(m = 1:50, taxon = "salamander") surface_area_from_mass(m = 1:50, taxon = "frog") surface_area_from_mass(m = seq(0.1, 5, 0.1), taxon = "insect")
The function estimates surface area (m2) from volume (m3) for a variety of taxa following Mitchell (1976).
surface_area_from_volume(V, taxon)
surface_area_from_volume(V, taxon)
V |
|
taxon |
|
All models follow (SA = Ka V2/3) with surface area and volume in meters.
Lizards: Norris (1965):
Frogs: Tracy (1972):
Sphere: Mitchell (1976):
numeric
surface area (m2).
Mitchell JW (1976).
“Heat transfer from spheres and other animal forms.”
Biophysical Journal, 16(6), 561-569.
ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Norris KS (1965).
“Color adaptation in desert reptiles and its thermal relationships.”
In Symposium on Lizard Ecology, 162- 229.
U. Missouri Press.
Tracy CR (1972).
“Newton's Law: Its Application for Expressing Heat Losses from Homeotherms.”
BioScience, 22(11), 656-659.
ISSN 0006-3568, doi:10.2307/1296267.
Other allometric functions:
mass_from_length()
,
proportion_silhouette_area_shapes()
,
proportion_silhouette_area()
,
surface_area_from_length()
,
surface_area_from_mass()
,
volume_from_length()
surface_area_from_volume(V = 0.001, taxon = "lizard") surface_area_from_volume(V = 0.001, taxon = "frog") surface_area_from_volume(V = 0.001, taxon = "sphere")
surface_area_from_volume(V = 0.001, taxon = "lizard") surface_area_from_volume(V = 0.001, taxon = "frog") surface_area_from_volume(V = 0.001, taxon = "sphere")
The function estimates surface roughness (m) from empirical wind speed (m s-1) data collected at a vector of heights (m) (Kingsolver and Buckley 2015; Campbell and Norman 1998; Porter and James 1979).
surface_roughness(u_r, zr)
surface_roughness(u_r, zr)
u_r |
|
zr |
|
numeric
surface roughness (m).
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Kingsolver JG, Buckley LB (2015).
“Climate variability slows evolutionary responses of Colias butterflies to recent climate change.”
Proceedings of the Royal Society B, 282(1802).
doi:10.1098/rspb.2014.2470.
Porter WP, James FC (1979).
“Behavioral Implications of Mechanistic Ecology II: The African Rainbow Lizard, Agama agama.”
Copeia, 1979(4), 594–619.
ISSN 00458511, 19385110, doi:10.2307/1443867.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
wind_speed_profile_neutral()
,
wind_speed_profile_segment()
surface_roughness(u_r = c(0.01, 0.025, 0.05, 0.1, 0.2), zr = c(0.05, 0.25, 0.5, 0.75, 1))
surface_roughness(u_r = c(0.01, 0.025, 0.05, 0.1, 0.2), zr = c(0.05, 0.25, 0.5, 0.75, 1))
This function estimates the effective radiant temperature of the sky (K) using either the Brunt or Swinbank formulations (Gates 1980).
T_sky(T_a, formula)
T_sky(T_a, formula)
T_a |
|
formula |
|
numeric
T_sky (K).
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
T_sky(T_a=293, formula="Swinbank")
T_sky(T_a=293, formula="Swinbank")
The function estimates body temperatures (C, operative environmental temperatures) of a butterfly based on Kingsolver (1983) and Buckley and Kingsolver (2012). The function is designed for butterflies that bask with closed wings such as Colias.
Tb_butterfly( T_a, T_g, T_sh, u, S_sdir, S_sdif, z, D, delta, alpha, r_g = 0.3, shade = FALSE )
Tb_butterfly( T_a, T_g, T_sh, u, S_sdir, S_sdif, z, D, delta, alpha, r_g = 0.3, shade = FALSE )
T_a |
|
T_g |
|
T_sh |
|
u |
|
S_sdir |
|
S_sdif |
|
z |
|
D |
|
delta |
|
alpha |
|
r_g |
|
shade |
|
Thermal radiative flux is calculated following Gates (1980) based on Swinbank (1960). Kingsolver (1983) estimates using the Brunt equation with black body sky temperature from Swinbank (1963).
numeric
predicted body (operative environmental) temperature (C).
Buckley LB, Kingsolver JG (2012).
“The demographic impacts of shifts in climate means and extremes on alpine butterflies.”
Functional Ecology, 26(4), 969-977.
doi:10.1111/j.1365-2435.2012.01969.x.
Gates DM (1980).
Biophysical Ecology.
Springer-Verlag, New York, NY, USA.
Kingsolver JG (1983).
“Thermoregulation and Flight in Colias Butterflies: Elevational Patterns and Mechanistic Limitations.”
Ecology, 64(3), 534-545.
doi:10.2307/1939973.
Swinbank WC (1960).
“Wind profile in thermally stratified flow.”
Nature, 186, 463-464.
Swinbank WC (1963).
“Long-wave radiation from clear skies.”
Quarterly Journal of the Royal Meteorological Society, 89, 339-348.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_butterfly(T_a = 25, T_g = 25, T_sh = 20, u = 0.4, S_sdir = 300, S_sdif = 100, z = 30, D = 0.36, delta = 1.46, alpha = 0.6, r_g = 0.3)
Tb_butterfly(T_a = 25, T_g = 25, T_sh = 20, u = 0.4, S_sdir = 300, S_sdif = 100, z = 30, D = 0.36, delta = 1.46, alpha = 0.6, r_g = 0.3)
The function estimates body temperatures (C, operative environmental temperature) of an ectotherm using an approximation based on Campbell and Norman (1998) and Mitchell (1976).
Tb_CampbellNorman( T_a, T_g, S, a_s = 0.7, a_l = 0.96, epsilon = 0.96, c_p = 29.3, D, u )
Tb_CampbellNorman( T_a, T_g, S, a_s = 0.7, a_l = 0.96, epsilon = 0.96, c_p = 29.3, D, u )
T_a |
|
T_g |
|
S |
|
a_s |
|
a_l |
|
epsilon |
|
c_p |
|
D |
|
u |
|
Boundary conductance uses a factor of 1.4 to account for increased convection (Mitchell 1976). The function assumes forced conduction.
numeric
operative environmental temperature, T_e
(C).
Bartlett PN, Gates DM (1967).
“The energy budget of a lizard on a tree trunk.”
Ecology, 48, 316-322.
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Gates DM (1980).
Biophysical Ecology.
Springer-Verlag, New York, NY, USA.
Mitchell JW (1976).
“Heat transfer from spheres and other animal forms.”
Biophysical Journal, 16(6), 561-569.
ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_CampbellNorman (T_a = 30, T_g = 30, S = 823, a_s = 0.7, a_l = 0.96, epsilon = 0.96, c_p = 29.3, D = 0.17, u = 1)
Tb_CampbellNorman (T_a = 30, T_g = 30, S = 823, a_s = 0.7, a_l = 0.96, epsilon = 0.96, c_p = 29.3, D = 0.17, u = 1)
The function predicts body temperatures (C, operative environmental temperature) of an ectotherm using the approximation in Gates (1980). The functions omits evaporative and metabolic heat loss (Mitchell 1976; Kingsolver 1983).
Tb_Gates( A, D, psa_dir, psa_ref, psa_air, psa_g, T_g, T_a, Qabs, epsilon, H_L, ef = 1.3, K )
Tb_Gates( A, D, psa_dir, psa_ref, psa_air, psa_g, T_g, T_a, Qabs, epsilon, H_L, ef = 1.3, K )
A |
|
D |
|
psa_dir |
|
psa_ref |
|
psa_air |
|
psa_g |
|
T_g |
|
T_a |
|
Qabs |
|
epsilon |
|
H_L |
|
ef |
|
K |
|
numeric
operative environmental temperature, T_e
(C).
Galushko D, Ermakov N, Karpovski M, Palevski A, Ishay JS, Bergman DJ (2005).
“Electrical, thermoelectric and thermophysical properties of hornet cuticle.”
Semiconductor Science and Technology, 20(3), 286–289.
doi:10.1088/0268-1242/20/3/005.
Gates DM (1980).
Biophysical Ecology.
Springer-Verlag, New York, NY, USA.
Kingsolver JG (1983).
“Thermoregulation and Flight in Colias Butterflies: Elevational Patterns and Mechanistic Limitations.”
Ecology, 64(3), 534-545.
doi:10.2307/1939973.
Mitchell JW (1976).
“Heat transfer from spheres and other animal forms.”
Biophysical Journal, 16(6), 561-569.
ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_Gates (A = 0.1, D = 0.025, psa_dir = 0.6, psa_ref = 0.4, psa_air = 0.5, psa_g = 0.1, T_g = 30, T_a = 37, Qabs = 2, epsilon = 0.95, H_L = 10, ef = 1.23, K = 0.5)
Tb_Gates (A = 0.1, D = 0.025, psa_dir = 0.6, psa_ref = 0.4, psa_air = 0.5, psa_g = 0.1, T_g = 30, T_a = 37, Qabs = 2, epsilon = 0.95, H_L = 10, ef = 1.23, K = 0.5)
The function predicts body temperatures (C, operative environmental temperature) of an ectotherm using the approximation in Gates (1980). The function omits evaporative and metabolic heat loss.
Tb_Gates2(A, D, T_g, T_a, Qabs, u, epsilon)
Tb_Gates2(A, D, T_g, T_a, Qabs, u, epsilon)
A |
|
D |
|
T_g |
|
T_a |
|
Qabs |
|
u |
|
epsilon |
|
numeric
operative environmental temperature (C).
Gates DM (1980). Biophysical Ecology. Springer-Verlag, New York, NY, USA.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_Gates2(A = 1, D = 0.001, T_g = 27, T_a = 37, Qabs = 2, u = 0.1, epsilon = 1)
Tb_Gates2(A = 1, D = 0.001, T_g = 27, T_a = 37, Qabs = 2, u = 0.1, epsilon = 1)
The function estimates body temperatures (C, operative environmental temperatures) of a grasshopper based on Lactin and Johnson (1998). Part of the model is based on Swinbank (1963), following Gates (1962) in Kingsolver (1983).
Tb_grasshopper( T_a, T_g, u, S, K_t, psi, l, Acondfact = 0.25, z = 0.001, abs = 0.7, r_g = 0.3 )
Tb_grasshopper( T_a, T_g, u, S, K_t, psi, l, Acondfact = 0.25, z = 0.001, abs = 0.7, r_g = 0.3 )
T_a |
|
T_g |
|
u |
|
S |
|
K_t |
|
psi |
|
l |
|
Acondfact |
|
z |
|
abs |
|
r_g |
|
Total radiative flux is calculated as thermal radiative heat flux plus convective heat flux, following Kingsolver (1983), with the Erbs et al. (1982) model from Wong and Chow (2001).
Energy balance is based on Kingsolver (1983).
Radiation is calculated without area dependence (Anderson et al. 1979).
The body of a grasshopper female is approximated by a rotational ellipsoid with half the body length as the semi-major axis (Samietz et al. 2005).
The diffuse fraction is corrected following Olyphant (1984).
numeric
predicted body (operative environmental) temperature (C).
Anderson RV, Tracy CR, Abramsky Z (1979).
“Habitat Selection in Two Species of Short-Horned Grasshoppers. The Role of Thermal and Hydric Stresses.”
Oecologia, 38(3), 359–374.
doi:10.1007/BF00345194.
Erbs D, Klein S, Duffie J (1982).
“Estimation of the diffuse radiation fraction for hourly, daily and monthly-average global radiation.”
Solar Energy, 28, 293-302.
Gates DM (1962).
“Leaf temperature and energy exchange.”
Archiv fur Meteorologie, Geophysik und Bioklimatologie, Serie B volume, 12, 321-336.
Kingsolver JG (1983).
“Thermoregulation and Flight in Colias Butterflies: Elevational Patterns and Mechanistic Limitations.”
Ecology, 64(3), 534-545.
doi:10.2307/1939973.
Lactin DJ, Johnson DL (1998).
“Convective heat loss and change in body temperature of grasshopper and locust nymphs: Relative importance of wind speed, insect size and insect orientation.”
Journal of Thermal Biology, 23(1), 5-13.
ISSN 0306-4565, doi:10.1016/S0306-4565(97)00037-5, https://www.sciencedirect.com/science/article/pii/S0306456597000375.
Olyphant G (1984).
“Insolation Topoclimates and Potential Ablation in Alpine Snow Accumulation Basins: Front Range, Colorado.”
Water Resources Research, 20(4), 491-498.
Samietz J, Salser MA, Dingle H (2005).
“Altitudinal variation in behavioural thermoregulation: local adaptation vs. plasticity in California grasshoppers.”
Journal of Evolutionary Biology, 18(4), 1087-1096.
doi:10.1111/j.1420-9101.2005.00893.x.
Swinbank WC (1963).
“Long-wave radiation from clear skies.”
Quarterly Journal of the Royal Meteorological Society, 89, 339-348.
Wong LT, Chow WK (2001).
“Solar radiation model.”
Applied Energy, 69(3), 191-224.
ISSN 0306-2619, doi:10.1016/S0306-2619(01)00012-5, https://www.sciencedirect.com/science/article/pii/S0306261901000125.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_grasshopper(T_a = 25, T_g = 25, u = 0.4, S = 400, K_t = 0.7, psi = 30, l = 0.02, Acondfact = 0.25, z = 0.001, abs = 0.7, r_g = 0.3)
Tb_grasshopper(T_a = 25, T_g = 25, u = 0.4, S = 400, K_t = 0.7, psi = 30, l = 0.02, Acondfact = 0.25, z = 0.001, abs = 0.7, r_g = 0.3)
The function estimates body temperatures (C, operative environmental temperatures) of a limpet based on Denny and Harley (2006).
Tb_limpet(T_a, T_r, l, h, S, u, psi, c, position = "anterior")
Tb_limpet(T_a, T_r, l, h, S, u, psi, c, position = "anterior")
T_a |
|
T_r |
|
l |
|
h |
|
S |
|
u |
|
psi |
|
c |
|
position |
|
The original equation uses a finite-difference approach where they divide the rock into series of chunks, and calculate the temperature at each node to derive the conductive heat. For simplification, here it takes the rock temperature as a parameter, and conductive heat is calculated as a product of the area, thermal conductivity of rock and the temperature difference between the rock and the body.
Limpets are simulated as cones following and using solar emissivity values from Campbell and Norman (1998).
The area of the limpet's shell (m2) is projected according to the direction at which sunlight strikes the organism (Pennell and Deignan 1989).
Air conductivity values (W m-1 K-1) are calculated following Denny and Harley (2006).
numeric
predicted body (operative environmental) temperature (C).
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Denny MW, Harley CDG (2006).
“Hot limpets: predicting body temperature in a conductance-mediated thermal system.”
Journal of Experimental Biology, 209(13), 2409-2419.
ISSN 0022-0949, doi:10.1242/jeb.02356.
Pennell S, Deignan J (1989).
“Computing the Projected Area of a Cone.”
SIAM Review, 31, 299-302.
doi:10.1137/1031052.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_limpet(T_a = 25, T_r = 30, l = 0.0176, h = 0.0122, S = 1300, u = 1, psi = 30, c = 1, position = "anterior")
Tb_limpet(T_a = 25, T_r = 30, l = 0.0176, h = 0.0122, S = 1300, u = 1, psi = 30, c = 1, position = "anterior")
The function predicts body temperatures (C, operative environmental temperatures) of a limpet. The function was provided by Brian Helmuth – although radiation and convection are altered from his original model – and based on Denny and Harley (2006).
Tb_limpetBH(T_a, T_r, l, h, S, u, s_aspect, s_slope, c)
Tb_limpetBH(T_a, T_r, l, h, S, u, s_aspect, s_slope, c)
T_a |
|
T_r |
|
l |
|
h |
|
S |
|
u |
|
s_aspect |
|
s_slope |
|
c |
|
The original equation uses a finite-difference approach where they divide the rock into series of chunks, and calculate the temperature at each node to derive the conductive heat. For simplification, here it takes the rock temperature as a parameter, and conductive heat is calculated by the product of the area, thermal conductivity of rock and the difference in temperatures of the rock and the body.
Limpets are simulated as cones following and using solar emissivity values from Campbell and Norman (1998).
The area of the limpet's shell (m2) is projected in the direction at which sunlight strikes the organism Pennell and Deignan (1989).
Air conductivity values (W m-1 K-1) are calculated following Denny and Harley (2006).
numeric
predicted body (operative environmental) temperature (C).
Brian Helmuth et al.
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Denny MW, Harley CDG (2006).
“Hot limpets: predicting body temperature in a conductance-mediated thermal system.”
Journal of Experimental Biology, 209(13), 2409-2419.
ISSN 0022-0949, doi:10.1242/jeb.02356.
Pennell S, Deignan J (1989).
“Computing the Projected Area of a Cone.”
SIAM Review, 31, 299-302.
doi:10.1137/1031052.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_limpetBH(T_a = 25, T_r = 30, l = 0.0176, h = 0.0122, S = 1300, u = 1, s_aspect = 90, s_slope = 60, c = 1)
Tb_limpetBH(T_a = 25, T_r = 30, l = 0.0176, h = 0.0122, S = 1300, u = 1, s_aspect = 90, s_slope = 60, c = 1)
The function estimates body temperature (C, operative environmental temperature) of a lizard based on Campbell and Norman (1998). The function was designed for Sceloporus lizards and described in Buckley (2008).
Tb_lizard( T_a, T_g, u, svl, m, psi, rho_s, elev, doy, sun = TRUE, surface = TRUE, a_s = 0.9, a_l = 0.965, epsilon_s = 0.965, F_d = 0.8, F_r = 0.5, F_a = 0.5, F_g = 0.5 )
Tb_lizard( T_a, T_g, u, svl, m, psi, rho_s, elev, doy, sun = TRUE, surface = TRUE, a_s = 0.9, a_l = 0.965, epsilon_s = 0.965, F_d = 0.8, F_r = 0.5, F_a = 0.5, F_g = 0.5 )
T_a |
|
T_g |
|
u |
|
svl |
|
m |
|
psi |
|
rho_s |
|
elev |
|
doy |
|
sun |
|
surface |
|
a_s |
|
a_l |
|
epsilon_s |
|
F_d |
|
F_r |
|
F_a |
|
F_g |
|
The proportion of radiation that is direct is determined following Sears et al. (2011).
Boundary conductance uses a factor of 1.4 to account for increased convection (Mitchell 1976).
T_e numeric
predicted body (operative environmental) temperature (C).
Bartlett PN, Gates DM (1967).
“The energy budget of a lizard on a tree trunk.”
Ecology, 48, 316-322.
Buckley LB (2008).
“Linking traits to energetics and population dynamics to predict lizard ranges in changing environments.”
American Naturalist, 171(1), E1 - E19.
doi:10.1086/523949, https://pubmed.ncbi.nlm.nih.gov/18171140/.
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Gates DM (1980).
Biophysical Ecology.
Springer-Verlag, New York, NY, USA.
Mitchell JW (1976).
“Heat transfer from spheres and other animal forms.”
Biophysical Journal, 16(6), 561-569.
ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Sears MW, Raskin E, Angilletta Jr. MJ (2011).
“The World Is not Flat: Defining Relevant Thermal Landscapes in the Context of Climate Change.”
Integrative and Comparative Biology, 51(5), 666-675.
ISSN 1540-7063, doi:10.1093/icb/icr111, https://academic.oup.com/icb/article-pdf/51/5/666/1757893/icr111.pdf.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_lizard(T_a = 25, T_g = 30, u = 0.1, svl = 60, m = 10, psi = 34, rho_s = 0.24, elev = 500, doy = 200, sun = TRUE, surface = TRUE, a_s = 0.9, a_l = 0.965, epsilon_s = 0.965, F_d = 0.8, F_r = 0.5, F_a = 0.5, F_g = 0.5)
Tb_lizard(T_a = 25, T_g = 30, u = 0.1, svl = 60, m = 10, psi = 34, rho_s = 0.24, elev = 500, doy = 200, sun = TRUE, surface = TRUE, a_s = 0.9, a_l = 0.965, epsilon_s = 0.965, F_d = 0.8, F_r = 0.5, F_a = 0.5, F_g = 0.5)
The function predicts body temperature (C, operative environmental temperature) of a lizard based on Fei et al. (2012).
Tb_lizard_Fei(T_a, T_g, S, lw, shade, m, Acondfact, Agradfact)
Tb_lizard_Fei(T_a, T_g, S, lw, shade, m, Acondfact, Agradfact)
T_a |
|
T_g |
|
S |
|
lw |
|
shade |
|
m |
|
Acondfact |
|
Agradfact |
|
Thermal radiative flux is calculated following Fei et al. (2012) based on Bartlett and Gates (1967) and Porter et al. (1973).
numeric
predicted body (operative environmental) temperature (K).
Ofir Levy
Bartlett PN, Gates DM (1967).
“The energy budget of a lizard on a tree trunk.”
Ecology, 48, 316-322.
Fei T, Skidmore AK, Venus V, Wang T, Schlerf M, Toxopeus B, van Overjijk S, Bian M, Liu Y (2012).
“A body temperature model for lizards as estimated from the thermal environment.”
Journal of Thermal Biology, 37(1), 56-64.
ISSN 0306-4565, doi:10.1016/j.jtherbio.2011.10.013, https://www.sciencedirect.com/science/article/pii/S0306456511001513.
Porter WP, Mitchell JW, Bekman A, DeWitt CB (1973).
“Behavioral implications of mechanistic ecology: thermal and behavioral modeling of desert ectotherms and their microenvironments.”
Oecologia, 13, 1-54.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_lizard_Fei(T_a = 20, T_g = 27, S = 1300, lw = 60, shade = 0.5, m = 10.5, Acondfact = 0.1, Agradfact = 0.3)
Tb_lizard_Fei(T_a = 20, T_g = 27, S = 1300, lw = 60, shade = 0.5, m = 10.5, Acondfact = 0.1, Agradfact = 0.3)
The function estimates body temperature (C, operative environmental temperature) of a mussel. The function implements a steady-state model, which assumes unchanging environmental conditions.
Tb_mussel(l, h, T_a, T_g, S, k_d, u, psi, cl, evap = FALSE, group = "solitary")
Tb_mussel(l, h, T_a, T_g, S, k_d, u, psi, cl, evap = FALSE, group = "solitary")
l |
|
h |
|
T_a |
|
T_g |
|
S |
|
k_d |
|
u |
|
psi |
|
cl |
|
evap |
|
group |
|
Thermal radiative flux is calculated following Helmuth (1998), Helmuth (1999), and Idso and Jackson (1969).
numeric
predicted body (operative environmental) temperature (C).
Helmuth B (1999).
“Thermal biology of rocky intertidal mussels: quantifying body temperatures using climatological data.”
Ecology, 80(1), 15-34.
doi:10.2307/176977.
Helmuth BST (1998).
“Intertidal Mussel Microclimates: Predicting the Body Temperature of a Sessile Invertebrate.”
Ecological Monographs, 68(1), 51–74.
ISSN 00129615, doi:10.2307/2657143.
Idso SB, Jackson RD (1969).
“Thermal radiation from the atmosphere.”
Journal of Geophysical Research (1896-1977), 74(23), 5397-5403.
doi:10.1029/JC074i023p05397.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_mussel(l = 0.1, h = 0.05, T_a = 25, T_g = 30, S = 500, k_d = 0.2, u = 2, psi = 30, evap = FALSE, cl = 0.5, group = "solitary")
Tb_mussel(l = 0.1, h = 0.05, T_a = 25, T_g = 30, S = 500, k_d = 0.2, u = 2, psi = 30, evap = FALSE, cl = 0.5, group = "solitary")
The function estimates the humid body temperature (C, operative environmental temperature) using an adaptation of Campbell and Norman (1998) described in Riddell et al. (2018).
Tb_salamander_humid(r_i, r_b, D, T_a, elev, e_a, e_s, Qabs, epsilon = 0.96)
Tb_salamander_humid(r_i, r_b, D, T_a, elev, e_a, e_s, Qabs, epsilon = 0.96)
r_i |
|
r_b |
|
D |
|
T_a |
|
elev |
|
e_a |
|
e_s |
|
Qabs |
|
epsilon |
|
numeric
humid operative temperature (C).
Eric Riddell
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Riddell EA, Odom JP, Damm JD, Sears MW (2018).
“Plasticity reveals hidden resistance to extinction under climate change in the global hotspot of salamander diversity.”
Science Advances, 4(4).
doi:10.1126/sciadv.aar5471.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_snail()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_salamander_humid(r_i = 4, r_b = 1, D = 0.01, T_a = 20, elev = 500, e_a = 2.0, e_s = 2.5, Qabs = 400, epsilon = 0.96)
Tb_salamander_humid(r_i = 4, r_b = 1, D = 0.01, T_a = 20, elev = 500, e_a = 2.0, e_s = 2.5, Qabs = 400, epsilon = 0.96)
The function estimates body temperature (C, operative environmental temperature) of a marine snail. The function implements a steady-state model, which assumes unchanging environmental conditions and is based on (Iacarella and Helmuth 2012). Body temperature and desiccation constrain the activity of Littoraria irrorata within the Spartina alterniflora canopy. The function was provided by Brian Helmuth and is a simplified version of the published model.
Tb_snail(temp, l, S, u, CC, WL, WSH)
Tb_snail(temp, l, S, u, CC, WL, WSH)
temp |
|
l |
|
S |
|
u |
|
CC |
|
WL |
|
WSH |
|
Thermal radiative flux is calculated following Helmuth (1998), Helmuth (1999), and Idso and Jackson (1969).
numeric
predicted body (operative environmental) temperature (C).
Brian Helmuth et al.
Helmuth B (1999).
“Thermal biology of rocky intertidal mussels: quantifying body temperatures using climatological data.”
Ecology, 80(1), 15-34.
doi:10.2307/176977.
Helmuth BST (1998).
“Intertidal Mussel Microclimates: Predicting the Body Temperature of a Sessile Invertebrate.”
Ecological Monographs, 68(1), 51–74.
ISSN 00129615, doi:10.2307/2657143.
Iacarella J, Helmuth B (2012).
“Body temperature and desiccation constrain the activity of Littoraria irrorata within the Spartina alterniflora canopy.”
Journal of Thermal Biology, 37(1).
doi:10.1016/j.jtherbio.2011.10.003.
Idso SB, Jackson RD (1969).
“Thermal radiation from the atmosphere.”
Journal of Geophysical Research (1896-1977), 74(23), 5397-5403.
doi:10.1029/JC074i023p05397.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tbed_mussel()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tb_snail(temp = 25, l = 0.012, S = 800, u = 1, CC = 0.5, WL = 0, WSH = 10)
Tb_snail(temp = 25, l = 0.012, S = 800, u = 1, CC = 0.5, WL = 0, WSH = 10)
The function estimates body temperature of a mussel (C). The function implements a steady-state model, which assumes unchanging environmental conditions. Based on Helmuth (1999).
Tbed_mussel(l, T_a, S, k_d, u, evap = FALSE, cl = NA)
Tbed_mussel(l, T_a, S, k_d, u, evap = FALSE, cl = NA)
l |
|
T_a |
|
S |
|
k_d |
|
u |
|
evap |
|
cl |
|
Conduction is considered negligible due to a small area of contact.
Thermal radiative flux is calculated following Helmuth (1998), Helmuth (1999), and Idso and Jackson (1969).
numeric
predicted body (operative environmental) temperature (C).
Helmuth B (1999).
“Thermal biology of rocky intertidal mussels: quantifying body temperatures using climatological data.”
Ecology, 80(1), 15-34.
doi:10.2307/176977.
Helmuth BST (1998).
“Intertidal Mussel Microclimates: Predicting the Body Temperature of a Sessile Invertebrate.”
Ecological Monographs, 68(1), 51–74.
ISSN 00129615, doi:10.2307/2657143.
Idso SB, Jackson RD (1969).
“Thermal radiation from the atmosphere.”
Journal of Geophysical Research (1896-1977), 74(23), 5397-5403.
doi:10.1029/JC074i023p05397.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tsoil()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tbed_mussel(l = 0.1, T_a = 25, S = 500, k_d = 0.2, u = 1, evap = FALSE)
Tbed_mussel(l = 0.1, T_a = 25, S = 500, k_d = 0.2, u = 1, evap = FALSE)
The function converts temperatures among Celsius, Fahrenheit, and Kelvin (J. Blischak et al. 2016).
fahrenheit_to_kelvin(temperature) kelvin_to_celsius(temperature) celsius_to_kelvin(temperature) fahrenheit_to_celsius(temperature)
fahrenheit_to_kelvin(temperature) kelvin_to_celsius(temperature) celsius_to_kelvin(temperature) fahrenheit_to_celsius(temperature)
temperature |
|
numeric
temperature (Celsius, Fahrenheit, or Kelvin).
J. Blischak, D. Chen, H. Dashnow, Haine D (2016). Software Carpentry: Programming with R. doi:10.5281/zenodo.57541, Version 2016.06, June 2016.
Other utility functions:
airpressure_from_elev()
,
azimuth_angle()
,
day_of_year()
,
daylength()
,
dec_angle()
,
solar_noon()
,
zenith_angle()
kelvin_to_celsius(temperature = 270) fahrenheit_to_kelvin(temperature = 85) fahrenheit_to_celsius(temperature = 85) celsius_to_kelvin(temperature = -10)
kelvin_to_celsius(temperature = 270) fahrenheit_to_kelvin(temperature = 85) fahrenheit_to_celsius(temperature = 85) celsius_to_kelvin(temperature = -10)
The function constructs a thermal performance curve by combining as a Gaussian function to describe the rise in performance up to the optimal temperature and a quadratic decline to zero performance at critical thermal maxima and higher temperatures (Deutsch et al. 2008).
TPC(T_b, T_opt, CT_min, CT_max)
TPC(T_b, T_opt, CT_min, CT_max)
T_b |
|
T_opt |
|
CT_min , CT_max
|
|
performance
Deutsch CA, Tewksbury JJ, Huey RB, Sheldon KS, Ghalambor CK, Haak DC, Martin PR (2008). “Impacts of climate warming on terrestrial ectotherms across latitude.” Proceedings of the National Academy of Science of the United States of America, 105, 6668-6672. doi:10.1073/pnas.0709472105.
TPC(T_b = 0:60, T_opt = 30, CT_min = 10, CT_max = 40)
TPC(T_b = 0:60, T_opt = 30, CT_min = 10, CT_max = 40)
The function constructs a thermal performance curve based on a beta function (Asbury and Angilletta 2010).
TPC_beta(T_b, shift = -1, breadth = 0.1, aran = 0, tolerance = 43, skew = 0.7)
TPC_beta(T_b, shift = -1, breadth = 0.1, aran = 0, tolerance = 43, skew = 0.7)
T_b |
|
shift |
|
breadth |
|
aran |
|
tolerance |
|
skew |
|
numeric
performance.
Asbury DA, Angilletta MJ (2010). “Thermodynamic effects on the evolution of performance curves.” American Naturalist, 176(2), E40-E49. doi:10.1086/653659.
TPC_beta(T_b = 0:60, shift = -1, breadth = 0.1, aran = 0, tolerance = 43, skew = 0.7)
TPC_beta(T_b = 0:60, shift = -1, breadth = 0.1, aran = 0, tolerance = 43, skew = 0.7)
The function estimates soil temperature (C) at a given depth and hour by approximating diurnal variation as sinusoidal. The function is adapted from Campbell and Norman (1998) and described in Riddell et al. (2018).
Tsoil(T_g_max, T_g_min, hour, depth)
Tsoil(T_g_max, T_g_min, hour, depth)
T_g_max |
|
T_g_min |
|
hour |
|
depth |
|
numeric
soil temperature (C).
Eric Riddell
Campbell GS, Norman JM (1998).
Introduction to environmental biophysics, 2nd ed. edition.
Springer, New York.
ISBN 0387949372.
Riddell EA, Odom JP, Damm JD, Sears MW (2018).
“Plasticity reveals hidden resistance to extinction under climate change in the global hotspot of salamander diversity.”
Science Advances, 4(4).
doi:10.1126/sciadv.aar5471.
Other biophysical models:
Grashof_number_Gates()
,
Grashof_number()
,
Nusselt_from_Grashof()
,
Nusselt_from_Reynolds()
,
Nusselt_number()
,
Prandtl_number()
,
Qconduction_animal()
,
Qconduction_substrate()
,
Qconvection()
,
Qemitted_thermal_radiation()
,
Qevaporation()
,
Qmetabolism_from_mass_temp()
,
Qmetabolism_from_mass()
,
Qnet_Gates()
,
Qradiation_absorbed()
,
Qthermal_radiation_absorbed()
,
Reynolds_number()
,
T_sky()
,
Tb_CampbellNorman()
,
Tb_Gates2()
,
Tb_Gates()
,
Tb_butterfly()
,
Tb_grasshopper()
,
Tb_limpetBH()
,
Tb_limpet()
,
Tb_lizard_Fei()
,
Tb_lizard()
,
Tb_mussel()
,
Tb_salamander_humid()
,
Tb_snail()
,
Tbed_mussel()
,
actual_vapor_pressure()
,
boundary_layer_resistance()
,
external_resistance_to_water_vapor_transfer()
,
free_or_forced_convection()
,
heat_transfer_coefficient_approximation()
,
heat_transfer_coefficient_simple()
,
heat_transfer_coefficient()
,
saturation_vapor_pressure()
,
saturation_water_vapor_pressure()
Tsoil(T_g_max = 30, T_g_min = 15, hour = 12, depth = 5)
Tsoil(T_g_max = 30, T_g_min = 15, hour = 12, depth = 5)
The function calculates saturation vapor pressure for a given air temperature. The program is based on equations from List (1971) and code implementation from NicheMapR (Kearney and Porter 2017; Kearney and Porter 2020).
VAPPRS(db)
VAPPRS(db)
db |
|
esat numeric
Saturation vapor pressure (Pa)
Kearney MR, Porter WP (2017).
“NicheMapR - an R package for biophysical modelling: the microclimate model.”
Ecography, 40, 664-674.
doi:10.1111/ecog.02360.
Kearney MR, Porter WP (2020).
“NicheMapR - an R package for biophysical modelling: the ectotherm and Dynamic Energy Budget models.”
Ecography, 43(1), 85-96.
doi:10.1111/ecog.04680.
List RJ (1971).
“Smithsonian Meteorological Tables.”
Smithsonian Miscellaneous Collections, 114(1), 1-527.
https://repository.si.edu/handle/10088/23746.
VAPPRS(db = 30)
VAPPRS(db = 30)
The function estimates volume (m3) from length (m) for a variety of taxa following Mitchell (1976).
volume_from_length(l, taxon)
volume_from_length(l, taxon)
l |
|
taxon |
|
Relationships come from
Lizards: Norris (1965)
Frogs: Tracy (1972)
Sphere: Mitchell (1976)
numeric
volume (m3).
Mitchell JW (1976).
“Heat transfer from spheres and other animal forms.”
Biophysical Journal, 16(6), 561-569.
ISSN 0006-3495, doi:10.1016/S0006-3495(76)85711-6.
Norris KS (1965).
“Color adaptation in desert reptiles and its thermal relationships.”
In Symposium on Lizard Ecology, 162- 229.
U. Missouri Press.
Tracy CR (1972).
“Newton's Law: Its Application for Expressing Heat Losses from Homeotherms.”
BioScience, 22(11), 656-659.
ISSN 0006-3568, doi:10.2307/1296267.
Other allometric functions:
mass_from_length()
,
proportion_silhouette_area_shapes()
,
proportion_silhouette_area()
,
surface_area_from_length()
,
surface_area_from_mass()
,
surface_area_from_volume()
volume_from_length(l = 0.05, taxon = "lizard") volume_from_length(l = 0.05, taxon = "frog") volume_from_length(l = 0.05, taxon = "sphere")
volume_from_length(l = 0.05, taxon = "lizard") volume_from_length(l = 0.05, taxon = "frog") volume_from_length(l = 0.05, taxon = "sphere")
The function calculates several properties of humid air described as output variables below. The program is based on equations from List (1971) and code implementation from NicheMapR (Kearney and Porter 2017; Kearney and Porter 2020).
WETAIR must be used in conjunction with VAPPRS
. Input variables are shown below. See Details.
WETAIR(db, wb = db, rh = 0, dp = 999, bp = 101325)
WETAIR(db, wb = db, rh = 0, dp = 999, bp = 101325)
db |
|
wb |
|
rh |
|
dp |
|
bp |
|
The user must supply known values for DB and BP (BP at one standard atmosphere is 101,325 pascals). Values for the remaining variables are determined by whether the user has either (1) psychrometric data (WB or RH), or (2) hygrometric data (DP):
Psychrometric data: If WB is known but not RH, then set RH = -1 and DP = 999. If RH is known but not WB then set WB = 0 and DP = 999
Hygrometric data: If DP is known, set WB = 0 and RH = 0
Named list
with elements
e
: numeric
saturation vapor pressure (Pa)
vd
: numeric
vapor density (kg m-3)
rw
: numeric
mixing ratio (kg kg-1)
tvir
: numeric
virtual temperature (K)
tvinc
: numeric
virtual temperature increment (K)
denair
: numeric
density of the air (kg m-3)
cp
: numeric
specific heat of air at constant pressure (J kg-1 K-1)
wtrpot
: numeric
water potential (Pa)
rh
: numeric
relative humidity (%)
Kearney MR, Porter WP (2017).
“NicheMapR - an R package for biophysical modelling: the microclimate model.”
Ecography, 40, 664-674.
doi:10.1111/ecog.02360.
Kearney MR, Porter WP (2020).
“NicheMapR - an R package for biophysical modelling: the ectotherm and Dynamic Energy Budget models.”
Ecography, 43(1), 85-96.
doi:10.1111/ecog.04680.
List RJ (1971).
“Smithsonian Meteorological Tables.”
Smithsonian Miscellaneous Collections, 114(1), 1-527.
https://repository.si.edu/handle/10088/23746.
WETAIR(db = 30, wb = 28, rh = 60, bp = 100 * 1000)
WETAIR(db = 30, wb = 28, rh = 60, bp = 100 * 1000)
The function calculates wind speed (m s-1) at a specified height (m) within a boundary layer near the surface. The profile assumes neutral conditions. The velocity profile is the neutral profile described by Sellers (1965). Function is equations (2) and (3) of Porter et al. (1973).
wind_speed_profile_neutral(u_r, zr, z0, z)
wind_speed_profile_neutral(u_r, zr, z0, z)
u_r |
|
zr |
|
z0 |
|
z |
|
numeric
windspeed (m s-1).
Porter WP, Mitchell JW, Bekman A, DeWitt CB (1973).
“Behavioral implications of mechanistic ecology: thermal and behavioral modeling of desert ectotherms and their microenvironments.”
Oecologia, 13, 1-54.
Sellers WD (1965).
Physical climatology.
University of Chicago Press, Chicago, IL, USA.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_segment()
wind_speed_profile_neutral(u_r = 0.1, zr = 0.1, z0 = 0.2, z = 0.15)
wind_speed_profile_neutral(u_r = 0.1, zr = 0.1, z0 = 0.2, z = 0.15)
The function calculates wind speed (m s-1) at a specified height (m). The function estimates a three segment velocity and temperature profile based on user-specified, experimentally determined values for 3 roughness heights and reference heights. Multiple heights are appropriate in heterogenous areas with, for example, a meadow, bushes, and rocks. Implements the MICROSEGMT routine from NicheMapR as described in Kearney and Porter (2017).
wind_speed_profile_segment(u_r, zr, z0, z)
wind_speed_profile_segment(u_r, zr, z0, z)
u_r |
|
zr |
|
z0 |
|
z |
|
numeric
wind speed (m s-1).
Kearney MR, Porter WP (2017). “NicheMapR - an R package for biophysical modelling: the microclimate model.” Ecography, 40, 664-674. doi:10.1111/ecog.02360.
Other microclimate functions:
air_temp_profile_neutral()
,
air_temp_profile_segment()
,
air_temp_profile()
,
degree_days()
,
direct_solar_radiation()
,
diurnal_radiation_variation()
,
diurnal_temp_variation_sineexp()
,
diurnal_temp_variation_sinesqrt()
,
diurnal_temp_variation_sine()
,
monthly_solar_radiation()
,
partition_solar_radiation()
,
proportion_diffuse_solar_radiation()
,
solar_radiation()
,
surface_roughness()
,
wind_speed_profile_neutral()
wind_speed_profile_segment(u_r = c(0.01, 0.025, 0.05), zr = c(0.05, 0.25, 0.5), z0 = c(0.01, 0.15, 0.2), z = 0.3)
wind_speed_profile_segment(u_r = c(0.01, 0.025, 0.05), zr = c(0.05, 0.25, 0.5), z0 = c(0.01, 0.15, 0.2), z = 0.3)
The function calculates the zenith angle, the location of the sun as an angle (in degrees) measured from vertical (Campbell and Norman 1998).
zenith_angle(doy, lat, lon, hour, offset = NA)
zenith_angle(doy, lat, lon, hour, offset = NA)
doy |
|
lat |
|
lon |
|
hour |
|
offset |
|
numeric
zenith angle (degrees)
Campbell GS, Norman JM (1998). Introduction to environmental biophysics, 2nd ed. edition. Springer, New York. ISBN 0387949372.
Other utility functions:
airpressure_from_elev()
,
azimuth_angle()
,
day_of_year()
,
daylength()
,
dec_angle()
,
solar_noon()
,
temperature conversions
zenith_angle(doy = 112, lat = 47.61, lon = -122.33, hour = 12)
zenith_angle(doy = 112, lat = 47.61, lon = -122.33, hour = 12)