|MATLAB Function Reference|
Sparse column minimum degree permutation
p = colmmd(S)
returns the column minimum degree permutation vector for the sparse matrix
S. For a nonsymmetric matrix
S, this is a column permutation
p such that
S(:,p) tends to have sparser LU factors than
colmmd permutation is automatically used by
/ for the solution of nonsymmetric and symmetric indefinite sparse linear systems.
spparms to change some options and parameters associated with heuristics in the algorithm.
The minimum degree algorithm for symmetric matrices is described in the review paper by George and Liu . For nonsymmetric matrices, the MATLAB minimum degree algorithm is new and is described in the paper by Gilbert, Moler, and Schreiber . It is roughly like symmetric minimum degree for
A'*A, but does not actually form
Each stage of the algorithm chooses a vertex in the graph of
A'*A of lowest degree (that is, a column of
A having nonzero elements in common with the fewest other columns), eliminates that vertex, and updates the remainder of the graph by adding fill (that is, merging rows). If the input matrix
S is of size
n, the columns are all eliminated and the permutation is complete after
n stages. To speed up the process, several heuristics are used to carry out multiple stages simultaneously.
The arithmetic operator
 George, Alan and Liu, Joseph, "The Evolution of the Minimum Degree Ordering Algorithm," SIAM Review, 1989, 31:1-19.
 Gilbert, John R., Cleve Moler, and Robert Schreiber, "Sparse Matrices in MATLAB: Design and Implementation," SIAM Journal on Matrix Analysis and Applications 13, 1992, pp. 333-356.
© 1994-2005 The MathWorks, Inc.