Перестановка вложенного рассечения
указывает дополнительные параметры, использующие один или несколько аргументов пары имя-значение. Например, p = dissect(A,Name,Value)dissect(A,'NumIterations',15) использует 15 итераций уточнения во вложенном алгоритме рассечения вместо 10.
Алгоритм упорядочения вложенных рассечений, описанный в [1], представляет собой многоуровневый алгоритм разбиения графов, который используется для получения порядка уменьшения заполнения разреженных матриц. Входная матрица рассматривается как матрица смежности графа. Алгоритм укрупняет граф путем сворачивания вершин и рёбер, переупорядочивает меньший граф, а затем использует шаги уточнения, чтобы отменить укрупнение малого графа и произвести переупорядочение исходного графа.
Пары имя-значение для dissect позволяют управлять различными этапами алгоритма:
Огрубление
В этой фазе алгоритм создает последовательно меньшие графы из исходного графа путём сворачивания вместе смежных пар вершин. 'MaxDegreeThreshold' позволяет отфильтровать высоко связанные вершины графа (которые являются плотными столбцами в матрице), упорядочив их последними.
Разделение
После укрупнения графа алгоритм полностью переупорядочивает граф меньшего размера. На каждом шаге разбиения алгоритм пытается разбиить граф на равные части: 'NumSeparators' определяет количество частей для секционирования графика, 'VertexWeights' при необходимости назначает веса вершинам, и 'MaxImbalance' определяет порог для разницы в весе между различными разделами.
Обработка
После того, как наименьший граф переупорядочен, алгоритм делает проекции, чтобы увеличить граф обратно до исходного размера путем расширения вершин, которые были ранее объединены. После каждого шага проекции выполняется шаг уточнения, который перемещает вершины между секциями для улучшения качества решения. 'NumIterations' управляет количеством шагов уточнения, используемых в течение этой фазы выравнивания.
[1] Карыпис, Георгий и Випин Кумар. «Многоуровневая схема быстрого и высокого качества для разбиения нерегулярных графиков». Журнал SIAM по научным вычислениям. Том 20, номер 1, 1999, стр. 359-392.