symrcm
Sparse reverse Cuthill-McKee ordering
Syntax
r = symrcm(S)
Description
r = symrcm(S)
returns
the symmetric reverse Cuthill-McKee ordering of S
.
This is a permutation r
such that S(r,r)
tends
to have its nonzero elements closer to the diagonal. This is a good
preordering for LU or Cholesky factorization of matrices that come
from long, skinny problems. The ordering works for both symmetric
and nonsymmetric S
.
For a real, symmetric sparse matrix, S
, the
eigenvalues of S(r,r)
are the same as those of S
,
but eig(S(r,r))
probably takes less time to compute
than eig(S)
.
Examples
Algorithms
The algorithm first finds a pseudoperipheral vertex of the graph of the matrix. It then generates a level structure by breadth-first search and orders the vertices by decreasing distance from the pseudoperipheral vertex. The implementation is based closely on the SPARSPAK implementation described by George and Liu.
References
[1] George, Alan and Joseph Liu, Computer Solution of Large Sparse Positive Definite Systems, Prentice-Hall, 1981.
[2] Gilbert, John R., Cleve Moler, and Robert Schreiber, “Sparse Matrices in MATLAB: Design and Implementation,” SIAM Journal on Matrix Analysis, 1992. A slightly expanded version is also available as a technical report from the Xerox Palo Alto Research Center.
Extended Capabilities
Version History
Introduced before R2006a