GDD {climatrends} | R Documentation |
Growing degree-days
Description
This a heuristic tool in phenology that measures heat accumulation and is used to predict plant and animal development rates. Growing degree-days are calculated by taking the integral of warmth above a base temperature.
Usage
GDD(object, ..., tbase = 10)
## Default S3 method:
GDD(object, tmin, ..., tbase = 10)
## S3 method for class 'data.frame'
GDD(object, day.one, ..., tbase = 10)
## S3 method for class 'array'
GDD(object, day.one, ..., tbase = 10)
## S3 method for class 'sf'
GDD(object, day.one, ..., tbase = 10, as.sf = TRUE)
Arguments
object |
a numeric vector with the maximum temperature,
or a data.frame with geographical coordinates (lonlat),
or an object of class |
... |
additional arguments passed to methods. See details |
tbase |
an integer for the minimum temperature for growth |
tmin |
a numeric vector with the minimum temperature |
day.one |
a vector of class |
as.sf |
logical, to return an object of class 'sf' |
Details
Additional arguments:
equation
character to specify the equation to be used, one of "default"
,
"a"
, "b"
or "c"
. See Equations below
tbase_max
optional, the maximum tbase temperature,
required if equation = "c"
return.as
character (one of, the default, "acc"
or "daily"
,
"ndays"
) to select if the function returns the accumulated gdd, or the
daily values of gdd across the series, or the number of days required to reach a
certain number of degree.days
degree.days
an integer for the accumulated degree-days required by the
organism. Optional if return.as = "daily" or return.as = "acc"
last.day
: an object (optional to span) of class Date
or
any other object that can be coerced to Date
(e.g. integer, character
YYYY-MM-DD) for the last day of the time series. For data.frame
,
array
and sf
methods
span
: an integer (optional to last.day) or a vector with
integers (optional if last.day is given) for the length of
the time series to be captured. For data.frame
, array
and sf
methods
S3 Methods:
The array
method assumes that object contains climate data available
in your R section; this requires an array with two dimensions, 1st dimension
contains the day temperature and 2nd dimension the night temperature,
see help("temp_dat", package = "climatrends") for an example on input structure.
The data.frame
and sf
methods assumes that the climate data
will e fetched from a remote (cloud) source that be adjusted using the argument
data.from
Equations:
"default"
: GDD = ((tmax + tmin) / 2) - tbase
"a"
: adjust tmean = tbase if tmeam < tbase
"b"
: adjust tmin = tbase if tmin < tbase,
adjust tmax = tbase if tmax < tbase
"c"
: adjust tmin = tbase if tmin < tbase,
adjust tmax = tbase_max if tmax < tbase_max
Value
The number of days to reach the accumulated degree.days or the daily degree-days as defined with the argument return.as
References
Prentice I. C., et al. (1992) Journal of Biogeography, 19(2), 117.
Baskerville, G., & Emin, P. (1969). Ecology, 50(3), 514-517. doi:10.2307/1933912
See Also
Other temperature functions:
ETo()
,
crop_sensitive()
,
temperature()
Other GDD functions:
late_frost()
Examples
data("innlandet", package = "climatrends")
# use the default equation
GDD(innlandet$tmax, innlandet$tmin, tbase = 2)
# set the equation "b", which is a better option for this case
# tmin = tbase if tmin < tbase
# tmax = tbase if tmax < tbase
GDD(innlandet$tmax, innlandet$tmin, tbase = 2, equation = "b")
#####################################################
# return as the number of days required to reach a certain accumulated GDD
# use equation "c", which adjusts tmax base on a tbase_max
data("temp_dat", package = "climatrends")
GDD(temp_dat,
day.one = "2013-10-27",
degree.days = 90,
return.as = "ndays",
tbase_max = 32,
equation = "c")