blockmatrix {popdemo} | R Documentation |
Block-permute a reducible matrix
Description
Conjugate a reducible matrix into block upper triangular form
Usage
blockmatrix(A)
Arguments
A |
a square, reducible, non-negative numeric matrix of any dimension |
Details
Any square, reducible, non-negative matrix may have its rows and columns
conjugated so that it takes a block upper triangular structure, with
irreducible square submatrices on the diagonal, zero submatrices in the
lower triangle and non-negative submatrices in the upper triangle (Caswell
2001; Stott et al. 2010). blockmatrix
permutes the rows and columns
of a reducible matrix into this form, which enables further evaluation (e.g.
computation of eigenvalues of submatrices).
Value
a list containing components:
blockmatrix
the block-permuted matrix.
stage.order
the permutation of rows/columns of
A
in the block-permuted matrix.
References
Caswell (2001) Matrix population models 2nd ed. Sinauer.
Stott et al. (2010) Methods. Ecol. Evol., 1, 242-252.
Examples
# Create a 3x3 reducible PPM
A <- matrix(c(0,1,0,0.5,0.1,0,0,0.6,0.6), byrow=TRUE, ncol=3)
dimnames(A) <- list(c("Juv", "Pre-R", "R"), c("Juv", "Pre-R", "R"))
A
# Block-permute the matrix
blockmatrix(A)