1. Метод прогонки
Предложили в 1953 г. Гельфанд и Локуциевский
Использование неявных разностных уравнений приводит к необъективности решать
системы алгебраических уравнений. Показано. Что для линейных систем число операций
будет порядка 1/h2
. Важным частным случаем являются системы так называемых
“трехточечных» разностных уравнений.
Система трехточечных линейных уравнений в общем виде записывается
Aiyi-1 – Ciyi + Biyi+1 = -Fi
Ai, Ci, Bi,-Fi - известные коэффициенты.
Граничные условия для достаточно широкого класса задач могут быть приведены к
форме
– C0y0 + B0y1 = -F0
ANyN-1 – CNyN = -FN
Их можно привести у виду
y0 = 1y1 + 1;
yN = 2yN + 2;
При использовании метода прогонки предполагается
Ai>0, Bi>0, Ci Ai + Bi 10, 21
1 + 2<2
Что обеспечивает разрешимость задачи и устойчивость метода прогонки.
Метод прогонки учитывает специальный вид системы – трехдиагональность ее
матрицы.
Решение ищется в виде
yi = xi+1yi+1 + i+1, i = 0,1,…N-1
Где xi+1, i+1 - неизвестные пока коэффициенты
0)(
)(
)()(
11111
1111111
1111
iiiiiiiiiiiiiii
iiiiiiiiiiiiiii
iiiiiiiiiii
FCAxABxcxxAy
FyBCyxCAyxxA
FyByxCyxA
Это равенство автоматически удовлетворяется, если выражение при yi+1 и
свободный член равен нулю
0)(
0)(
1
1
iiiiiii
iiiii
FACxA
BxCxA
2. Откуда получаем рекуррентные формулы
iii
iii
i
iii
i
i
xAC
FA
xAC
B
x
11 ,
Для того чтобы вычислить все значения xi, i необходимо знать x1, 1
Из левого граничного условия имеем
x1 = 1, 1 = 1
Обратная прогонка проводится по формуле
yi = xi+1yi+1 + i+1
Исходное значение yN необходимо для обратной прогонки получается из
совместного решения правого краевого условия и этой зависимости
yN-1 = xNyN + N
yN = 2yN + 2;
откуда
N
N
N
x
y
2
22
1
Условия, обеспечивающие разрешимость, обеспечивают выполнения неравенств
0)1()1(
,...,1,010
1111111
iiiiiiiiiiiiiiiiiii
i
xBxxABxBxAxxABxCxxA
BACNix
1
1
11
1
)1(
1
1
i
i
i
i
iii
ii
iii
i
i
iiiiii
iiiiiiiiiii
iii
i
i
A
xB
x
AxC
Ac
xAC
B
x
ACBCBA
ACACACAC
xAC
B
которые в свою очередь гарантируют устойчивость счета и переобращение в нуль
знаменателя .1- 2xN
Метод прогонки требует выполнения 1/h операций. Аналогично можно получить
формулы для левой прогонки
3. 11
111
0
2
1
1
2
1
111
1 x
x
y
BC
FB
x
BC
A
y
N
iii
iii
i
N
iii
i
i
iii
Комбинируя левую и правую прогонку, получаем метод встречных прогонок.
Пусть i = i0 0<i0<N - некий внутренний узел, тогда в области 0 i i0+1 вычисляем
i, i
1 1 1
1 1 1
i
i
i i i
i i i
i
i i i
B
x
c x A
A F
c x A
а в области 0 ,i ii i N
1
1
1
i
i
i i i
i i i
i
i i i
A
c B
B F
c B
При i = i0 сшиваем решения
0 0 0 0 0 0 0 0
0 0 0
0
0 0
1 1 1 1 1 1 1
1 1 1
1 1
;
1
i i i i i i i i
i i i
i
i i
y y y y
y
Метод может быть полезен, если необходимо определить значение yi, только в
одной точке i0.