Практикум по методам решения задачи Коши для систем ОДУ. Даутов P.З. - 11 стр.

UptoLike

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

§ 2. Методы Рунге-Кутта. 11
будем иметь (e
0
= 0):
|e
i+1
| 6 e
Lh
(
e
Lh
|e
i1
| + h|ψ
i
|
)
+ h|ψ
i+1
| 6 . . . 6
6 e
(i+1)Lh
|e
0
| +
i+1
k=1
he
(i+1k)Lh
|ψ
k
| 6
6 e
ihL
(i + 1)h max
i=1,...,N
|ψ
i
| 6 (b a)e
(ba)λ
ψ.
Таким образом, для любого i = 1, 2, . . . , N, справедлива оценка |e
i
| 6
c
0
ψ с постоянной c
0
= (b a)e
(ba)λ
, не зависящей от h. Отсюда
следует искомая оценка
u y 6 c
0
ψ.
Если ввести обозначение C(u) = 0.5 max
t[a,b]
|u
′′
(t)|, то из (6) выте-
кает, что ψ 6 C(u)h. Следовательно,
u y 6 c
0
C(u)h. (10)
Эта оценка малопригодна для практической оценки точности метода
Эйлера, но она говорит нам о том, что с уменьшением h пропорци-
онально уменьшается максимальная погрешность решения, а также
о том, что погрешность может быть сделана сколь угодно малой при
соответствующем выборе h (или числа точек сетки N). Несмотря на
грубость проведенных оценок, из (10) следует также, что погрешность
решения больше для задач, у которых больше отрезок интегрирова-
ния и больше константа Липшица λ; может потребоваться очень ма-
лый шаг сетки для обеспечения точности, если эти числа достаточно
велики. Практика вычислений подтверждает эти выводы.
Сделаем еще два важных замечания. Представим, что мы реа-
лизовали формулы (7) в виде программы для ЭВМ. Ясно, что время
работы T этой программы равно примерно T
f
N, где T
f
время, необхо-
димое для вычисления правой части f уравнения (4). В то же время,
согласно (10), u y 6 c/N, где c = c
0
C(u)(b a). Отсюда можно
сделать вывод, что если мы хотим, например, в 10 раз увеличить точ-
ность полученного решения, то это потребует 10-кратного увеличения
времени работы программы.
§ 2. Методы Рунге-Кутта.                                                  11


будем иметь (e0 = 0):
              (                    )
 |ei+1 | 6 eLh eLh |ei−1 | + h|ψi | + h|ψi+1 | 6 . . . 6
                                            ∑
                                            i+1
                    6e  (i+1)Lh
                                  |e0 | +         he(i+1−k)Lh |ψk | 6
                                            k=1
                           6 eihL (i + 1)h max |ψi | 6 (b − a)e(b−a)λ ∥ψ∥.
                                                   i=1,...,N

Таким образом, для любого i = 1, 2, . . . , N , справедлива оценка |ei | 6
c0 ∥ψ∥ с постоянной c0 = (b − a)e(b−a)λ , не зависящей от h. Отсюда
следует искомая оценка

                              ∥u − y∥ 6 c0 ∥ψ∥.

Если ввести обозначение C(u) = 0.5 maxt∈[a,b] |u′′ (t)|, то из (6) выте-
кает, что ∥ψ∥ 6 C(u)h. Следовательно,

                             ∥u − y∥ 6 c0 C(u)h.                        (10)

Эта оценка малопригодна для практической оценки точности метода
Эйлера, но она говорит нам о том, что с уменьшением h пропорци-
онально уменьшается максимальная погрешность решения, а также
о том, что погрешность может быть сделана сколь угодно малой при
соответствующем выборе h (или числа точек сетки N ). Несмотря на
грубость проведенных оценок, из (10) следует также, что погрешность
решения больше для задач, у которых больше отрезок интегрирова-
ния и больше константа Липшица λ; может потребоваться очень ма-
лый шаг сетки для обеспечения точности, если эти числа достаточно
велики. Практика вычислений подтверждает эти выводы.
    Сделаем еще два важных замечания. Представим, что мы реа-
лизовали формулы (7) в виде программы для ЭВМ. Ясно, что время
работы T этой программы равно примерно Tf N , где Tf время, необхо-
димое для вычисления правой части f уравнения (4). В то же время,
согласно (10), ∥u − y∥ 6 c/N , где c = c0 C(u)(b − a). Отсюда можно
сделать вывод, что если мы хотим, например, в 10 раз увеличить точ-
ность полученного решения, то это потребует 10-кратного увеличения
времени работы программы.