It takes only 4 steps to analyse your SAR luminescence data

by Sebastian Kreutzer & R Luminescence Team (February 21, 2020)

Luminescence >= 0.6.0

Creative Commons License

Creative Commons
Attribution-NonCommercial-NoDerivatives 4.0
International License


Usually R does not cause a lot of frustration, but only if you know how to use it. However, first steps are difficult. To ease the beginning for analysing luminescence data, in 2015 we published a guide (Fuchs et al. 2015) to analyse SAR (Murray and Wintle 2000) data. Since then, ’Luminescence' evolved, today making the luminescence data analysis easier than ever before. By using the example data (SAR, quartz) published along with the article by Fuchs et al. (2015), here again we demonstrate how to analyse the luminescence data with R. In only 4 steps, promised, it was never easier.

Step 1: Load the package ‘Luminescence’

Simple, but indispensable, our first step is loading the R package ’Luminescence':

library(Luminescence)

Step 2: Load and select your data

Without data, no data analysis. We now import the measurement data into R by calling the function read_BIN2R(). The function file.choose() opens an external window to allow are very convenient file selection. The argument fastForward makes sure that the data are directly available in the format we want to have them.

file <- file.choose()
temp <- read_BIN2R(file, fastForward = TRUE)

Not every data set is instantly ready to be analysed, e.g., the data set may contain additional information, which are not needed for the analysis. This is the case for our test data set. As written in Fuchs et al. (2015), only the first 20 aliquots follow the common SAR procedure, i.e. a consecutive sequence of irradiation, heating, OSL (\(L_x\)), irradiation, heating and OSL (\(T_x\)). Therefore, we have to limit our data set to the first 20 aliquots:

temp.sel <- temp[1:20]

Note: Further limitations can be applied by using the function get_RLum(). Type ?get_RLum in your R console to get further information.

Step 3: Run the SAR analysis

Now the data are ready and can be analysed calling the function analyse_SAR.CWOSL:

results <- analyse_SAR.CWOSL(
  object = temp.sel,
  signal.integral.min = 1,
  signal.integral.max = 5,
  background.integral.min = 200,
  background.integral.max = 250,
  fit.method = "EXP",
  rejection.criteria = list(
    recycling.ratio = 10,
    recuperation.rate = 10,
    testdose.error = 10,
    palaeodose.error = 20,
    exceed.max.regpoint = TRUE),
  plot_onePage = TRUE
)
Example output for one aliquot.

Figure 1: Example output for one aliquot.

The graphical output consists of three different plot sets: (A) the preheat curves (here as TL) and the OSL curves used to calculate \(L_{x}/T_{x}\), (B) the dose response curve and (C) a plot showing visualisating the rejection criteria and, if measured, the IRSL curve checking for a potential feldpsar contamination of the quartz sample.

To modify arguments or to understand the meaning of the given arguments, please type ?analyse_SAR.CWOSL in your R console.

The results of the analysis is a complex R object (here named results), which can be used for further analysis.

results
## 
##  [RLum.Results-class]
##   originator: analyse_SAR.CWOSL()
##   data: 4
##       .. $data : data.frame
##   .. $LnLxTnTx.table : data.frame
##   .. $rejection.criteria : data.frame
##   .. $Formula : list
##   additional info elements:  20

To show only the obtained equivalent dose \(D_{e}\) values, the following line needs to be typed on the R console:

head(results$data)
##          De De.Error      D01 D01.ERROR D02 D02.ERROR    De.MC Fit RC.Status
## 1 1195.3066    72.40 2651.342  842.4220  NA        NA 1205.908 EXP        OK
## 2  517.3256    45.63 1759.007  317.8390  NA        NA  519.418 EXP        OK
## 3 1586.1348   254.25 1193.753  326.5909  NA        NA 1641.946 EXP        OK
## 4 2594.8597   430.28 2053.184  638.2911  NA        NA 2661.868 EXP        OK
## 5 1098.9140    74.76 2361.560  748.5487  NA        NA 1116.073 EXP        OK
## 6 1445.5594   140.54 1888.343  688.1423  NA        NA 1458.003 EXP        OK
##   signal.range background.range signal.range.Tx background.range.Tx
## 1        1 : 5        200 : 250         NA : NA             NA : NA
## 2        1 : 5        200 : 250         NA : NA             NA : NA
## 3        1 : 5        200 : 250         NA : NA             NA : NA
## 4        1 : 5        200 : 250         NA : NA             NA : NA
## 5        1 : 5        200 : 250         NA : NA             NA : NA
## 6        1 : 5        200 : 250         NA : NA             NA : NA
##                                  UID
## 1 2020-11-03-03:43.0.739523517899215
## 2 2020-11-03-03:43.0.708020005607978
## 3 2020-11-03-03:43.0.338453078176826
## 4 2020-11-03-03:43.0.882017500931397
## 5 2020-11-03-03:43.0.227275899378583
## 6 2020-11-03-03:43.0.679579654941335

Step 4: Plot your data

The last step. No luminescence data analysis without a graphical representation of the results. Below we have chosen the abanico plot (Dietze et al. 2016) to visualise the final \(D_e\) distribution. The prior used function subset ensures that only values are shown, which have successfully been passed the rejection criteria.

df <- subset(results$data, RC.Status == "OK")
plot_AbanicoPlot(df[,1:2], zlab = expression(paste(D[e], " [s]")))

References

Dietze, Michael, Sebastian Kreutzer, Christoph Burow, Margret C Fuchs, Manfred Fischer, and Christoph Schmidt. 2016. The abanico plot: visualising chronometric data with individual standard errors.” Quaternary Geochronology 31 (February): 12–18.
Fuchs, Margret C, Sebastian Kreutzer, Christoph Burow, Michael Dietze, Manfred Fischer, Christoph Schmidt, and Markus Fuchs. 2015. Data processing in luminescence dating analysis: An exemplary workflow using the R package Luminescence.” Quaternary International 362 (March): 8–13.
Murray, Andrew S, and Ann G Wintle. 2000. Luminescence dating of quartz using an improved single-aliquot regenerative-dose protocol.” Radiation Measurements 32 (1): 57–73.