Method to compute the "parallel" product of values across members of a collection of spectra or of a spectral object containing multiple spectra in long form.
Usage
s_prod(x, na.rm, ...)
# Default S3 method
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'generic_spct'
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'source_mspct'
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'response_mspct'
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'filter_mspct'
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'reflector_mspct'
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'calibration_mspct'
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'cps_mspct'
s_prod(x, na.rm = FALSE, ...)
# S3 method for class 'raw_mspct'
s_prod(x, na.rm = FALSE, ...)Value
If x is a collection spectral of objects, such as a
"filter_mspct" object, the returned object belongs to the same class
as the members of the collection, such as "filter_spct", containing
the summary spectrum, with variables with names tagged for summaries other
than mean or median.
Details
Method specializations compute the product at each wavelength across
a group of spectra stored in an object of one of the classes defined in
package 'photobiology'. Omission of NAs is done separately at each
wavelength. Interpolation is not applied, so all spectra in x must
share the same set of wavelengths. An error is triggered if this condition
is nor fulfilled.
Note
The product operation is meaningful only for certain physical quantities or bases of expression.
Examples
s_prod(two_filters.mspct)
#> Object: filter_spct [561 x 2]
#> Wavelength range 240-800 nm, step 1 nm
#> Label: Product of 2 filter_spct objects.
#> Polyester, clear film, 0.000125 m thick, Autostat CT5 from McDermit Autotype; new
#> Theatrical 'gel', type 'Canary Supergel no312; new; from Rosco, UK
#>
#> Rfr (/1): NA, thickness (mm): NA, attenuation mode: NA.
#> Variables:
#> w.length: Wavelength [nm]
#> Tfr: Total spectral transmittance [/1]
#> --
#> # A tibble: 561 × 2
#> w.length Tfr
#> <int> <dbl>
#> 1 240 0.0000000482
#> 2 241 0.0000000464
#> 3 242 0.0000000446
#> 4 243 0.0000000429
#> 5 244 0.0000000414
#> 6 245 0.0000000400
#> 7 246 0.0000000400
#> 8 247 0.0000000400
#> 9 248 0.0000000400
#> 10 249 0.0000000400
#> # ℹ 551 more rows
