Разреженный обратный заказ Катилла-МакКи
r = symrcm(S)
r = symrcm(S) возвращает симметричный обратный порядок Катилла-МакКи S. Это перестановка r такой, что S(r,r) имеет тенденцию иметь ненулевые элементы ближе к диагонали. Это хороший предварительный порядок для LU или Cholesky факторизации матриц, которые происходят от длинных, тоненьких проблем. Упорядочение работает как для симметричных, так и для несимметричных S.
Для вещественной, симметричной разреженной матрицы, S, собственные значения S(r,r) такие же, как у S, но eig(S(r,r)) вероятно, требуется меньше времени для вычисления, чем eig(S).
Алгоритм сначала находит псевдопериферальную вершину графа матрицы. Затем он генерирует структуру уровня путем поиска по ширине и упорядочивает вершины путем уменьшения расстояния от псевдопериферальной вершины. Реализация тесно основана на реализации SPARSPAK, описанной Джорджем и Лю.
[1] Джордж, Алан и Джозеф Лю, Компьютерное решение больших разреженных положительных определенных систем, Прентис-Холл, 1981.
[2] Гилберт, Джон Р., Клеве Молер и Роберт Шрайбер, «Разреженные матрицы в MATLAB: дизайн и реализация», SIAM Journal on Matrix Analysis, 1992. Немного расширенная версия также доступна в виде технического отчета исследовательского центра Xerox Palo Alto.