Skip to contents

This function automates downloading and importing CRU CL v. 2.0 climatology data into R and creates a list of terra rast of the data. If requested, minimum and maximum temperature may also be automatically calculated as described in the data readme.txt file. Data may be cached for later use by this function, saving time downloading files in future use of the function.

Nomenclature and units from readme.txt:

pre

precipitation (millimetres/month)

rd0

wet-days (number days with >0.1mm rain per month)

tmp

mean temperature (degrees Celsius)

dtr

mean diurnal temperature range (degrees Celsius)

reh

relative humidity (percent)

sunp

sunshine (percent of maximum possible (percent of day length))

frs

ground-frost (number of days with ground-frost per month)

wnd

10 metre windspeed (metres/second)

elv

elevation (automatically converted to metres)

For more information see the description of the data provided by CRU, https://crudata.uea.ac.uk/cru/data/hrg/tmc/readme.txt

Usage

get_CRU_stack(
  pre = FALSE,
  pre_cv = FALSE,
  rd0 = FALSE,
  tmp = FALSE,
  dtr = FALSE,
  reh = FALSE,
  tmn = FALSE,
  tmx = FALSE,
  sunp = FALSE,
  frs = FALSE,
  wnd = FALSE,
  elv = FALSE,
  cache = FALSE
)

Arguments

pre

Logical. Fetch precipitation (millimetres/month) from server and return in the data frame? Defaults to FALSE.

pre_cv

Logical. Fetch cv of precipitation (percent) from server and return in the data frame? Defaults to FALSE. NOTE. Setting this to TRUE will always results in pre being set to TRUE and returned as well.

rd0

Logical. Fetch wet-days (number days with >0.1millimetres rain per month) and return in the data frame? Defaults to FALSE.

tmp

Logical. Fetch temperature (degrees Celsius) and return it in the data frame? Defaults to FALSE.

dtr

Logical. Fetch mean diurnal temperature range (degrees Celsius) and return it in the data frame? Defaults to FALSE.

reh

Logical. Fetch relative humidity and return it in the data frame? Defaults to FALSE.

tmn

Logical. Calculate minimum temperature values (degrees Celsius) and return it in the data frame? Defaults to FALSE.

tmx

Logical. Calculate maximum temperature (degrees Celsius) and return it in the data frame? Defaults to FALSE.

sunp

Logical. Fetch sunshine, percent of maximum possible (percent of day length) and return it in data frame? Defaults to FALSE.

frs

Logical. Fetch ground-frost records (number of days with ground- frost per month) and return it in data frame? Defaults to FALSE.

wnd

Logical. Fetch 10m wind speed (metres/second) and return it in the data frame? Defaults to FALSE.

elv

Logical. Fetch elevation (converted to metres) and return it in the data frame? Defaults to FALSE.

cache

Logical. Store CRU CL v. 2.0 data files locally for later use? If FALSE, the downloaded files are removed when R session is closed. To take advantage of cached files in future sessions, use cache = TRUE after the initial download and caching. Defaults to FALSE.

Value

A list of terra

rast objects of CRU CL v. 2.0 climatology elements

Note

This package automatically converts elevation values from kilometres to metres.

This package crops all spatial outputs to an extent of ymin = -60, ymax = 85, xmin = -180, xmax = 180. Note that the original wind data include land area for parts of Antarctica, these data are excluded in the terra rast objects generated by this function.

Author

Adam H. Sparks, adamhsparks@gmail.com

Examples

# \donttest{
# Download data and create a \code{\link{terra}} \code{\link[terra]{rast}}
# object of precipitation and temperature without caching the data files
CRU_pre_tmp <- get_CRU_stack(pre = TRUE, tmp = TRUE)

CRU_pre_tmp
#> $pre
#> class       : SpatRaster 
#> dimensions  : 870, 2160, 12  (nrow, ncol, nlyr)
#> resolution  : 0.1666667, 0.1666667  (x, y)
#> extent      : -180, 180, -60, 85  (xmin, xmax, ymin, ymax)
#> coord. ref. : lon/lat WGS 84 
#> source(s)   : memory
#> names       :   jan,   feb,   mar,   apr,  may,    jun, ... 
#> min values  :   0.0,   0.0,   0.0,   0.0,    0,    0.0, ... 
#> max values  : 910.1, 824.3, 727.3, 741.3, 1100, 2512.6, ... 
#> 
#> $tmp
#> class       : SpatRaster 
#> dimensions  : 870, 2160, 12  (nrow, ncol, nlyr)
#> resolution  : 0.1666667, 0.1666667  (x, y)
#> extent      : -180, 180, -60, 85  (xmin, xmax, ymin, ymax)
#> coord. ref. : lon/lat WGS 84 
#> source(s)   : memory
#> names       :   jan,   feb,   mar,   apr,   may,   jun, ... 
#> min values  : -51.6, -47.6, -45.2, -36.6, -22.2, -16.3, ... 
#> max values  :  32.5,  32.1,  32.4,  34.3,  36.0,  38.3, ... 
#> 
# }