density_input  R Documentation 
Function density_input()
provides all necessary data to incorporate
density dependence into a lefkoMat
object, a list of matrices, or a
single matrix. Four forms of density dependence are allowed, including the
Ricker function, the BevertonHolt function, the Usher function, and the
logistic function. In each case, density must have an effect with a delay of
at least one timestep (see Notes). The resulting data frame provides a
guide for other lefko3
functions to modify matrix elements by
density.
density_input(
mpm,
stage3 = NULL,
stage2 = NULL,
stage1 = NULL,
age2 = NULL,
style = NULL,
time_delay = NULL,
alpha = NULL,
beta = NULL,
type = NULL,
type_t12 = NULL
)
mpm 
The 
stage3 
A vector showing the name or number of the stage in occasion t+1 in the transitions to be affected by density. Abbreviations for groups of stages are also usable (see Notes). 
stage2 
A vector showing the name or number of the stage in occasion t in the transition to be affected by density. Abbreviations for groups of stages are also usable (see Notes). 
stage1 
A vector showing the name or number of the stage in occasion t1 in the transition to be affected by density. Only needed if a historical MPM is used. Abbreviations for groups of stages are also usable (see Notes). 
age2 
A vector showing the age of the stage in occasion t in the transition to be affected by density. Only needed if an agebystage MPM is used. 
style 
A vector coding for the style of density dependence on each
transition subject to density dependence. Options include 
time_delay 
An integer vector indicating the number of occasions back
on which density dependence operates. Defaults to 
alpha 
A vector indicating the numeric values to use as the
alpha term in the two parameter Ricker, BevertonHolt, or Usher function, or
the value of the carrying capacity K to use in the logistic equation
(see 
beta 
A vector indicating the numeric values to use as the beta term in
the two parameter Ricker, BevertonHolt, or Usher function. Used to indicate
whether to use K as a hard limit in the logistic equation (see section

type 
A vector denoting the kind of transition between occasions
t and t+1 to be replaced. This should be entered as 
type_t12 
An optional vector denoting the kind of transition between
occasions t1 and t. Only necessary if a historical MPM in
deVries format is desired. This should be entered as 
A data frame of class lefkoDens
. This object can be used as
input in function projection3()
.
Variables in this object include the following:
stage3 
Stage at occasion t+1 in the transition to be replaced. 
stage2 
Stage at occasion t in the transition to be replaced. 
stage1 
Stage at occasion t1 in the transition to be replaced, if applicable. 
age2 
Age at occasion t in the transition to be replaced, if applicable. 
style 
Style of density dependence, coded as 1, 2, 3, or 4 for the Ricker, BevertonHolt, Usher, or logistic function, respectively. 
time_delay 
The time delay on density dependence, in time steps. 
alpha 
The value of alpha in the Ricker, BevertonHolt, or Usher function, or the value of carrying capacity, K, in the logistic function. 
beta 
The value of beta in the Ricker, BevertonHolt, or Usher function. 
type 
Designates whether the transition from occasion t to occasion t+1 is a survival transition probability (1), or a fecundity rate (2). 
type_t12 
Designates whether the transition from occasion t1 to occasion t is a survival transition probability (1), a fecundity rate (2). 
This function provides inputs when density dependence is operationalized
directly on matrix elements. It can be used in both projection3()
and
f_projection3()
. Users wishing to modify vital rate functions by
density dependence functions for use in functionbased projections with
function f_projection3()
should use function density_vr()
to
provide the correct inputs.
The parameters alpha
and beta
are applied according to the
twoparameter Ricker function, the twoparameter BevertonHolt function, the
twoparameter Usher function, or the oneparameter logistic function.
Although the default is that a 1 time step delay is assumed, greater time
delays can be set through the time_delay
option.
Entries in stage3
, stage2
, and stage1
can include
abbreviations for groups of stages. Use rep
if all reproductive stages
are to be used, nrep
if all mature but nonreproductive stages are to
be used, mat
if all mature stages are to be used, immat
if all
immature stages are to be used, prop
if all propagule stages are to be
used, npr
if all nonpropagule stages are to be used, obs
if
all observable stages are to be used, nobs
if all unobservable stages
are to be used, and leave empty or use all
if all stages in stageframe
are to be used.
When using the logistic function, it is possible that the time delay used in
density dependent simulations will cause matrix elements to become negative.
To prevent this behavior, set the associated beta
term to 1.0
.
Doing so will set K
as the hard limit in the logistic equation,
essentially setting a minimum limit at 0
for all matrix elements
modified.
start_input()
projection3()
data(lathyrus)
sizevector < c(0, 100, 13, 127, 3730, 3800, 0)
stagevector < c("Sd", "Sdl", "VSm", "Sm", "VLa", "Flo", "Dorm")
repvector < c(0, 0, 0, 0, 0, 1, 0)
obsvector < c(0, 1, 1, 1, 1, 1, 0)
matvector < c(0, 0, 1, 1, 1, 1, 1)
immvector < c(1, 1, 0, 0, 0, 0, 0)
propvector < c(1, 0, 0, 0, 0, 0, 0)
indataset < c(0, 1, 1, 1, 1, 1, 1)
binvec < c(0, 100, 11, 103, 3500, 3800, 0.5)
lathframe < sf_create(sizes = sizevector, stagenames = stagevector,
repstatus = repvector, obsstatus = obsvector, matstatus = matvector,
immstatus = immvector, indataset = indataset, binhalfwidth = binvec,
propstatus = propvector)
lathvert < verticalize3(lathyrus, noyears = 4, firstyear = 1988,
patchidcol = "SUBPLOT", individcol = "GENET", blocksize = 9,
juvcol = "Seedling1988", sizeacol = "Volume88", repstracol = "FCODE88",
fecacol = "Intactseed88", deadacol = "Dead1988",
nonobsacol = "Dormant1988", stageassign = lathframe, stagesize = "sizea",
censorcol = "Missing1988", censorkeep = NA, censor = TRUE)
lathsupp3 < supplemental(stage3 = c("Sd", "Sd", "Sdl", "Sdl", "Sd", "Sdl", "mat"),
stage2 = c("Sd", "Sd", "Sd", "Sd", "rep", "rep", "Sdl"),
stage1 = c("Sd", "rep", "Sd", "rep", "npr", "npr", "Sd"),
eststage3 = c(NA, NA, NA, NA, NA, NA, "mat"),
eststage2 = c(NA, NA, NA, NA, NA, NA, "Sdl"),
eststage1 = c(NA, NA, NA, NA, NA, NA, "NotAlive"),
givenrate = c(0.345, 0.345, 0.054, 0.054, NA, NA, NA),
multiplier = c(NA, NA, NA, NA, 0.345, 0.054, NA),
type = c(1, 1, 1, 1, 3, 3, 1), type_t12 = c(1, 2, 1, 2, 1, 1, 1),
stageframe = lathframe, historical = TRUE)
ehrlen3 < rlefko3(data = lathvert, stageframe = lathframe, year = "all",
stages = c("stage3", "stage2", "stage1"), supplement = lathsupp3,
yearcol = "year2", indivcol = "individ")
ehrlen3mean < lmean(ehrlen3)
e3d < density_input(ehrlen3mean, stage3 = c("Sd", "Sdl"),
stage2 = c("rep", "rep"), stage1 = c("all", "all"), style = 1,
time_delay = 1, alpha = 1, beta = 0, type = c(2, 2), type_t12 = c(1, 1))
lathproj < projection3(ehrlen3, nreps = 5, stochastic = TRUE, substoch = 2,
density = e3d)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.