Метод релаксации матрицы

From AlgowikiPool
Revision as of 20:37, 4 November 2025 by Ovsienko Olesya (talk | contribs) (Created page with "== Математическая постановка задачи релаксации матрицы == ''417 группа, ММП ВМК МГУ''<br> ''Овсиенко Ол...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Математическая постановка задачи релаксации матрицы

417 группа, ММП ВМК МГУ
Овсиенко Олеся Павловна
Ноябрь 2025

Постановка исходной задачи

Требуется численно решить краевую задачу для уравнения Лапласа на прямоугольной области:

[math]\displaystyle{ \frac{\partial^2 u}{\partial x^2} + \frac{\partial^2 u}{\partial y^2} = 0, \quad (x,y) \in \Omega = [0,1] \times [0,1] }[/math]

с граничными условиями Дирихле:

[math]\displaystyle{ u(x,y) = g(x,y), \quad (x,y) \in \partial\Omega, }[/math]

где [math]\displaystyle{ \partial\Omega }[/math] — граница области.

Дискретизация задачи

Вводится равномерная сетка с шагом [math]\displaystyle{ h = \frac{1}{N-1} }[/math]:

[math]\displaystyle{ x_i = i \cdot h, \quad y_j = j \cdot h, \quad i,j = 0, 1, \dots, N-1. }[/math]

Аппроксимируя вторые производные конечными разностями, получаем дискретный аналог уравнения Лапласа для внутренних узлов сетки:

[math]\displaystyle{ \frac{u_{i-1,j} - 2u_{i,j} + u_{i+1,j}}{h^2} + \frac{u_{i,j-1} - 2u_{i,j} + u_{i,j+1}}{h^2} = 0, }[/math]

что после преобразования даёт:

[math]\displaystyle{ u_{i,j} = \frac{u_{i-1,j} + u_{i+1,j} + u_{i,j-1} + u_{i,j+1}}{4}. }[/math]

Итерационный метод решения

Для решения полученной системы линейных уравнений используется метод Якоби (релаксации). На каждой итерации [math]\displaystyle{ k }[/math] новые значения вычисляются как:

[math]\displaystyle{ u_{i,j}^{(k)} = \frac{u_{i-1,j}^{(k-1)} + u_{i+1,j}^{(k-1)} + u_{i,j-1}^{(k-1)} + u_{i,j+1}^{(k-1)}}{4}, }[/math]

где [math]\displaystyle{ i,j = 1, 2, \dots, N-2 }[/math] — индексы внутренних узлов.

Критерий остановки

Итерационный процесс прекращается, когда максимальное изменение между итерациями становится меньше заданной точности:

[math]\displaystyle{ \max_{i,j} |u_{i,j}^{(k)} - u_{i,j}^{(k-1)}| \lt \varepsilon_{\text{max}}. }[/math]

Начальные и граничные условия

В конкретной реализации:

  • Граничные условия: [math]\displaystyle{ u_{0,j} = u_{N-1,j} = u_{i,0} = u_{i,N-1} = 0 }[/math]
  • Начальное приближение для внутренних точек: [math]\displaystyle{ u_{i,j}^{(0)} = 1 + i + j }[/math]

Контроль корректности

Для верификации результата вычисляется контрольная сумма:

[math]\displaystyle{ S = \frac{1}{N^2} \sum_{i=0}^{N-1} \sum_{j=0}^{N-1} u_{i,j} \cdot (j+1) \cdot (i+1), }[/math]

которая должна совпадать для всех корректных реализаций алгоритма.

Категория:Численные методы Категория:Методы решения уравнений в частных производных