Function to remove cosmic rays from an RLum.Data.Spectrum S4 class object
Source:R/apply_CosmicRayRemoval.R
apply_CosmicRayRemoval.Rd
The function provides several methods for cosmic-ray removal and spectrum smoothing RLum.Data.Spectrum objects and such objects embedded in list or RLum.Analysis objects.
Usage
apply_CosmicRayRemoval(
object,
method = "smooth",
method.Pych.smoothing = 2,
method.Pych.threshold_factor = 3,
MARGIN = 2,
verbose = FALSE,
plot = FALSE,
...
)
Arguments
- object
RLum.Data.Spectrum or RLum.Analysis (required): input object to be treated. This can be also provided as list. If an RLum.Analysis object is provided, only the RLum.Data.Spectrum objects are treated. Please note: this mixing of objects does not work for a list of
RLum.Data
objects.- method
character (with default): Defines method that is applied for cosmic ray removal. Allowed methods are
smooth
, the default, (stats::smooth),smooth.spline
(stats::smooth.spline),smooth_RLum
(smooth_RLum) andPych
. See details for further information.- method.Pych.smoothing
integer (with default): Smoothing parameter for cosmic ray removal according to Pych (2003). The value defines how many neighbouring values in each frame are used for smoothing (e.g.,
2
means that the two previous and two following values are used).- method.Pych.threshold_factor
numeric (with default): Threshold for zero-bins in the histogram. Small values mean that more peaks are removed, but signal might be also affected by this removal.
- MARGIN
integer (with default): on which part the function cosmic ray removal should be applied on:
1 = along the time axis (line by line),
2 = along the wavelength axis (column by column).
Note: This argument currently only affects the methods
smooth
andsmooth.spline
- verbose
logical (with default): enable/disable output to the terminal.
- plot
logical (with default): If
TRUE
the histograms used for the cosmic-ray removal are returned as plot including the used threshold. Note: A separate plot is returned for each frame! Currently only formethod = "Pych"
a graphical output is provided.- ...
further arguments and graphical parameters that will be passed to the stats::smooth, stats::smooth.spline or smooth_RLum. See details for more information.
Details
method = "Pych"
This method applies the cosmic-ray removal algorithm described by Pych (2003). Some aspects that are different to the publication:
For interpolation between neighbouring values the median and not the mean is used.
The number of breaks to construct the histogram is set to:
length(number.of.input.values)/2
For further details see references below.
Other methods
Arguments supported through ...
METHOD | ARGUMENT | TYPE | REMARKS |
"smooth" | kind | character | see stats::smooth |
twiceit | logical | see stats::smooth | |
"smooth.spline" | spar | numeric | see stats::smooth.spline |
"smooth_RLum" | k | numeric | see smooth_RLum |
fill | numeric | see smooth_RLum | |
align | character | see smooth_RLum | |
method | character | see smooth_RLum |
Best practice
There is no single silver-bullet-strategy for the cosmic-ray removal, because it depends on the characteristic of the detector and the chosen settings. For instance, high values for pixel binning will improve the light output, but also causes multiple pixels being affected a single cosmic-ray. The same is valid for longer integration times. The best strategy is to combine methods and ensure that the spectrum is not distorted on a case-to-case basis.
How to combine methods?
Different methods can be combined by applying the method repeatedly to the dataset (see example).
How to cite
Kreutzer, S., 2025. apply_CosmicRayRemoval(): Function to remove cosmic rays from an RLum.Data.Spectrum S4 class object. Function version 0.4.0. In: Kreutzer, S., Burow, C., Dietze, M., Fuchs, M.C., Schmidt, C., Fischer, M., Friedrich, J., Mercier, N., Philippe, A., Riedesel, S., Autzen, M., Mittelstrass, D., Gray, H.J., Galharret, J., Colombo, M., Steinbuch, L., Boer, A.d., 2025. Luminescence: Comprehensive Luminescence Dating Data Analysis. R package version 1.0.0. https://r-lum.github.io/Luminescence/
References
Pych, W., 2004. A Fast Algorithm for Cosmic-Ray Removal from Single Images. The Astronomical Society of the Pacific 116 (816), 148-153. doi:10.1086/381786
Author
Sebastian Kreutzer, Institute of Geography, Heidelberg University (Germany) , RLum Developer Team
Examples
##(1) - use with your own data and combine (uncomment for usage)
## run two times the default method and smooth with another method
## your.spectrum <- apply_CosmicRayRemoval(your.spectrum, method = "Pych")
## your.spectrum <- apply_CosmicRayRemoval(your.spectrum, method = "Pych")
## your.spectrum <- apply_CosmicRayRemoval(your.spectrum, method = "smooth")