Skip to contents

Class for representing luminescence curve data.

Usage

# S4 method for class 'RLum.Data.Curve'
show(object)

# S4 method for class 'RLum.Data.Curve'
set_RLum(
  class,
  originator,
  .uid,
  .pid,
  recordType = NA_character_,
  curveType = NA_character_,
  data = matrix(0, ncol = 2),
  info = list()
)

# S4 method for class 'RLum.Data.Curve'
get_RLum(object, info.object = NULL)

# S4 method for class 'RLum.Data.Curve'
length_RLum(object)

# S4 method for class 'RLum.Data.Curve'
names_RLum(object)

# S4 method for class 'RLum.Data.Curve'
bin_RLum.Data(object, bin_size = 2)

# S4 method for class 'RLum.Data.Curve'
smooth_RLum(object, k = NULL, fill = NA, align = "right", method = "mean")

Arguments

object

get_RLum, length_RLum, names_RLum (required): an object of class RLum.Data.Curve

class

set_RLum; character (required): name of the RLum class to create

originator

set_RLum; character (automatic): contains the name of the calling function (the function that produces this object); can be set manually.

.uid

set_RLum; character (automatic): sets an unique ID for this object using the internal C++ function create_UID.

.pid

set_RLum; character (with default): option to provide a parent id for nesting at will.

recordType

set_RLum; character (optional): record type (e.g., "OSL")

curveType

set_RLum; character (optional): curve type (e.g., "predefined" or "measured")

data

set_RLum; matrix (required): raw curve data. If data itself is a RLum.Data.Curve-object this can be used to re-construct the object (s. details), i.e. modified parameters except .uid, .pid and originator. The rest will be subject to copy and paste unless provided.

info

set_RLum; list (optional): info elements

info.object

get_RLum character (optional): name of the wanted info element

bin_size

integer (with default): set number of channels used for each bin, e.g. bin_size = 2 means that two channels are binned.

k

smooth_RLum; integer (with default): window for the rolling mean; must be odd for rollmedian. If nothing is set k is set automatically

fill

smooth_RLum; numeric (with default): a vector defining the left and the right hand data

align

smooth_RLum; character (with default): specifying whether the index of the result should be left- or right-aligned or centred (default) compared to the rolling window of observations, allowed "right", "center" and "left"

method

smooth_RLum; character (with default): defines which method should be applied for the smoothing: "mean" or "median"

Value

set_RLum

Returns an RLum.Data.Curve object.

get_RLum

  1. A matrix with the curve values or

  2. only the info object if info.object was set.

length_RLum

Number of channels in the curve (row number of the matrix)

names_RLum

Names of the info elements (slot info)

bin_RLum.Data

Same object as input, after applying the binning.

smooth_RLum

Same object as input, after smoothing

Methods (by generic)

  • show(RLum.Data.Curve): Show structure of RLum.Data.Curve object

  • set_RLum(RLum.Data.Curve): Construction method for RLum.Data.Curve object. The slot info is optional and predefined as empty list by default.

  • get_RLum(RLum.Data.Curve): Accessor method for RLum.Data.Curve object. The argument info.object is optional to directly access the info elements. If no info element name is provided, the raw curve data (matrix) will be returned.

  • length_RLum(RLum.Data.Curve): Returns the length of the curve object, which is the maximum of the value time/temperature of the curve (corresponding to the stimulation length)

  • names_RLum(RLum.Data.Curve): Returns the names info elements coming along with this curve object

  • bin_RLum.Data(RLum.Data.Curve): Allows binning of specific objects

  • smooth_RLum(RLum.Data.Curve): Smoothing of RLum.Data.Curve objects using the function zoo::rollmean or zoo::rollmedian. In particular the internal function .smoothing is used.

Slots

recordType

Object of class "character" containing the type of the curve (e.g. "TL" or "OSL")

curveType

Object of class "character" containing curve type, allowed values are measured or predefined

data

Object of class matrix containing curve x and y data. 'data' can also be of type RLum.Data.Curve to change object values without de-constructing the object. For example:

set_RLum(class = 'RLum.Data.Curve',
         data = Your.RLum.Data.Curve,
         recordType = 'never seen before')

would just change the recordType. Missing arguments the value is taken from the input object in 'data' (which is already an RLum.Data.Curve object in this example)

Note

The class should only contain data for a single curve. For additional elements the slot info can be used (e.g. providing additional heating ramp curve). Objects from the class RLum.Data.Curve are produced by other functions (partly within RLum.Analysis objects), namely: Risoe.BINfileData2RLum.Analysis, read_XSYG2R

Create objects from this Class

Objects can be created by calls of the form set_RLum(class = "RLum.Data.Curve", ...).

Class version

0.5.1

Author

Sebastian Kreutzer, Institute of Geography, Heidelberg University (Germany) , RLum Developer Team

How to cite

Kreutzer, S., 2024. RLum.Data.Curve-class(): Class 'RLum.Data.Curve'. 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., 2024. Luminescence: Comprehensive Luminescence Dating Data Analysis. R package version 0.9.26. https://r-lum.github.io/Luminescence/

Examples


showClass("RLum.Data.Curve")
#> Class "RLum.Data.Curve" [package "Luminescence"]
#> 
#> Slots:
#>                                                                         
#> Name:  recordType  curveType       data originator       info       .uid
#> Class:  character  character     matrix  character       list  character
#>                  
#> Name:        .pid
#> Class:  character
#> 
#> Extends: 
#> Class "RLum.Data", directly
#> Class "RLum", by class "RLum.Data", distance 2

##set empty curve object
set_RLum(class = "RLum.Data.Curve")
#> 
#>  [RLum.Data.Curve-class]
#> 	 recordType: NA
#> 	 curveType: NA
#> 	 measured values: 1
#> 	 .. range of x-values: 0 0
#> 	 .. range of y-values: 0 0 
#> 	 additional info elements: 0