Learn R Programming

albatross (version 0.3-8)

feemife: Absorbance-based inner filter effect correction

Description

Use absorbance data to correct inner-filter effect in FEEM objects and collections of them.

Usage

feemife(x, ...)
  # S3 method for feem
feemife(x, absorbance, abs.path = 1, ...)
  # S3 method for feemcube
feemife(x, absorbance, abs.path, ..., progress = FALSE)
  # S3 method for list
feemife(x, absorbance, abs.path, ..., progress = FALSE)

Value

An object of the same kind as x, with inner filter effect corrected.

Arguments

x

A FEEM object, a FEEM data cube, or a list of them.

absorbance

If x is a FEEM object: a two-column matrix-like object containing the absorbance spectrum of the sample: the wavelengths in the first column and the unitless absorbance values in the second column.

Otherwise, this could be a list of such objects or a multi-column matrix-like object. If x contains names of the samples (is a named list or had names specified when calling feemcube), absorbance is a named list or has named columns, and all samples from x can be looked up in absorbance, results of this lookup are used. If x or absorbance isn't named, but (given \(N\)-sample x) absorbance has exactly \(N+1\) columns or is an \(N\)-element list, absorbance spectra are assumed to be present in the same order as the samples in x. Otherwise, an error is raised.

abs.path

If x is a FEEM object, a number specifying the length of the optical path used when measuring the absorbance, cm.

Otherwise, a named vector containing the names from x, or a vector of exactly same length as the number of FEEMs in x: same lookup rules apply as for absorbance argument.

If not set, assumed to be \(1\).

progress

Set to TRUE to enable a progress bar (implemented via txtProgressBar).

...

No parameters besides those described above are allowed.

Details

If you receive errors alleging that some names don't match, but are absolutely sure that the absorbance spectra and path lengths are present in the same order as in x, remove the names from either of the objects, e.g. by passing unname(absorbance).

The formula used to correct for inner filter effect is:

$$ I_\mathrm{corr}(\lambda_\mathrm{em}, \lambda_\mathrm{ex}) = I_\mathrm{orig}(\lambda_\mathrm{em}, \lambda_\mathrm{ex}) 10^{ \frac{A(\lambda_\mathrm{em}) + A(\lambda_\mathrm{ex})}{2 L_\mathrm{abs}} } $$

References

albatross:::.Rdreference('Lakowicz2006')

albatross:::.Rdreference('Kothawala2013')

Examples

Run this code
  data(feems)

  str(cube)
  str(absorp)
  plot(feemife(cube,absorp) / cube)

Run the code above in your browser using DataLab