View source: R/perturb_matrix.R
perturb_matrix | R Documentation |
Perturbs elements within a matrix population model and measures the response
(sensitivity or elasticity) of the per-capita population growth rate at
equilibrium (\lambda
), or, with a user-supplied function, any other
demographic statistic.
perturb_matrix(
matA,
pert = 1e-06,
type = "sensitivity",
demog_stat = "lambda",
...
)
matA |
A matrix population model (i.e., a square projection matrix). |
pert |
Magnitude of the perturbation. Defaults to |
type |
Whether to return |
demog_stat |
The demographic statistic to be used, as in "the
sensitivity/elasticity of |
... |
Additional arguments passed to the function |
A sensitivity or elasticity matrix.
Rob Salguero-Gomez <rob.salguero@zoo.ox.ac.uk>
Caswell, H. 2001. Matrix Population Models: Construction, Analysis, and Interpretation. Sinauer Associates; 2nd edition. ISBN: 978-0878930968
Other perturbation analysis:
perturb_stochastic()
,
perturb_trans()
,
perturb_vr()
,
pop_vectors()
matA <- rbind(
c(0.1, 0, 1.5, 4.6),
c(0.5, 0.2, 0.1, 0),
c(0, 0.3, 0.3, 0.1),
c(0, 0, 0.5, 0.6)
)
perturb_matrix(matA)
# use a larger perturbation than the default
perturb_matrix(matA, pert = 0.01)
# calculate the sensitivity/elasticity of the damping ratio to perturbations
damping <- function(matA) { # define function for damping ratio
eig <- eigen(matA)$values
dm <- rle(Mod(eig))$values
return(dm[1] / dm[2])
}
perturb_matrix(matA, demog_stat = "damping")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.