Skip to contents

Energy or photon irradiance for one or more wavebands of a radiation spectrum.

Usage

irradiance(
  w.length,
  s.irrad,
  w.band = NULL,
  unit.out = NULL,
  unit.in = "energy",
  check.spectrum = TRUE,
  use.cached.mult = FALSE,
  use.hinges = getOption("photobiology.use.hinges", default = NULL)
)

Arguments

w.length

numeric Vector of wavelength [\(nm\)].

s.irrad

numeric vector of spectral (energy) irradiances [\(W\,m^{-2}\,nm^{-1}\)].

w.band

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

unit.out, unit.in

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

check.spectrum

logical Flag indicating whether to sanity check input data, default is TRUE.

use.cached.mult

logical Flag 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.

Value

A single numeric value or a vector of numeric values with no change in scale factor: [\(mol\,s^{-1}\,sm^{-2}\,nm^{-1}\)] yields [\(mol\,s^{-1}\,sm^{-2}\)]

Note

The last three parameters control speed optimizations. The defaults should be suitable in most cases. If you set check.spectrum=FALSE then you should call check_spectrum() at least once for your spectrum before using any of the other functions. If you will use repeatedly the same SWFs on many spectra measured at exactly the same wavelengths you may obtain some speed up by setting use.cached.mult=TRUE. However, be aware that you are responsible for ensuring that the wavelengths are the same in each call, as the only test done is for the length of the w.length vector. The is no reason for setting use.cpp.code=FALSE other than for testing the improvement in speed, or in cases where there is no suitable C++ compiler for building the package.

Examples


with(sun.data, irradiance(w.length, s.e.irrad, new_waveband(400,700), "photon"))
#> range.400.700 
#>  0.0008941483