test_that("Calibrate a GammaSpectrum object with a list", {
spc_file <- system.file("extdata/LaBr.CNF", package = "gamma")
spectrum <- read(spc_file)
lines <- list(
channel = c(76, 459, 816),
energy = c(238, 1461, 2614.5)
)
calib <- energy_calibrate(spectrum, lines = lines)
expect_s4_class(calib, "GammaSpectrum")
expect_equal(calib[["hash"]], spectrum[["hash"]])
expect_equal(calib[["name"]], spectrum[["name"]])
expect_s3_class(calib[["date"]], "POSIXct")
expect_equal(calib[["instrument"]], spectrum[["instrument"]])
expect_equal(calib[["file_format"]], spectrum[["file_format"]])
expect_equal(calib[["live_time"]], spectrum[["live_time"]])
expect_equal(calib[["real_time"]], spectrum[["real_time"]])
expect_equal(calib[["channel"]], spectrum[["channel"]])
expect_length(calib[["energy"]], 1024)
expect_true(all(calib[["energy"]] != spectrum[["energy"]]))
expect_equal(calib[["count"]], spectrum[["count"]])
expect_equal(calib[["rate"]], spectrum[["rate"]])
expect_s3_class(calib[["calibration"]], "lm")
lines <- list(
X = c(76, 459, 816),
Y = c(238, 1461, 2614.5)
)
expect_error(energy_calibrate(spectrum, lines = lines),
"does not have components")
lines <- list(
channel = c(76, 816),
energy = c(238, 2614.5)
)
expect_error(energy_calibrate(spectrum, lines = lines),
"You have to provide at least 3 lines for calibration, not 2.")
})
test_that("Calibrate a GammaSpectrum object with a PeakPosition object", {
spc_file <- system.file("extdata/LaBr.TKA", package = "gamma")
spectrum <- read(spc_file)
peaks <- .PeakPosition(
hash = spectrum@hash,
channel = c(76L, 459L, 816L),
energy_expected = c(NA_real_, NA_real_, NA_real_)
)
expect_error(energy_calibrate(spectrum, lines = peaks),
"You have to provide at least 3 lines for calibration, not 0.")
set_energy(peaks) <- c(238, 1461, 2614.5)
calib <- energy_calibrate(spectrum, lines = peaks)
expect_s4_class(calib, "GammaSpectrum")
expect_length(spectrum@energy, 0)
expect_length(calib@energy, 1024)
})
test_that("the energy scale of a GammaSpectrum is set", {
cnf_file <- system.file("extdata/LaBr.CNF", package = "gamma")
cnf_spc <- read(cnf_file)
expect_true(has_energy(cnf_spc))
tka_file <- system.file("extdata/LaBr.TKA", package = "gamma")
tka_spc <- read(tka_file)
expect_false(has_energy(tka_spc))
set_file <- system.file("extdata/", package = "gamma")
set_spc <- read(set_file)
expect_equal(has_energy(set_spc), c(TRUE, TRUE, FALSE), ignore_attr = TRUE)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.