Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup--------------------------------------------------------------------
library(StratPal)
library(admtools)
## ----fig.alt="Age-depth model and water depth 12 km offshore (proximal slope)"----
# construct age-depth model
adm_12km = tp_to_adm(t = scenarioA$t_myr, # 12 km from shore
h = scenarioA$h_m[,"12km"],
T_unit = "Myr",
L_unit = "m")
plot(adm_12km, lty_destr = 0,
main = "Age-depth model 12 km from shore",
lwd_destr = 3)
T_axis_lab()
L_axis_lab()
# water depth 12 km from shore
t = scenarioA$t_myr
wd = scenarioA$wd_m[,"12km"]
gc = approxfun(t, wd)
plot(t, gc(t),
xlab = "Time [Myr]",
ylab = "Water depth [m]",
type = "l",
lwd = 3)
## ----fig.alt="Phylogenetic tree with sampled fossils"-------------------------
set.seed(42)
# simulate phylogenetic tree
tree = ape::rbdtree(birth = 3, death = 1, Tmax = max_time(adm_12km))
# simulate taxonomy along the tree
s = FossilSim::sim.taxonomy(tree = tree)
# simulate fossils based on taxonomy
sampling_rate = 40 # high sampling rate
f = FossilSim::sim.fossils.poisson(rate = sampling_rate, taxonomy = s)
# plot tree with taxonomy and fossil times
FossilSim:::plot.fossils(f, tree = tree, taxonomy = s, show.taxonomy = TRUE, rho = 0)
## ----fig.alt="Niche of taxa and collection probability with time"-------------
# define niche
my_niche = snd_niche(opt = 60, tol = 40, cutoff_val = 0)
# plot niche
wd_p = seq(-2, 100, by = 1)
plot(x = wd_p,
y = my_niche(wd_p),
xlab = "Water depth [m]",
ylab = "Collection probability",
type = "l",
main = "Collection probability with water depth",
lwd = 3)
plot(x = get_T_tp(adm_12km),
y = adm_12km |> get_T_tp() |> gc() |> my_niche(),
type = "l",
xlab = "Time [Myr]",
ylab = "Collection probability",
main = "Collection probability with time",
lwd = 3)
## ----fig.alt="Tree with fossils after accounting for niche preference"--------
f_niche = f |>
rev_dir(ref = max_time(adm_12km)) |>
apply_niche(niche_def = my_niche, gc = gc) |>
rev_dir(ref = max_time(adm_12km))
# plot tree after accounting for taxon niches
FossilSim:::plot.fossils(f_niche, tree, taxonomy = s, show.taxonomy = TRUE, rho = 0)
## ----fig.alt="Tree with fossils in the stratigraphic domain"------------------
## transform tree, fossils, and taxonomy into stratigraphyc domain
# using the age-depth model
tree_strat = time_to_strat(tree, adm_12km) # no transformation of time to age required
s_strat = s |> # taxonomy object in the time domain
rev_dir(ref = max_time(adm_12km)) |> # convert age to time
time_to_strat( adm_12km , destructive = FALSE) |> # transform using age-depth model
rev_dir(ref = max_height(adm_12km)) # transform back into age
f_strat = f |> # same here
rev_dir(ref = max_time(adm_12km )) |>
time_to_strat( adm_12km , destructive = TRUE)|> # destroy fossils coinciding with gaps
rev_dir(ref = max_height(adm_12km ))
FossilSim:::plot.fossils(f_strat,
tree = tree_strat,
taxonomy = s_strat,
show.taxonomy = TRUE,
rho = 0,
show.axis = FALSE)
axis(1)
mtext(1, text = "Stratigraphic position [m]", line = 2)
## ----fig.alt="Tree with fossils affected by ecological and stratigraphic effects."----
## transform tree, fossils, and taxonomy into stratigraphyc domain
# using the age-depth model
tree_strat = time_to_strat(tree, adm_12km) # no transformation of time to age required
s_strat = s |> # taxonomy object in the time domain
rev_dir(ref = max_time(adm_12km)) |> # convert age to time
time_to_strat( adm_12km , destructive = FALSE) |> # transform using age-depth model
rev_dir(ref = max_height(adm_12km)) # transform back into age
f_strat = f |> # same here
rev_dir(ref = max_time(adm_12km )) |>
apply_niche(niche_def = my_niche, gc = gc) |> # apply niche model
time_to_strat( adm_12km , destructive = TRUE)|> # destroy fossils coinciding with gaps
rev_dir(ref = max_height(adm_12km ))
FossilSim:::plot.fossils(f_strat,
tree = tree_strat,
taxonomy = s_strat,
show.taxonomy = TRUE,
rho = 0,
show.axis = FALSE)
axis(1)
mtext(1, text = "Stratigraphic position [m]", line = 2)
## ----eval=FALSE---------------------------------------------------------------
# vignette("paleotree", package = "FossilSim")
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.