ВУЗ:
Составители:
53
3. Одношаговые методы и методы прогноза и коррекции обеспечивают
примерно одинаковую точность результатов. Однако вторые в отличие от
первых позволяют легко оценить погрешность на шаге. По этой причине,
пользуясь одношаговыми методами, величину шага h выбирают несколько
меньше, чем это, строго говоря, необходимо, и поэтому методы прогноза и
коррекции оказываются более эффективными.
4. При
меняя метод Рунге-Кутта четвёртого порядка точности, на каждом
шаге приходится вычислять четыре значения функции, в то время как для
обеспечения сходимости метода прогноза и коррекции того же порядка точ-
ности достаточно двух значений функции. Поэтому методы прогноза и кор-
рекции требуют почти вдвое меньше машинного времени, чем методы Рунге-
Кутта сравни
мой точности.
2.3. Решение систем обыкновенных
дифференциальных уравнений
Математическое описание многих явлений часто сводится к системе диф-
ференциальных уравнений вида
),,,,(
),,,,,(
),,,,,(
21
2122
2111
nnn
n
n
yyyxfy
yyyxfy
yyyxfy
K
LLLLLLLLLL
K
K
=
′
=
′
=
′
(2.31)
с дополнительными (начальными) условиями:
,)(,)(
,)(
00
0
0202
101
nn
yxyyxy
yxy
==
=
L
(2.32)
где х – независимая переменная,
)(,),(),(
21
xyxyxy
n
K
- неизвестные
(искомые) функции.
Наиболее простым методом численного решения системы (2.31) с началь-
ными условиями (2.32) является метод Эйлера, который мы и рассмотрим.
Пусть нам известно решение системы (2.31) в точке х, и необходимо получить
решение в точке x+h, тогда согласно методу Эйлера
)).(,),(),(,()()(
)),(,),(),(,()()(
)),(,),(),(,()()(
21
21222
21111
xyxyxyxhfxyhxy
xyxyxyxhfxyhxy
xyxyxyxhfxyhxy
nnnn
n
n
K
LLLLLLLLLLLLLLLLLLLL
K
K
+=+
+=+
+
=
+
(2.33)
54
Используя начальные условия (2.32), можно последовательно получить
приближённые значения в точках
101
hxx
+
=
,
212
hxx
+
=
,
323
hxx +=
…
Замечание. Дифференциальное уравнение n-го порядка вида:
),,,,,(
)1()( −
′′′
=
nn
yyyyxfy K
(2.34)
с начальными условиями:
)1(
00
)1(
0000
)(,,)(,)(
−−
=
′
=
′
=
nn
yxyyxyyxy K
. (2.35)
сводится к системе уравнений (2.31) и (2.32) с постоянным шагом h.
Блок-схема метода Эйлера для решения систем обыкновенных дифферен-
циальных уравнений представлена на рис 15.
Задание.
Разработайте алгоритм решения системы дифференциальных
уравнений методом Рунге-Кутта.
Начало
ввод X0,
Xk, h, N
i := 1, N
печать
начальных
у
словий
ввод Y0[i]
X0
≤
Xk
Y[1] := F1(X0, Y0)
Y[2] := F2(X0, Y0)
……………………
Y[N] := FN(X0, Y0)
X0 := X0+h
Конец
да
нет
Ввод начальных усло-
вий для каждого
уравнения системы
Расчёт правых
частей диф.
уравнений
Печать X0
i := 1, N
Y0[i] := Y0[i]+h*Y[i]
Печать Y0
[
i
]
Рис.15. Блок- схема метода Эйлера для решения систем
обыкновенных дифференциальных уравнений.
Расчёт
следующих
приближений
3. Одношаговые методы и методы прогноза и коррекции обеспечивают Используя начальные условия (2.32), можно последовательно получить
примерно одинаковую точность результатов. Однако вторые в отличие от приближённые значения в точках x 1 = x 0 + h1 , x2 = x1 + h2 , x 3 = x 2 + h3
первых позволяют легко оценить погрешность на шаге. По этой причине, Замечание. Дифференциальное уравнение n-го порядка вида:
пользуясь одношаговыми методами, величину шага h выбирают несколько
меньше, чем это, строго говоря, необходимо, и поэтому методы прогноза и
y ( n ) = f ( x, y, y ′, y ′′,K, y ( n −1) ) (2.34)
коррекции оказываются более эффективными. с начальными условиями:
4. Применяя метод Рунге-Кутта четвёртого порядка точности, на каждом y( x0 ) = y0 , y ′ ( x 0 ) = y 0′ , K , y ( n − 1 ) ( x 0 ) = y 0( n − 1 ) . (2.35)
шаге приходится вычислять четыре значения функции, в то время как для сводится к системе уравнений (2.31) и (2.32) с постоянным шагом h.
обеспечения сходимости метода прогноза и коррекции того же порядка точ- Блок-схема метода Эйлера для решения систем обыкновенных дифферен-
ности достаточно двух значений функции. Поэтому методы прогноза и кор- циальных уравнений представлена на рис 15.
рекции требуют почти вдвое меньше машинного времени, чем методы Рунге- Задание. Разработайте алгоритм решения системы дифференциальных
Кутта сравнимой точности. уравнений методом Рунге-Кутта.
Начало
2.3. Решение систем обыкновенных
дифференциальных уравнений ввод X0,
Математическое описание многих явлений часто сводится к системе диф- Xk, h, N Ввод начальных усло-
ференциальных уравнений вида вий для каждого
i := 1, N уравнения системы
y1′ = f 1 ( x, y1 , y 2 , K , y n ),
ввод Y0[i]
y 2′ = f 2 ( x, y1 , y 2 , K , y n ), (2.31)
LLLLL LLLLL
y n′ = f n ( x, y1 , y 2 , K , y n ) печать
начальных
с дополнительными (начальными) условиями: условий Конец
y1 ( x 0 ) = y1 ,
0 (2.32) нет
y 2 ( x 0 ) = y 2 ,L y n ( x 0 ) = y n , X0≤Xk
0 0
Расчёт правых
да
где х независимая переменная, y 1 ( x ), y 2 ( x ), K , y n ( x ) - неизвестные частей диф.
Y[1] := F1(X0, Y0) уравнений
(искомые) функции. Y[2] := F2(X0, Y0)
Наиболее простым методом численного решения системы (2.31) с началь- Y[N] := FN(X0, Y0)
ными условиями (2.32) является метод Эйлера, который мы и рассмотрим. X0 := X0+h
Пусть нам известно решение системы (2.31) в точке х, и необходимо получить Печать X0
решение в точке x+h, тогда согласно методу Эйлера
i := 1, N Расчёт
y1(x + h) = y1(x) + hf1(x, y1(x), y2 (x),K, yn (x)), следующих
Y0[i] := Y0[i]+h*Y[i] приближений
y2 (x + h) = y2 (x) + hf2 (x, y1(x), y2 (x),K, yn (x)),
(2.33)
LLLLLLLLLLLLLLLLLLLL Печать Y0[i]
yn (x + h) = yn (x) + hfn (x, y1(x), y2 (x),K, yn (x)). Рис.15. Блок- схема метода Эйлера для решения систем
обыкновенных дифференциальных уравнений.
53 54
Страницы
- « первая
- ‹ предыдущая
- …
- 25
- 26
- 27
- 28
- 29
- …
- следующая ›
- последняя »
