dose_fit()
builds a calibration curve for gamma dose rate estimation.
dose_predict()
predicts in situ gamma dose rate.
dose_fit(object, background, doses, ...)dose_predict(object, spectrum, ...)
# S4 method for GammaSpectra,GammaSpectrumOrNumeric,matrix
dose_fit(
object,
background,
doses,
range_Ni,
range_NiEi,
details = list(authors = "", date = Sys.time())
)
# S4 method for GammaSpectra,GammaSpectrumOrNumeric,data.frame
dose_fit(
object,
background,
doses,
range_Ni,
range_NiEi,
details = list(authors = "", date = Sys.time())
)
# S4 method for CalibrationCurve,missing
dose_predict(
object,
sigma = 1,
epsilon = 0.015,
water_content = NULL,
use_MC = FALSE
)
# S4 method for CalibrationCurve,GammaSpectrum
dose_predict(
object,
spectrum,
sigma = 1,
epsilon = 0.015,
water_content = NULL,
use_MC = FALSE
)
# S4 method for CalibrationCurve,GammaSpectra
dose_predict(
object,
spectrum,
sigma = 1,
epsilon = 0.015,
water_content = NULL,
use_MC = FALSE
)
dose_fit()
returns a CalibrationCurve object.
dose_predict()
returns a data.frame
with the following columns:
name
(character
) the name of the spectra.
signal_Ni
(numeric
) the integrated signal value (according to
the value of threshold
; see signal_integrate()
) for energy = FALSE
signal_err_Ni
(numeric
) the integrated signal error value
(according to the value of threshold
; see signal_integrate()
) for energy = FALSE
.
dose_Ni
(numeric
) the predicted gamma dose rate for energy = FALSE
.
dose_err_Ni
(numeric
) the predicted gamma dose rate error for energy = FALSE
.
signal_Ni
(numeric
) the integrated signal value (according to
the value of threshold
; see signal_integrate()
).
signal_err_NiEi
(numeric
) the integrated signal error value
(according to the value of threshold
; see signal_integrate()
) for energy = TRUE
.
dose_NiEi
(numeric
) the predicted gamma dose rate for energy = TRUE
.
dose_err_NiEi
(numeric
) the predicted gamma dose rate error for energy = TRUE
.
dose_final
(numeric
) the predicted final gamma dose rate as the mean of dose_Ni
and dose_NiEi
dose_err_final
(numeric
) the predicted final gamma dose rate error as
\(SE(\dot{D}_{\gamma}) = \sqrt{(\frac{SE(\dot{D}_{\gamma\mathrm{Ni}})}{\dot{D}_{\gamma\mathrm{Ni}}})^2 +
(\frac{SE(\dot{D}_{\gamma\mathrm{NiEi}})}{\dot{D}_{\gamma\mathrm{NiEi}}})^2}\)
A GammaSpectra or CalibrationCurve object.
A GammaSpectrum object or a length-two numeric
vector giving the background noise integration value and error,
respectively. If no background subtraction is wanted, you can set background = c(0,0,)
A matrix
or data.frame
object with gamma dose values and uncertainties.
The row names must match the names of the spectrum.
Currently not used.
An optional GammaSpectrum or GammaSpectra object in which to look for variables with which to predict. If omitted, the fitted values are used.
A length-two numeric
vector giving the energy
range to integrate within (in keV).
A list
of length-one vector specifying additional
informations about the instrument for which the curve is built.
A numeric
value giving the confidence level of which the error from the
slope is considered in the final uncertainty calculation
A numeric
value giving an extra relative error term,
introduced by the calibration of the energy scale of the spectrum,
e.g., 0.015
for an additional 1.5% error
numeric
or matrix
gravimetric field water content to correct
the gamma-dose rate to using the correction factor by Aitken (1985) to obtain the dry gamma-dose
rate. Example: c(0.05,0.0001)
for water content of 5% +/- 0.01 %. The default is NULL
(nothing is corrected).
The correction only works on the final dose rate. For more information see details.
A logical
parameter, enabling/disabling Monte Carlo simulations for estimating
the dose rate uncertainty
The analytical uncertainties of the final gamma-dose rate (\(SE(\dot{D}_{\gamma})\)) are calculated as follows:
$$ \sigma_{\dot{D_\gamma}} = \sqrt((\frac{m_{\delta}s}{m})^2 + (\frac{s_{\delta}}{s})^2 + \epsilon^2) $$
with \(m\) and \(m_{\delta}\) being the slope of the fit an its uncertainty,
\(\sigma\) the error scaler for the slope uncertainty, \(s\) and \(s_{\delta}\)
the integrated signal and its uncertainty, and \(\epsilon\) an additional relative uncertainty
term that can be set by the user using the argument epsilon
.
If the parameter use_MC
is set to TRUE
, the a Monte Carlo sampling approach
is chosen to approximate the uncertainties on the dose rate:
$$ \sigma_{\dot{D_\gamma}} := \sqrt((\frac{SD(\mathcal{N}(\mu_{slope}, \sigma_{slope}) \times \mathcal{N}(\mu_{signal}, \sigma_{signal}) + \mathcal{N}(\mu_{intercept}, \sigma_{intercept})) * \rho}{\dot{D_\gamma}})^2 + \epsilon^2) * \dot{D_\gamma} $$
\(\ rho\) is the parameter sigma
provided with the function call, \(SD\) equals the
the call to sd()
, i.e. the calculation of the standard deviation. To achieve a good
Gaussian normal approximation with sample 1+e06 times (the values is fixed).
If gamma-dose rates are measured in the field, they are measured at "as-is"
conditions. In dating studies, however, using the dry dose rate is often
more desirable to model the long-term effect of different assumptions for
the water content. If the parameter water_content
, either as numeric
vector or as matrix with the number of rows equal to the number of
processed spectra, if different values are desired, the final
gamma-dose rate is corrected for the water content provided. Final
uncertainties are obtained using the square root of the summed squared
relative uncertainties of the dose rate and the water content.
A word of caution: When estimating the water content in the laboratory, the water analytical uncertainty is usually minimal, and it does not make sense to correct with a relative water content of, e.g., c(0.02,0.02) (2% +/- 2%) because this massively inflates the final dose rate error.
N. Frerebeau
To estimate the gamma dose rate, one of the calibration curves distributed with this package can be used. These built-in curves are in use in several luminescence dating laboratories and can be used to replicate published results. As these curves are instrument specific, the user may have to build its own curve.
The construction of a calibration curve requires a set of reference spectra for which the gamma dose rate is known and a background noise measurement. First, each reference spectrum is integrated over a given interval, then normalized to active time and corrected for background noise. The dose rate is finally modelled by the integrated signal value used as a linear predictor (York et al., 2004).
Aitken, M.J. (1985). Thermoluminescence dating. London: Academic Press.
Mercier, N. & Falguères, C. (2007). Field Gamma Dose-Rate Measurement with a NaI(Tl) Detector: Re-Evaluation of the "Threshold" Technique. Ancient TL, 25(1), p. 1-4.
York, D., Evensen, N. M., Martínez, M. L. & De Basabe Delgado, J. (2004). Unified Equations for the Slope, Intercept, and Standard Errors of the Best Straight Line. American Journal of Physics, 72(3), p. 367-75. tools:::Rd_expr_doi("10.1119/1.1632486").
signal_integrate()
## Import CNF files
## Spectra
spc_dir <- system.file("extdata/BDX_LaBr_1/calibration", package = "gamma")
spc <- read(spc_dir)
## Background
bkg_dir <- system.file("extdata/BDX_LaBr_1/background", package = "gamma")
bkg <- read(bkg_dir)
## Get dose rate values
data("clermont")
(doses <- clermont[, c("gamma_dose", "gamma_error")])
## Build the calibration curve
calib_curve <- dose_fit(spc, bkg, doses,
range_Ni = c(300, 2800),
range_NiEi = c(165, 2800))
## Plot the curve
plot(calib_curve, threshold = "Ni")
## Estimate gamma dose rates
dose_predict(calib_curve, spc)
Run the code above in your browser using DataLab