photobiology (version 0.11.2)

irrad: Irradiance

Description

This function returns the irradiance for a given waveband of a light source spectrum.

Usage

irrad(
  spct,
  w.band,
  unit.out,
  quantity,
  time.unit,
  scale.factor,
  wb.trim,
  use.cached.mult,
  use.hinges,
  allow.scaled,
  ...
)

# S3 method for default irrad( spct, w.band, unit.out, quantity, time.unit, scale.factor, wb.trim, use.cached.mult, use.hinges, allow.scaled, ... )

# S3 method for source_spct irrad( spct, w.band = NULL, unit.out = getOption("photobiology.radiation.unit", default = "energy"), quantity = "total", time.unit = NULL, scale.factor = 1, wb.trim = getOption("photobiology.waveband.trim", default = TRUE), use.cached.mult = getOption("photobiology.use.cached.mult", default = FALSE), use.hinges = NULL, allow.scaled = !quantity %in% c("average", "mean", "total"), naming = "default", return.tb = FALSE, ... )

# S3 method for source_mspct irrad( spct, w.band = NULL, unit.out = getOption("photobiology.radiation.unit", default = "energy"), quantity = "total", time.unit = NULL, scale.factor = 1, wb.trim = getOption("photobiology.waveband.trim", default = TRUE), use.cached.mult = getOption("photobiology.use.cached.mult", default = FALSE), use.hinges = NULL, allow.scaled = !quantity %in% c("average", "mean", "total"), naming = "default", ..., attr2tb = NULL, idx = "spct.idx", .parallel = FALSE, .paropts = NULL )

Value

A named numeric vector in the case of a _spct object containing a single spectrum and return.tb = FALSE. The vector has one member one value for each waveband passed to parameter

w.band. In all other cases a tibble, containing one column for each waveband object, an index column with the names of the spectra, and optionally additional columns with metadata values retrieved from the attributes of the member spectra.

If naming = "long" the names generated reflect both quantity and waveband, if naming = "short", names are based only on the wavebands, and if naming = "none" the returned vector has no names.

By default values are only integrated, but depending on the argument passed to parameter quantity they can be re-expressed as relative fractions or percentages. In the case of vector output, names attribute is set to the name of the corresponding waveband unless a named list is supplied in which case the names of the list members are used. The time.unit

attribute is copied from the spectrum object to the output. Units are as follows: If time.unit is second, [W m-2 nm-1] -> [mol s-1 m-2] or [W m-2 nm-1] -> [W m-2] If time.unit is day, [J d-1 m-2 nm-1] -> [mol d-1 m-2] or [J d-1 m-2 nm-1] -> [J m-2]

Arguments

spct

an R object.

w.band

waveband or list of waveband objects The waveband(s) determine the region(s) of the spectrum that are summarized.

unit.out

character Allowed values "energy", and "photon", or its alias "quantum".

quantity

character string One of "total", "average" or "mean", "contribution", "contribution.pc", "relative" or "relative.pc".

time.unit

character or lubridate::duration object.

scale.factor

numeric vector of length 1, or length equal to that of w.band. Numeric multiplier applied to returned values.

wb.trim

logical if TRUE wavebands crossing spectral data boundaries are trimmed, if FALSE, they are discarded.

use.cached.mult

logical indicating whether multiplier values should be cached between calls.

use.hinges

logical Flag indicating whether to insert "hinges" into the spectral data before integration so as to reduce interpolation errors at the boundaries of the wavebands. If NULL, default is chosen based on data.

allow.scaled

logical indicating whether scaled or normalized spectra as argument to spct are flagged as an error.

...

other arguments (possibly ignored)

naming

character one of "long", "default", "short" or "none". Used to select the type of names to assign to returned value.

return.tb

logical Flag forcing a tibble to be always returned, even for a single spectrum as argumnet to spct. The default is FALSE for backwards compatibility.

attr2tb

character vector, see add_attr2tb for the syntax for attr2tb passed as is to formal parameter col.names.

idx

character Name of the column with the names of the members of the collection of spectra.

.parallel

if TRUE, apply function in parallel, using parallel backend provided by foreach.

.paropts

a list of additional options passed into the foreach function when parallel computation is enabled. This is important if (for example) your code relies on external data or packages: use the .export and .packages arguments to supply them so that all cluster nodes have the correct environment set up for computing.

Methods (by class)

  • irrad(default): Default for generic function

  • irrad(source_spct): Calculates irradiance from a source_spct object.

  • irrad(source_mspct): Calculates irradiance from a source_mspct object.

See Also

Other irradiance functions: e_fluence(), e_irrad(), fluence(), q_fluence(), q_irrad()

Examples

Run this code
irrad(sun.spct, waveband(c(400,700)))
irrad(sun.spct, waveband(c(400,700)), "energy")
irrad(sun.spct, waveband(c(400,700)), "photon")
irrad(sun.spct, split_bands(c(400,700), length.out = 3))
irrad(sun.spct, split_bands(c(400,700), length.out = 3), quantity = "total")
irrad(sun.spct, split_bands(c(400,700), length.out = 3), quantity = "average")
irrad(sun.spct, split_bands(c(400,700), length.out = 3), quantity = "relative")
irrad(sun.spct, split_bands(c(400,700), length.out = 3), quantity = "relative.pc")
irrad(sun.spct, split_bands(c(400,700), length.out = 3), quantity = "contribution")
irrad(sun.spct, split_bands(c(400,700), length.out = 3), quantity = "contribution.pc")

Run the code above in your browser using DataLab