Sparse Matrix Ordering :: Boost.Graph Documentation

# Sparse Matrix Ordering

Reorder the rows and columns of a sparse matrix (represented as a graph) to reduce fill-in during factorization or to improve cache locality. Each vertex represents a row/column; edges represent nonzero entries.

Algorithm | When to use
--- | ---
Cuthill-McKee | Reduces bandwidth. The reverse Cuthill-McKee ordering (just reverse the output) is widely used for FEM and sparse linear solvers.
King | Similar to Cuthill-McKee but minimizes the profile instead of bandwidth.
Minimum Degree | Reduces fill-in during Cholesky factorization. Good for symmetric positive definite systems.
Sloan | Reduces both profile and wavefront simultaneously.
Sloan Start/End Vertices | Selects good starting and ending vertices for the Sloan algorithm.

These orderings are evaluated using the metrics in Graph Metrics: bandwidth, profile, and wavefront.