Численные методы. Корнюшин П.Н. - 17 стр.

UptoLike

Составители: 

17
начала этих вычислений надо задать y
N
. Определим y
N
из краевого условия y
N
=λ
2
y
N-1
2
и условия
(3) при i=N-1: y
N-1
=α
N
y
N
+β
N
. Отсюда находим
.
1
2
22
λα
β
λ
µ
N
N
N
y
+
=
(7)
Соберем все формулы прогонки и запишем их в порядке применения
;,1,...,2,1,
11
1
λα
α
α
==
=
+
Ni
ac
b
iii
i
i
(8)
,1,...,2,1,
1
=
+
=
+
Ni
ac
fa
iii
iii
i
α
β
β
β
1
1
; (9)
,
1
2
22
λα
β
λ
µ
N
N
N
y
+
= .0,1,2,...,2,1,
111
=+=
+++
NNiyy
iii
i
βα
(10)
Стрелки показывают направление счета:
)( от i к i+1, )(
- от i+1 к i.
Таким образом, краевая задача для уравнения второго порядка сведена к трем задачам
Коши для уравнений первого порядка.
1.1.3.2. Устойчивость метода прогонки
Формулы прогонки можно применять, если знаменатели дробей (8) и (10) не обращаются в
нуль. Достаточными условиями этого являются неравенства
,2,1,1
,1,...,2,1,
2121
<+
=+
λλλλ
Nibac
iii
(11)
причем одно из первых двух неравенств второй строки должно быть строгим. Покажем, что при
условиях (11) знаменатели c
i
-a
i
α
i
и 1-α
N
λ
2
не обращаются в нуль и
.,...,2,1,1 Ni
i
=
α
(12)
Предположим, что
1
i
α
и покажем, что 1
1
+i
α
; тогда отсюда и из условия
1
1
=
λα
i
будет следовать (12). Рассмотрим разность
iiii
bac
α
. Поскольку
iiii
bac
α
01(
iiiiii
abac
αα
, то 0>
iiii
bac
α
и
.1/
1
=
+ iiiii
acb
αα
Заметим, что если
000
iii
bac +> хотя бы в одной точке i=i
0
, то 1<
i
α
для всех i>i
0
и в
том числе для i=N:
1<
N
α
. Тогда 0111
22
>
NNN
αλαλα
, и условие 2
21
<+
λλ
является лишним. Если
1
1
<
λ
, то 1<
N
α
. Если же 1
1
=
λ
, то 1
2
<
λ
и 1
N
α
, и мы имеем
0111
222
>
λλαλα
NN
. Таким образом, при выполнении условий (11) задача (1)
имеет единственное решение, которое мы находим по формулам прогонки (8) – (10).
Вычисления по формулам (8) – (10) ведутся на компьютере приближенно, с конечным
числом значащих цифр. В результате погрешностей округления фактически находится не функция
y
i
решение задачи (1), а
i
y
~
решение той же задачи с возмущенными коэффициентами
2
~
1
~~~~
,,,,
λλ
iii
cba и правыми частями
2
~
1
~~
,,
µµ
i
f . Возникает естественный вопрос: не происходит
ли в ходе вычислений возрастание погрешности округления, что может привести как к потере
точности, так и к невозможности продолжать вычисления из-за роста определяемых величин?
Примером может служить нахождение y
i
по формуле y
i+1
=qy
i
при q>1. Поскольку y
n
=q
n
y
0
, для
любого y
0
можно указать такое n
0
, при котором
0
n
y будет машинной бесконечностью. Фактически
в силу погрешностей округления определяется не точное значение y
i
, а значение
i
y
~
из уравнения
                                                                17


начала этих вычислений надо задать yN. Определим yN из краевого условия yN=λ2yN-1+µ2 и условия
(3) при i=N-1: yN-1=αNyN+βN. Отсюда находим
                                           µ 2 + λ2 β N
                                  yN =                  .                                (7)
                                            1 − α N λ2
        Соберем все формулы прогонки и запишем их в порядке применения
                                  →             bi
                                  α i +1 =               , i = 1,2,..., N − 1,α 1 = λ1 ; (8)
                                            ci − aiα i
                                  →         a β + fi
                                  β i +1   = i i           , i = 1,2,..., N − 1, β1=µ1; (9)
                                            c i − a iα i
                        µ 2 + λ2 β N ←
                 yN =               , y i = α i +1 y i +1 + β i +1 , i = N − 1, N − 2,...,2,1,0. (10)
                         1 − α N λ2
      Стрелки показывают направление счета: (→) от i к i+1, (←) - от i+1 к i.
      Таким образом, краевая задача для уравнения второго порядка сведена к трем задачам
Коши для уравнений первого порядка.


                                   1.1.3.2. Устойчивость метода прогонки

       Формулы прогонки можно применять, если знаменатели дробей (8) и (10) не обращаются в
нуль. Достаточными условиями этого являются неравенства
                                  c i ≥ a i + bi , i = 1,2,..., N − 1,
                                                                                       (11)
                                   λ1 ≤ 1, λ 2 ≤ 1, λ1 + λ 2 < 2,
причем одно из первых двух неравенств второй строки должно быть строгим. Покажем, что при
условиях (11) знаменатели ci-aiαi и 1-αNλ2 не обращаются в нуль и
                         α i ≤ 1, i = 1,2,..., N .                (12)
        Предположим, что α i ≤ 1 и покажем, что α i +1 ≤ 1 ; тогда отсюда и из условия
α i = λ1 ≤ 1        будет   следовать           (12).   Рассмотрим        разность      c i − a i α i − bi .   Поскольку
c i − a iα i − bi ≥ c i − a i α i − bi ≥ a i (1 − α i ≥ 0 ,                  то           c i − a iα i ≥ bi > 0       и
α i +1 = bi / c i − a iα i ≤ 1.
        Заметим, что если c i0 > a i0 + bi0 хотя бы в одной точке i=i0, то α i < 1 для всех i>i0 и в
том числе для i=N: α N < 1 . Тогда 1 − α N λ 2 ≥ 1 − α N λ 2 ≥ 1 − α N > 0 , и условие λ1 + λ 2 < 2
является лишним. Если λ1 < 1 , то α N < 1 . Если же λ1 = 1 , то λ 2 < 1 и α N ≤ 1 , и мы имеем
1 − α N λ 2 ≥ 1 − α N λ 2 ≥ 1 − λ 2 > 0 . Таким образом, при выполнении условий (11) задача (1)
имеет единственное решение, которое мы находим по формулам прогонки (8) – (10).
       Вычисления по формулам (8) – (10) ведутся на компьютере приближенно, с конечным
числом значащих цифр. В результате погрешностей округления фактически находится не функция
                                       ~
yi – решение задачи (1), а y i – решение той же задачи с возмущенными коэффициентами
~   ~   ~   ~   ~                                  ~    ~   ~
a i , b i , c i , λ 1 , λ 2 и правыми частями f i , µ 1 , µ 2 . Возникает естественный вопрос: не происходит
ли в ходе вычислений возрастание погрешности округления, что может привести как к потере
точности, так и к невозможности продолжать вычисления из-за роста определяемых величин?
Примером может служить нахождение yi по формуле yi+1=qyi при q>1. Поскольку yn=qny0, для
любого y0 можно указать такое n0, при котором y n0 будет машинной бесконечностью. Фактически
                                                                                                        ~
в силу погрешностей округления определяется не точное значение yi, а значение y i из уравнения