Многосеточный метод
Материал из Википедии — свободной энциклопедии
Многосеточный (МС, англ. multigrid) метод — метод решения системы линейных алгебраических уравнений, основанный на использовании последовательности уменьшающихся сеток и операторов перехода от одной сетки к другой. Сетки строятся на основе больших значений в матрице системы, что позволяет использовать этот метод при решении эллиптических уравнений даже на нерегулярных сетках.
[править] Основы метода
Предположим, что необходимо решить систему вида
Au = f,
где A — матрица с элементами aij. Для удобства сопоставим индексы с узлами сетки, таким образом ui представляет собой значение u в узле i. Множество узлов сетки обозначим как . Основная идея многосеточных методов состоит в том, что ошибка e, которая не может быть устранена методами релаксации, должна быть убрана с помошью коррекции из решения на грубой сетке.
Используя верхний индекс в качестве номера уровня введем следующие обозначения:
- Последовательность сеток , при чем .
- Сеточные операторы .
- Операторы интерполяции .
- Операторы сглаживания .
Все эти компоненты многосеточного метода строятся на первом этапе, известном как этап построения
- Этап построения
- Приравнять k = 1.
- Разделить Ωk на непересекающиеся множества Ck и Fk.
- Приравнять Ωk + 1 = Ck.
- Построить оператор интерполяции Pk.
- Построить .
- Построить если необходимо Sk.
- Если сетка Ωk достаточно мала, приравнять M = k + 1 и остановится. Иначе k = k + 1 и переход на шаг 2.
Как только этап построения завершен, может быть определен рекурсивный цикл построения решения:
- Алгоритм:
- Если k = M, решить AMuM = fM используя прямой метод.
- Иначе:
- Применить метод релаксации Sk μ1 раз к Akuk = fk.
- Произвести коррекцию на грубой сетке:
- Вычислить rk = fk − Akuk.
- Вычислить .
- Применить .
- Обновить решение uk = uk + Pkek + 1.
- Применить метод релаксации Sk μ2 раз к Akuk = fk.
Вышеприведенный алгоритм описывает — цикл.
Выбор последовательности сеток и оператора интерполяции являются наиболее важными элементами этапа построения и во многом определяют качество многосеточного метода. Критерием качества являются две измеряемые величины:
- фактор сходимости — показывающий насколько быстро сходится метод, то есть какое количество итераций требуется для достижения заданной точности;
- сложность оператора — определяющей количество операций и объем памяти необходимой для каждой итерации метода.
Сложность оператора Cop рассчитывается как отношение количества ненулевых элементов во всех матрицах к количеству ненулевых элементов в матрице первого уровня A1 = A.