sens: Calculate sensitivity matrix

Description Usage Arguments Details Value References See Also Examples

View source: R/sens.R

Description

Calculate the sensitivity matrix for a population matrix projection model using eigenvectors.

Usage

1
sens(A, eval = "max", all = FALSE)

Arguments

A

a square, non-negative numeric matrix of any dimension

eval

the eigenvalue to evaluate. Default is eval="max", which evaluates the dominant eigenvalue (the eigenvalue with largest REAL value: for imprimitive or reducible matrices this may not be the first eigenvalue). Otherwise, specifying e.g. eval=2 will evaluate sensitivity of the eigenvalue with second-largest modulus.

all

(optional) if FALSE, then only sensitivity values for observed transitions (nonzero entries in A) are returned.

Details

sens uses the eigenvectors of A to calculate the sensitivity matrix of the specified eigenvalue, see section 9.1 in Caswell (2001). Same method as sensitivity in popbio but can also evaluate subdominant eigenvalues.

Value

A numeric (real or complex) matrix of equal dimension to A.

References

See Also

Other PerturbationAnalyses: elas(), tfa_inertia(), tfa_lambda(), tfam_inertia(), tfam_lambda(), tfs_inertia(), tfs_lambda()

Examples

1
2
3
4
5
6
7
8
  # Create a 3x3 PPM
  ( A <- matrix(c(0,1,2,0.5,0.1,0,0,0.6,0.6), byrow=TRUE, ncol=3) )

  # Calculate sensitivities of dominant eigenvalue
  sens(A)
  # Calculate sensitivities of first subdominant eigenvalue,
  # only for observed transitions
  sens(A, eval=2, all=FALSE) 

popdemo documentation built on Nov. 16, 2021, 5:06 p.m.