Вычислительная математика. Ч. 2. Асламова В.С - 19 стр.

UptoLike

37
водных используются соответствующие конечно-разностные соотношения.
Такая замена дифференциального уравнения разностным называется его ап-
проксимацией на сетке (или разностной аппроксимацией). Таким образом,
решение дифференциального уравнения сводится к отысканию значений се-
точной функции в узлах сетки. Значения сеточной функции зависят от шага
сетки h, т.е. на самом деле мы имеем не одн
у разностную задачу, а семейство
задач, зависящих от параметра h. Это семейство задач называется разностной
схемой.
В вычислительной практике широкое распространение получил аналити-
ческий метод, основанный на идее разложения в ряд решения задачи Коши
(2.3). Часто для этих целей используют формулу Тейлора. В этом случае вы-
числительные правила строятся особенно про
сто. Приближенное решение
исходной задачи ищется в виде:
Xxxxy
i
xx
xy
i
m
i
i
m
=
00
)(
0
0
),(
!
)(
)(
, (2.5)
где
),()()(,)()(
0000
)1(
000
)0(
yxfxyxyyxyxy =
=== ,
а значения производных
mixy
i
,...,3,2),(
0
)(
= находят по формулам, по-
лученным последовательным дифференцированием уравнения (2.3):
),,(),(),()(
0000000
)2(
yx
y
f
yxfyx
x
f
xy
+
=
+
+
+
= ),(),(),(),(2),()(
00
2
2
00
2
00
2
0000
2
2
0
)3(
yx
y
f
yxfyx
yx
f
yxfyx
x
f
xy
+
+ ),(),(),(),(
00000000
yx
y
f
yxfyx
x
f
yx
y
f
и т.п.
Для значений х, близких к х
0
, метод (2.5) при достаточно большом m дает
обычно хорошее приближение к точному решению y(x) задачи (2.3).
Однако, с увеличением расстояния
0
xx погрешность приближенного
равенства y(x) y
m
(x), вообще говоря, возрастает по абсолютной величине и
правило (2.5) становится вовсе неприемлемым. В таких случаях предпочти-
тельнее использовать численные методы решения задачи Коши, позволяющие
в фиксированных узлах последовательно находить значения y
i
y(x
i
),
38
i=1,2,…,n приближенного решения. Сходимость численных методов не так
жестко связана длиной отрезка [x
0
, X].
Большинство численных методов решения задачи Коши можно привести к
виду
),,...,,,...,,(
111 siiiqiqii
yyyyyFy
++++
=
(2.6)
где Fнекоторая известная функция указанных аргументов, определяемая
способом построения метода и зависящая от вида уравнения (2.3) и выбран-
ной сетки. При q=0, 0 s 1 вычислительные правила (2.6) называются од-
ношаговыми, а при q1 или s>1 – многошаговыми. Методы вида (2.6) назы-
ваются явными в случае s=0 и неявными при s=1. При s>1 мн
огошаговые ме-
тоды называют методами с забеганием вперед.
2.1. Одношаговые методы
2.1.1. Метод Эйлера
Простейшим численным методом решения задачи Коши (2.3) для обыкно-
венного дифференциального уравнения 1-го порядка является метод Эйлера.
Он основан на разложении искомой функции
Y(x) по формуле Тейлора (2.5) в
окрестностях узлов x
i
(i=0, 1, ...). В методе Эйлера используется m=1. В ре-
зультате получим:
Y(x
i
+
Δ
x
i
)
Y(x
i
) + Y'(x
i
)
Δ
x
i
. (2.7)
При условии, что решение уравнения (2.3) имеет на рассматриваемом от-
резке непрерывную производную второго порядка, погрешность приближен-
ного равенства (2.7) будет величиной порядка O(
Δ
x
i
2
).
Заменяем значения функции Y в узлах x
i
значениями сеточной функции y
i
.
Тогда уравнение (2.3) перепишется в виде:
Y'(x
i
) = f(x
i
, Y(x
i
)) = f(x
i
, y
i
).
Будем считать, для простоты, узлы равноотстоящими, т. е.
Δ
x
i
= x
i+1
- x
i
=
h =const (i = 0, 1, ...). Учитывая введенные обозначения, из равенства (2.7)
получаем:
y
i+1
= y
i
+ hf(x
i
, y
i
)+ O(h
2
), i=0, 1, ... (2.8)
Полагая i = 0, с помощью соотношения (2.8) находим значение сеточной
функции y
1
при x = x
1
:
y
1
= y
0
+ hf(x
0,
y
0
).
водных используются соответствующие конечно-разностные соотношения.                                                   i=1,2, ,n приближенного решения. Сходимость численных методов не так
Такая замена дифференциального уравнения разностным называется его ап-                                                жестко связана длиной отрезка [x0 , X].
проксимацией на сетке (или разностной аппроксимацией). Таким образом,                                                    Большинство численных методов решения задачи Коши можно привести к
решение дифференциального уравнения сводится к отысканию значений се-                                                 виду
точной функции в узлах сетки. Значения сеточной функции зависят от шага                                                                   yi +1 = F ( yi − q , yi − q +1 ,..., yi , yi +1 ,..., yi + s ),   (2.6)
сетки h, т.е. на самом деле мы имеем не одну разностную задачу, а семейство
                                                                                                                      где F – некоторая известная функция указанных аргументов, определяемая
задач, зависящих от параметра h. Это семейство задач называется разностной
                                                                                                                      способом построения метода и зависящая от вида уравнения (2.3) и выбран-
схемой.
                                                                                                                      ной сетки. При q=0, 0 ≤ s ≤ 1 вычислительные правила (2.6) называются од-
    В вычислительной практике широкое распространение получил аналити-
                                                                                                                      ношаговыми, а при q≥1 или s>1 – многошаговыми. Методы вида (2.6) назы-
ческий метод, основанный на идее разложения в ряд решения задачи Коши
                                                                                                                      ваются явными в случае s=0 и неявными при s=1. При s>1 многошаговые ме-
(2.3). Часто для этих целей используют формулу Тейлора. В этом случае вы-
                                                                                                                      тоды называют методами с забеганием вперед.
числительные правила строятся особенно просто. Приближенное решение
исходной задачи ищется в виде:
                                                                                                                                                 2.1. Одношаговые методы
                                                ( x − x0 )i ( i )
                                                m
                                ym ( x ) ≈ ∑               y ( x0 ),             x0 ≤ x ≤ X ,               (2.5)                                    2.1.1. Метод Эйлера
                                           i =0      i!                                                                  Простейшим численным методом решения задачи Коши (2.3) для обыкно-
                                                                                                                      венного дифференциального уравнения 1-го порядка является метод Эйлера.
где y
        (0)
              ( x0 ) = y ( x0 ) = y0 ,              y (1) ( x0 ) = y′( x0 ) = f ( x0 , y0 ) ,                         Он основан на разложении искомой функции Y(x) по формуле Тейлора (2.5) в
а значения производных y ( x0 ),
                                             (i )
                                                             i = 2,3,..., m находят по формулам, по-                  окрестностях узлов xi (i=0, 1, ...). В методе Эйлера используется m=1. В ре-
                                                                                                                      зультате получим:
лученным последовательным дифференцированием уравнения (2.3):
                                                                                                                                                 Y(xi + Δ xi) ≈ Y(xi) + Y'(xi) Δ xi .          (2.7)
                                            ∂f                                ∂f
                         y ( 2 ) ( x0 ) =      ( x0 , y 0 ) + f ( x 0 , y 0 )    ( x0 , y0 ),                            При условии, что решение уравнения (2.3) имеет на рассматриваемом от-
                                            ∂x                                ∂y                                      резке непрерывную производную второго порядка, погрешность приближен-
                     ∂2 f                                ∂2 f                               ∂2 f                      ного равенства (2.7) будет величиной порядка O(Δ xi 2).
   y ( 3) ( x0 ) =        ( x0 , y 0 ) + 2 f ( x0 , y0 )      ( x0 , y0 ) + f 2
                                                                                ( x0 , y0 )      ( x0 , y0 ) +
                     ∂x 2                                ∂x∂y                               ∂y 2                         Заменяем значения функции Y в узлах xi значениями сеточной функции yi.
                         ∂f               ⎡ ∂f                         ∂f          ⎤                                  Тогда уравнение (2.3) перепишется в виде:
                     +      ( x0 , y0 ) ⋅ ⎢ ( x0 , y0 ) + f ( x0 , y0 ) ( x0 , y0 )⎥ и т.п.                                                         Y'(xi) = f(xi, Y(xi)) = f(xi, yi).
                         ∂y               ⎣ ∂x                         ∂y          ⎦
                                                                                                                         Будем считать, для простоты, узлы равноотстоящими, т. е. Δ xi = xi+1 - xi =
   Для значений х, близких к х0 , метод (2.5) при достаточно большом m дает
                                                                                                                      h =const (i = 0, 1, ...). Учитывая введенные обозначения, из равенства (2.7)
обычно хорошее приближение к точному решению y(x) задачи (2.3).
                                                                                                                      получаем:
   Однако, с увеличением расстояния x − x0 погрешность приближенного                                                                      yi+1 = yi + hf(xi, yi)+ O(h 2),       i=0, 1, ...    (2.8)
равенства y(x) ≈ ym(x), вообще говоря, возрастает по абсолютной величине и                                               Полагая i = 0, с помощью соотношения (2.8) находим значение сеточной
правило (2.5) становится вовсе неприемлемым. В таких случаях предпочти-                                               функции y1 при x = x1:
тельнее использовать численные методы решения задачи Коши, позволяющие                                                                                    y1 = y0 + hf(x0, y0).
в фиксированных узлах последовательно находить значения yi ≈ y(xi),


                                                                                                                 37   38