Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup, echo=FALSE--------------------------------------------------------
library(admtools)
## -----------------------------------------------------------------------------
h_min = 3 # bottom of section
h_max = 8 # top of section
sampling_bin_borders = seq(h_min, h_max, by = 1) # limits of sampling bins
mean_3He = seq(from = 15, to = 5, length.out = length(sampling_bin_borders) - 1) # assumed 3He mean vals
sd_3He = runif(n = length(mean_3He), min = 0.1 * mean_3He, max = 0.2 * mean_3He) # standard deviation of 3He
He_measurements = data.frame("mean" = mean_3He, "sd" = sd_3He)
## -----------------------------------------------------------------------------
h = seq(h_min, h_max, by = 0.1)
T_unit = "dimensionless"
L_unit = "m"
## -----------------------------------------------------------------------------
tp_height = tp_height_det(heights = c(h_min, h_max))
## -----------------------------------------------------------------------------
tp_time = tp_time_floating_scale()
## -----------------------------------------------------------------------------
flux = flux_const()
## -----------------------------------------------------------------------------
observed_tracer = strat_cont_gen_from_tracer(bin_borders = sampling_bin_borders,
df = He_measurements,
distribution = "normal")
## ----echo=FALSE---------------------------------------------------------------
plot(NULL,
xlim = range(h),
ylim = c(0,max(He_measurements$mean) + 2 * max(He_measurements$sd)),
xlab = paste("Height [", L_unit, "]", sep = ""),
ylab = "3He observed")
lines(h, observed_tracer()(h), type = "p", col = "red", pch = 3)
lines(h, observed_tracer()(h), type = "p", col = "blue", pch = 19)
lines(h, observed_tracer()(h), type = "p", col = "black")
## -----------------------------------------------------------------------------
my_adm = strat_cont_to_multiadm(h_tp = tp_height,
t_tp = tp_time,
strat_cont_gen = observed_tracer,
time_cont_gen = flux,
h = h,
T_unit = T_unit,
L_unit = L_unit)
## -----------------------------------------------------------------------------
plot(my_adm, mode = "envelope")
T_axis_lab()
L_axis_lab()
make_legend()
## -----------------------------------------------------------------------------
mean_adm = mean_adm(my_adm, h)
plot(mean_adm)
## -----------------------------------------------------------------------------
h_min = 10 # stratigraphic height of lower tie point [m]
h_max = 20 # stratigraphic height of upper tie point [m]
## ----h_tp function------------------------------------------------------------
h_tp = function(){
return(c(h_min, h_max))
}
## ----Evaluate stratigraphic positions of tie points---------------------------
h_tp()
## -----------------------------------------------------------------------------
t_tp = function() {
repeat{
# timing first tie point
t1 = rnorm(n = 1, mean = 0, sd = 0.5)
# timing second tie point
t2 = runif(n = 1, min = 9, max = 11)
if (t1 < t2){ # if order is correct, return values
return(c(t1, t2))
}
}
}
## -----------------------------------------------------------------------------
t_tp() # evaluating the function returns a random pair of times drawn from the specified distribution
## ----echo=FALSE, fig.show="hold"----------------------------------------------
no_of_samples = 1000
hist(sapply( seq_len(no_of_samples), function(x) t_tp()[1]),
freq = FALSE,
xlab = "Time [Myr]",
main = "Timing of lower tie point")
hist(sapply(seq_len(no_of_samples), function(x) t_tp()[2]),
freq = FALSE,
xlab = "Time [Myr]",
main = "Timing of upper tie point")
## -----------------------------------------------------------------------------
time_cont_gen = function(){
time_cont = function(x) return( rep(1, length(x)))
return(time_cont)
}
## -----------------------------------------------------------------------------
# generate one function from time_cont_gen
time_cont = time_cont_gen()
# time where to evaluate the function
t = seq(0,10,by = 0.1)
plot(x = t,
y = time_cont(t),
type = "l",
xlab = "Time [Myr]",
ylab = "Tracer Input into the Sediment [X/Myr]")
## -----------------------------------------------------------------------------
h_min = 2
h_max = 5
locations = c( h_min, mean(c(h_min, h_max)), h_max)
## -----------------------------------------------------------------------------
mean_vals = c(10, 1, 8)
sd_vals = c( 1, 0.1, 0.8)
## -----------------------------------------------------------------------------
strat_cont_gen = function(){
# draw sample tracer values from specified distributions
trac_vals = rnorm(n = length(mean_vals),
mean = mean_vals,
sd = sd_vals)
# define function that linearly interpolates between drawn values
strat_cont = approxfun(x = locations,
y = trac_vals,
yleft = trac_vals[1],
yright = trac_vals[3])
return(strat_cont)
}
## -----------------------------------------------------------------------------
n = 3 # number of sampled tracer values
h = seq(h_min, h_max, by = 0.1) # determine tracer values every 0.1 m
plot(NULL,
xlim = c(h_min, h_max),
ylim = c(0, max(mean_vals) +2 * max(sd_vals)),
xlab = "Stratigraphic Height [m]",
ylab = "Measured Tracer [1/m]")
cols = c("red", "blue", "black")
for (i in seq_len(n)){
strat_cont = strat_cont_gen() # draw sample path from stoch process
# draw sample path
lines(x = h,
y = strat_cont(h),
col = cols[i])
}
## ----eval=FALSE---------------------------------------------------------------
# vignette("adm_from_sedrate")
## ----eval=FALSE---------------------------------------------------------------
# vignette("adm_plotting)
## ----eval=FALSE---------------------------------------------------------------
# vignette("admtools_doc")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.