lubridate
package, some additional functions
to work with times are provided.This function takes a numeric with a "unit" attribute and converts it to
another numeric with a different time attribute.
If the units passed to argument units
are the same as
attr(time, "unit")
, then it simply returns input time
.
inSeconds(unit, envir)## S3 method for class 'character,environment':
inSeconds(unit, envir)
## S3 method for class '`NULL`,missing':
inSeconds(unit)
## S3 method for class 'character,missing':
inSeconds(unit)
convertTimeunit(time, unit, envir)
## S3 method for class 'numeric,character,environment':
convertTimeunit(time, unit, envir)
## S3 method for class 'numeric,missing,missing':
convertTimeunit(time)
## S3 method for class 'numeric,character,missing':
convertTimeunit(time, unit)
.spadesTimes
spadesTimes()
checkTimeunit(unit, envir)
## S3 method for class 'character,missing':
checkTimeunit(unit, envir)
## S3 method for class 'character,environment':
checkTimeunit(unit, envir)
SpaDES
or user
defined time unit, given as the unit name only. See details.unit
attribute set to
"seconds".character
of length 6.spadesTimes()
function.
The user can define a new unit. The unit name can be anything, but the function
definition must be of the form, "dunitName", e.g., dyear or dfortNight. The unit
name is the part without the d and the function name definition includes the "d".
This new function, e.g., #' dfortNight <- function(x) lubridate::duration(dday(14))
can be placed anywhere in the search path or in a module.Because of R scoping, if envir
is a simList environment, then this function
will search there first, then up the current search() path. Thus, it will find a
user defined or module defined unit before a SpaDEs unit. This means that a user can
override the dyear given in SpaDES, for example, which is 365.25 days, with
dyear <- function(x) lubridate::duration(dday(365))
If time
has no units
attribute, then it is assumed to be
seconds.