Вы находитесь на странице: 1из 5

Двухслойные итерационные алгоритмы решения линейных

алгебраических и сеточных уравнений


1. При использовании итерационных методов для решения ЛАУ

𝐴𝑥 = 𝑓 (1)
С квадратной невырожденной матрицей задается 𝑥 ()) - начальное
приближение к 𝑥 ∗ -решению (1), а затем находятся 𝑥 (+) , 𝑥 (-) , … , 𝑥 (/) - новые
приближения к 𝑥 ∗ .
Вычисления прекращаются при выполнении условия 01𝜀 (/) 10 < 𝜀, где 𝜀 (/) =
3
𝑥 (/) − 𝑥 ∗ - погрешность 𝑚 − го приближения, 𝜀 − заданная точность, 𝐷 −
-
симметричная положительно определенная матрица, 1|𝑥|13 = (𝐷𝑥, 𝑥 ).
В двухслойных итерационных методах решения (1) правило
вычисления 𝑥 (NO+) при известном 𝑥 (N) записывается в виде

𝑥 (NO+) − 𝑥 (N)
𝐵 = −R𝐴𝑥 (N) − 𝑓S, (2)
𝜏NO+
Где𝐵 – квадратная невырожденная матрица, 𝜏NO+ – число, называемое
итерационным параметром. Если 𝜏NO+ = 𝜏 при всех 𝑘, то правило (2)
называют стационарным методом итерации. При реализации (2) вначале
находят невязку
𝑟N = 𝐴𝑥 N − 𝑓,
Затем из системы
𝐵𝜔N = 𝑟N

Определяется поправка 𝜔N . Наконец, по формуле

𝑥 (NO+) = 𝑥 (N) − 𝜏NO+ 𝜔N

Вычисляется новое приближение 𝑥 ∗ .


Итерационные методы отличаются матрицей
𝐵 и способом выбора итерационного параметра 𝜏NO+ . Приведем примеры
итерационных методов.
2. Метод Якоби. В качастве матрицы 𝐵 берется матрица 𝐷 =
𝑑𝑖𝑎𝑔_𝑎`a b, а 𝜏NO+ = 1 Метод будет сходиться, если 𝐴 −
матрица с диагональным преобладанием.
3. Метод Зейделя:
𝐵 = 𝐿 + 𝐷, 𝜏NO+ = 1
где 𝐷 = 𝑑𝑖𝑎𝑔_𝑎`a b, элементы матрицы 𝐿 ниже главной или совпадают
с аналогично расположенными элементами матрицы 𝐴,
остальные элементы 𝐿 равны нулю. Если 𝐴 − симметрически
положительно определенная матрица (𝐴 = 𝐴j > 0), то метод
Зейделя сходится.
4. Метод последовательной релаксации:

𝐵 = 𝜏𝐿 + 𝐷, 𝜏NO+ = 𝜏,

𝐿 и 𝐷 сооответствуют аналогичным обозначениям метода Зейделя.


Если (𝐴 = 𝐴j > 0), то метод релаксации сходится при 0 < 𝜏 < 2.
При 0 < 𝜏 < 1 алгоритм называется методом нижней релаксации,
при 0 < 𝜏 < 2 - методом верхней релаксации.
5. Попеременно-треугольный метод:

𝐵 = (𝐷 + 𝜔𝐴+ )𝐷 p+ (𝐷 + 𝜔𝐴- )

где 𝐷 − диагональная, 𝐴+ − нижняя треугольная, 𝐴+ - верхняя


треугольная матрица 𝐴 = 𝐴+ +𝐴- , 𝜔 − числовой параметр. Выбор
𝐷, 𝜔, 𝜏NO+ описан в [ 38,40]
Итерационный параметр 𝜏NO+ , выбирается в зависимости от
свойств 𝐴 и 𝐵. Если удается подобрать матрицу 𝐷 = 𝐷 j > 0 и найти
такие константы 𝛾+ , 𝛾- , что
с) 𝐷𝐵 p+ 𝐴 − симметричная матрица,
𝛽) 𝛾+ 𝐷 ≤ 𝐷𝐵 p+ 𝐴 ≤ 𝛾- 𝐷, 𝛾+ > 0,
то можно построить чебышевский итерационный процесс. В этом
случае задается 𝑚 ≥ 𝑚) и 𝜏a находятся по формуле
𝜏)
𝜏 a = , 𝑗 = 1, 2, … , 𝑚
1 + 𝑝) 𝜇a

2 1−𝜉
𝜏 ) = , 𝑝) = ,
𝛾+ + 𝛾- 1+𝜉
𝛾+ 2𝑖 − 1
𝜉 = , 𝜇• = 𝑐𝑜𝑠 𝜋
𝛾- 2𝑚

(о выборе 𝑖 см [40]). Такой итерационный процесс обеспечивает


выполнение неравенства
(/) ()) 2𝑝+/ 1 − …𝜉
||𝜀 ||3 ≤ 𝑞/ 01𝜀 10 , 𝑞/ = , 𝑝 =
) 1 + 𝑝+-/ + 1 + …𝜉
Если 𝑚) выбирается из условий , 𝑞/† = 𝜀, то чебышевский
итерационный процесс за 𝑚 обеспечивает уменьшение начальной
погрешности 1/ 𝜀 раз.
В качестве матрицы 𝐷 при условии 𝐴 = 𝐴j > 0, 𝐵 = 𝐵 j > 0
можно взять 𝐷 = 𝐴 или 𝐷 = 𝐵. Условие 𝛽 можно переписать в виде

𝛾+ 𝐵 ≤ 𝐴 ≤ 𝛾- 𝐵, 𝛾+ > 0
Если матрицы 𝐴 и 𝐵 невырождены и 𝐴j 𝐵 = 𝐵 j 𝐴 то условие 𝛼) будет
выполняться при 𝐷 = 𝐴j 𝐴, 𝑎 𝛽) принимает вид:

𝛾+ (𝐵𝑥, 𝐵𝑥) ≤ (𝐴𝑥, 𝐵𝑥) ≤ 𝛾- (𝐵𝑥, 𝐵𝑥 ), 𝛾+ > 0.

Для сходимости метода итерации


𝑥 (NO+) − 𝑥 (N)
𝐵 = −R𝐴𝑥 (N) − 𝑓S (3)
𝜏

в случае 𝐴 = 𝐴j > 0 достаточно выполнения условий

𝜏 > 0, 2𝐵 > 𝜏𝐴.

-
В случае выполнений условий 𝛼) и 𝛽) при 𝜏 = 𝜏) = (Š для
‹ OŠŒ )
погрешности 𝑚 − го приближения 𝜀 (/) справедлива оценка
1 − …𝜉 𝛾+
||𝜀 (/) ||3 ≤ 𝑝) ||𝜀 (/) ||3 , 𝑝+ = , 𝜉 = (4)
1 + …𝜉 𝛾-

В более общем случае при известных положительных константах


𝛾+ , 𝛾- , 𝛾• таких, что
+ +
𝛾+ 𝐸 ≤ 𝐶 ≤ 𝛾- 𝐸, 1|𝐶+ |1- ≤ 𝛾• , 𝐶 = 𝐷 - 𝐵 p+ 𝐴𝐷 p- , (5)
𝐶 − 𝐶j
𝐶+ = ,
2
𝜏 = 𝜏‘) = 𝜏) (1 − ’’’ℵ
𝑝) ),

где
2 1 − 𝜉̅ 1 − ℵ𝛾+ 𝛾+
𝜏 ) = ,𝑝
’’’) = , 𝜉̅ = ,ℵ = .
𝛾+ + 𝛾- 1 + 𝜉̅ 1 + ℵ𝛾- …𝛾+ 𝛾- + 𝛾•-


справедливая оценка
’’’’
||𝜀 (/) ||3 ≤ 𝑝 / ())
) 01𝜀 10 (6)
3

В градиентных методах (2) параметр 𝜏NO+ определяется в ходе


вычислений по значениям невязок 𝜏N и поправок 𝜔N
6. Метод наискорейшего спуска. В нем предполагается, что
𝐴 = 𝐴j > 0 (𝐷 = 𝐴) и 𝜏NO+ = (𝜔N , 𝑟N )/(𝐴𝜔N , 𝜔N )

7. Метод минимальных невязок. Для применения этого алгоритма


достаточно выполнения 𝑑𝑒𝑡𝐴 ≠ 0(𝐷 = 𝐴j 𝐴) и
𝜏NO+ = (𝐴𝜔N , 𝑟N )/(𝐴𝜔N , 𝐴𝜔N )
8. Метод минимальных поправок. Алгоритм метода определяется
условиями 𝐵 = 𝐵 j > 0 𝑑𝑒𝑡𝐴 ≠ 0(𝐷 = 𝐴j 𝐵 p+ 𝐴) и
𝜏NO+ = (𝐴𝜔N , 𝜔N )/(𝐵 p+ 𝐴𝜔N , 𝐴𝜔N )
9. Метод минимальных погрешностей. В нем предполагается
𝑑𝑒𝑡𝐴 ≠ 0, 𝐵 = (𝐴j )p+ 𝐵) , 𝐵) = 𝐵)j > 0 (𝐷 = 𝐵) ), поправки 𝜔N
находятся из системы 𝐵) 𝜔N = 𝐴j 𝑟N , и итерационный параметр – по
формуле

𝜏NO+ = (𝑟N , 𝑟N )/(𝐴𝜔N , 𝑟N )

Градиентные методы сходятся при условии 𝑑𝑒𝑡𝐴 ≠ 0, 𝑑𝑒𝑡𝐵 ≠ 0. Если


при обозначенных 𝐷 выполняются условия 𝛼) и 𝛽) или (5) то для
погрешности 𝜀 (/) справедливы оценки (4) или (6) соответственно.
10. Для решения разностных граничных задач
−𝐴` 𝑉`p+ + 𝐵` 𝑉` − 𝐶` 𝑉`O+ = −𝐹` 𝑖 = 1,2, … , 𝑀 − 1 (7)
𝐵+ 𝑉+ − 𝐶+ 𝑉- = −𝐹+ −𝐴ž 𝑉žp+ +𝐵ž 𝑉ž = −𝐹ž (8)

Где 𝐴` , 𝐶` – диагональные, 𝐷` – трехдиагональные матрицы порядка N,


применимы описанные выше приемы построения итерационных методов.
Матрица коэффициентов системы (7),(8) имеет много нулевых элементов.
Это позволяет затрачивать сравнительно небольшой объем вычислительной
(N)
работы на определение 𝑅` - координат невязки 𝑟N :

(N) (N) (N) (N)


𝑅` = −𝐴` 𝑉`p+ + 𝐵` 𝑉` − 𝐶` 𝑉`O+ + 𝐹` , 𝑖 = 1,2, … , 𝑀
𝐴+ = 𝐶ž = 0

С другой стороны, матрица коэффициентов (7),(8) имеет большое число


обусловленности и многие итерационные методы будут сходиться
(N)
медленно. Остановимся на вычислении 𝑊` координаты правок 𝜔N в двух
перспективных методах, при построении которых учитывается структура
уравнений (7),(8).
11.Метод неполной факторизации. Реализацию алгоритма удобно
начать с вычисления последовательности 𝐷+ , 𝐷- , … 𝐷ž – ленточных
(здесь 𝐷` трехдиагональные) матриц, содержащих главные диагонали
матриц 𝑇`p+
𝑇+ = 𝐵` , 𝑇a = 𝐵a − 𝐴a 𝐷ap+ 𝐶ap+ , 𝑗 = 2,3, … , 𝑀.
Если 𝐷ap+ трехдиагональная, то 𝑇a будет также трехдиагональной матрицей,
и для определения трех главных диагоналей 𝑇a p+ применим алгоритм,
построенный на основе “встречных” прогонок.
Пусть 𝑇 – трехдиагональная матрица:

𝑏+ −с+ 0 0 0
⎡−𝑎 𝑏 −с ⋯ ⎤
⎢ - - -⋯ 0 0 ⎥
𝑇 = ⎢ 0 −𝑎• 𝑏• ⋯ 0 0 ⎥
⎢ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯⎥
⎣ 0 0 0 . . .−𝑎§ 𝑏§ ⎦

В которой |𝑏` | ≥ |𝑎` | + |𝑐` |, 𝑖 = 1,2, … , 𝑁 (𝑎` = 0, 𝑐§ = 0), причем хотя бы при
одном 𝑖 справедливо строгое неравенство, и требуется найти 𝑑``p+ ,
𝑑`` , 𝑑``O+ – элементы трех главных диагоналей матрицы𝑇 p+ . Для этого
достаточно вычислить вспомогательные 𝑝` , 𝑞` по соотношениям
𝑐a
𝑝+ = 0, 𝑝aO+ = , 𝑗 = 1,2, … , 𝑁 − 1
𝑏a − 𝑎a 𝑝a
𝑎a
𝑝§ = 0, 𝑝ap+ = , 𝑗 = 𝑁, 𝑁 − 1, … , 2
𝑏a − 𝑐𝑝a
а затем воспользоваться их связью с искомыми значениями:
1 1
𝑑++ = , 𝑑§§ =
𝑏+ − 𝑐+ 𝑞+ 𝑏§ − 𝑎§ 𝑝§
1
𝑑`` = , 𝑖 = 2,3, … , 𝑁 − 1
𝑏` − 𝑎` 𝑝` − 𝑐` 𝑞`
𝑑`p+,a = 𝑝` 𝑑`` , 𝑖 = 2,3, … , 𝑁, 𝑑`O+,a = 𝑞` 𝑑`` , 𝑖 = 1,2, … , 𝑁 − 2

(N)
Вычисление 𝑊` (координат поправки wk) состоит из двух этапов.
Вначале определяются вспомогательные векторы

(N) (N) (N) (N) (N)


𝐿+ = 𝐷+ 𝑅+ , 𝐿a = 𝐷a (𝑅a + 𝐴a 𝐿ap+ , 𝑗 = 2,3, … , 𝑀

(N)
а затем находятся 𝑊` :

(N) (N) (N) (N) (N)


𝑊` = 𝐿ž , 𝑊a = 𝐷a 𝑐a 𝑊aO+ + 𝐿a , 𝑗 = 𝑀 − 1, 𝑀 − 2, … ,1.