This vignette provides an overview of the larger scale structure of
the `admtools`

package and the classes used therein.

`adm`

The S3 class `adm`

represents **a**ge
**d**epth **m**odels. Structurally, they are
lists with five fields:

`t`

: numeric vector, time points`h`

: numeric vectors, heights`destr`

: logical vector, is the interval destructive`T_unit`

:`NULL`

or a string, time unit`L_unit`

:`NULL`

or a string, length unit

`h[i]`

is the height at time `t[i]`

.
`h`

and `t`

must be of same length and have at
least 2 elements, `t`

must be strictly increasing and
`h`

must be nondecreasing. `length(destr)`

must be
identical to `length(t) - 1`

. `destr[i] == TRUE`

indicates that the time interval from `t[i]`

to
`t[i+1]`

is destructive and no information is preserved.
Whether tie points are considered destructive is determined by the
function `is_destructive`

. Geologically,
`destr[i] == TRUE`

should imply `h[i] == h[i+1]`

,
as no sediment is accumulated during hiatuses.

The following functions construct `adm`

objects:

`tp_to_adm`

for construction from tie points`sac_to_adm`

for construction from sediment accumulation curves`sac`

`split_multiadm`

for extraction from multiple age-depth models`multiadm`

The following functions examine the logic of `adm`

objects:

`is_adm`

to check for validity of an adm object

The following functions yield a representation of `adm`

objects:

`plot.adm`

for plotting`print.adm`

for printing to the console`summary.adm`

to provide a quick summary of an object

The following functions modify `adm`

objects:

`set_L_unit`

and`set_T_unit`

to change units

The following functions extract information from `adm`

objects:

`condensation`

and`condensation_fun`

to extract condensation`get_L_unit`

and`get_T_unit`

to extract data`get_completeness`

and`get_incompleteness`

`get_height`

`get_time`

`get_hiat_duration`

`get_hiat_list`

`get_hiat_no`

`get_hiat_pos`

`get_total_duration`

`get_total_thickness`

`is_destructive`

`sed_rate_l`

and`sed_rate_l_fun`

to extract sedimentation rate in height domain`sed_rate_t`

and`sed_rate_t_fun`

to extract sedimentation rate in time domain`max_height.adm`

extracts highest stratigraphic point in adm`min_height.adm`

extracts lowest stratigraphic point in adm`min_time.adm`

extracts timing of first tie point in adm`max_time.adm`

extracts timing of last tie point in adm`get_L_tp`

and`get_T_tp`

to extract tie points.

The following functions transform `adm`

objects into other
S3 classes:

`merge_adm_to_multiadm`

into`multiamd`

`add_adm_to_multiadm`

to add`adm`

to`multiadm`

`anchor`

to transform anchor`adm`

at a tie point with uncertainty, resulting in a`multiadm`

`sac`

The S3 class `sac`

represents **s**ediment
**a**ccumulation **c**urves. Structurally,
they are lists with four fields:

`t`

: numeric vector, time points`h`

: numeric vectors, heights`T_unit`

:`NULL`

or a string, time unit`L_unit`

:`NULL`

or a string, length unit

`h[i]`

is the height at time `t[i]`

.
`h`

and `t`

must be of same length and have at
least 2 elements, `t`

must be increasing.

The following functions construct `sac`

objects:

Standard constructor is `tp_to_sac`

(tie point to sediment
accumulation curve)

The following functions inspect the logic of `sac`

objects:

`is_sac`

to check validity of`sac`

object

The following functions yield a representation of `sac`

objects:

`plot.sac`

for plotting`print.sac`

for printing to the console`summary.sac`

to provide a quick summary

The following functions modify `sac`

objects:

`set_L_unit`

and`set_T_unit`

to change units

The following functions extract information from `sac`

objects:

`get_L_unit`

and`get_T_unit`

to extract units`get_T_tp`

and`get_L_tp`

to extract tie points`get_total_duration`

to extract total duration covered`get_total_thickness`

`min_time`

and`max_time`

`min_height`

and`max_height`

The following functions transform `sac`

objects into other
S3 classes:

`sac_to_adm`

to transform`sac`

into the S3 class`adm`

`multiadm`

The S3 class `multiadm`

represents
**multi**ple **a**ge **d**epth
**m**odels.. Structurally, they are lists with the
following elements:

`no_of_entries`

: Positive integer, number of age depth models contained`t`

list of length`no_of_entries`

. Each element contains a numeric vector`h`

: list of length`no_of_entries`

. Each element contain a numeric vector`destr`

: list of length`no_of_entries`

. Each element contain a logic`T_unit`

:`NULL`

or a string, time unit`L_unit`

:`NULL`

or a string, length unit

`h[[i]][j]`

is the height of the i-th age-depth model at
time `t[[i]][j]`

. For each `i`

, the quintuple
`h[[i]]`

, `t[[i]]`

, `destr[[i]]`

,
`T_unit`

and `L_unit`

specify an `adm`

object with the constraints as specified in the section *S3 class
adm* (e.g., on monotonicity, length, etc.).

`T_unit`

and `L_unit`

are shared among all
age-depth models in an `multiamd`

object.The following functions construct `multiadm`

objects:

`anchor`

to construct`multiadm`

from uncertain tie points and`adm`

objects.`merge_adm_to_multiadm`

to construct`multiadm`

from`adm`

objects`sedrate_to_multiadm`

construct`multiadm`

from info on sedimentation rates, see`vignette("adm_from_sedrate")`

`strat_cont_to_multiadm`

construct`multiadm`

from tracer information, see`vignette("adm_from_trace_cont")`

The following functions inspect the logic of `multiadm`

objects:

`is_multiadm`

to check for validity of multiadm object

The following functions yield a representation `multiadm`

objects:

`plot.multiadm`

for plotting`print.multiadm`

for printing to console`summary.multiadm`

for providing summary statistics

The following functions modify `multiadm`

objects:

`merge_multiadm`

to combine multiple`multiadm`

objects`set_L_unit`

and`set_T_unit`

to change units

The following functions extract information from
`multiadm`

objects:

`condensation`

to extract condensation`get_completeness`

and`get_incompleteness`

`get_height`

`get_hiat_duration`

`get_hiat_list`

`get_hiat_no`

`get_hiat_pos`

`get_L_unit`

and`get_T_unit`

to extract data`get_time`

`get_total_duration`

`get_total_thickness`

`is_destructive`

`sed_rate_l`

`sed_rate_t`

`get_T_tp`

and`get_L_tp`

to extract time and length/height tie points

The following functions transform `multiadm`

objects into
other S3 classes:

`split_multiadm`

to split`multiadm`

into list of`adm`

objects`mean_adm`

,`median_adm`

and`quantile_adm`

to extract mean, median, and quantile age-depth model of`adm`

class.m

`stratlist`

and `timelist`

`stratlist`

and `timelist`

inherit from the
base `list`

. They are list of stratigraphic positions or
times, associated with other data (e.g. trait values, proxy values)

`stratlist`

is a list with one element named “h”`timelist`

is a list with one element named “t”

`stratlist`

is returned by`time_to_strat.list`

`timelist`

is returned by`strat_to_time.list`

`plot.stratlist`

for plotting`stratlist`

`plot.timelist`

for plotting`timelist`

`list`

`admtools`

implements the following methods for
`list`

:

`strat_to_time.list`

: Transform strat-val pairs into time domain`time_to_strat.list`

: Transform time-val pairs into strat domain

`phylo`

`admtools`

implements the following methods for
`phylo`

:

`strat_to_time.phylo`

: Transform stratigraphic tree into time domain`time_to_strat.phylo`

: Transform time tree into strat domain

`numeric`

`strat_to_time.numeric`

: Transform vectors from stratigraphic domain to time domain. Wrapper around`get_time`

`time_to_strat.numeric`

: Transform vectors from time to stratigraphic domain. Wrapper around`get_height`

The following functions are used for plotting:

`plot.adm`

plotting for S3 class`adm`

`plot.multiadm`

plotting for S3 class`multiadm`

`plot.sac`

plotting for S3 class`sac`

`plot.timelist`

for plotting`timelist`

`plot.stratlist`

for plotting`stratlist`

`T_axis_lab`

to annotate time axis`L_axis_lab`

to annotate length/depth axis`plot_sed_rate_l`

to plot sedimentation rate in length/depth domain`plot_sed_rate_t`

to plot sedimentation rate in time domain`plot_condensation`

`plot_erosive_intervals`

to highlight erosive intervals, called after`plot.adm`

The following functions are used internally and not exposed to users.
They can be accessed via `admtools:::function_name`

.

`plot_destr_parts`

`plot_acc_parts`

`make_adm_canvas`

`browseVignettes(package = "admtools")`

to show a list of vignettes