Рис. 8.4. Графическая иллюстрация третьей модификации метода Эйлера
В нашем случае на каждом последующем шаге нужно одновременно решать оба уравнения и для y, и для z, т.е. надо решать четыре уравнения при каждом x:
y |
1 |
y |
h z |
, |
|
|
|
i |
|
i |
i |
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
h f x , y |
|
, |
z |
1 |
z |
i |
, z |
i |
|
|
i |
i |
i |
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z |
i |
z |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
y y |
|
h |
|
2 |
, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
i |
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z |
|
z |
|
|
h |
|
f x , y |
, z |
|
|
, y |
|
, z |
|
|
|
|
|
|
f x |
|
i |
|
|
i |
|
i |
|
2 |
|
i |
|
i |
i |
|
i 1 |
i |
1 |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
2 |
Метод Рунге-Кутта
Метод позволяет решать системы обыкновенных дифференциальных уравнений (ОДУ) первого порядка следующего вида:
y g(t, y, x,...),x f (t, y, x,...),
которые имеют решение y=y(t), x=x(t), где t – независимая переменная; х, y и т.д. – искомые функции (зависимые от t переменные). Функции f, g и т.д. – заданы. Также предполагаются заданными и начальные условия, т.е. значения искомых функций в начальный момент.
Одно дифференциальное уравнение – частный случай системы с одним элементом. Поэтому далее речь пойдет для определенности о системе уравнений.
Метод может быть полезен и для решения дифференциальных уравнений высшего (второго и т.д.) порядка, так как они могут быть представлены системой дифференциальных уравнений первого порядка.
231
Метод Рунге-Кутта четвертого порядка для системы дифференциальных уравнений n-го порядка заключается в рекуррентном применении следующих формул:
, где , yi зависимая функция,
j – номер шага.
Для дифференциального уравнения второго порядка, которое раскладывается в систему двух дифференциальных уравнений первого порядка, рассматриваем применение следующих формул:
|
|
y |
|
y |
|
|
1 |
K |
i |
2K |
i |
2K |
i |
K |
i |
, |
|
|
i 1 |
i |
6 |
0 |
1 |
2 |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
L |
|
|
|
|
|
|
|
, |
|
|
|
z |
|
|
z |
|
|
|
2L |
2L |
L |
|
|
|
|
|
|
|
|
|
|
|
|
i |
|
i |
|
i |
|
|
i |
|
|
|
|
|
i 1 |
|
i |
|
|
6 |
0 |
|
1 |
|
2 |
|
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
где |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
|
|
|
|
|
|
. |
8.5. Примеры
Пример 8.1
Решить задачу Коши для системы дифференциальных уравнений:
с начальными условиями x(0) = 3, y(0) = 0.
Решим систему методом исключения. Cведем систему дифференциальных уравнений к одному дифференциальному уравнению. Выразим из второго уравнения x:
232
Дифференцируем по t
|
Подставим x |
dy |
|
3y |
|
dt |
|
|
|
|
|
|
|
|
|
|
|
|
d |
2 |
y |
|
dy |
|
|
dy |
|
|
|
|
3 |
|
3y |
|
|
|
2 |
|
2 |
|
|
|
|
dt |
|
dt |
|
|
dt |
|
|
|
|
|
|
|
|
|
|
|
x |
dy |
3y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dx |
|
d |
2 |
y |
|
обе части полученного уравнения: |
|
|
3 |
dt |
dt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dx |
|
d |
2 |
y |
|
|
dy |
|
|
|
|
|
|
|
|
|
|
|
и |
|
|
3 |
в первое уравнение системы: |
dt |
dt |
|
dt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 y |
|
|
|
|
|
|
|
d |
2 |
y |
dy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. Упростим: |
|
|
2 |
|
2y 0 . |
|
|
|
|
|
|
|
|
|
dt |
dt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Получили однородное дифференциальное уравнение второго порядка с
постоянными коэффициентами: |
y''y' 2y 0 |
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Составим и решим характеристическое уравнение: |
|
|
. |
D 1 8 9 |
; |
D 3 |
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
, |
|
2 |
|
– получены |
различные |
|
|
|
действительные |
|
корни, поэтому |
1 |
|
|
1 |
|
|
|
|
|
|
|
y t C e |
t |
C |
e |
2t |
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Продифференцируем найденную функцию по t: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y' t C1e |
t |
C2e |
2t |
t |
|
C1e |
t |
|
|
2C2e |
2t |
. |
|
|
|
|
|
|
|
|
|
y t C e |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Подставим |
t |
C |
2 |
e |
2t |
и |
y' t C e |
t |
2C |
e |
2t |
в уравнение (8.1): |
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
x t |
dy |
3y C e |
t |
2C e |
2t |
3 C e |
t |
C e |
2t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dt |
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
1 |
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C e |
t |
|
2C |
|
e |
2t |
3C e |
t |
|
3C |
e |
2t |
|
|
4C e |
t |
C |
e |
2t |
, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
или короче |
x t 4C e |
t |
|
C |
|
e |
2t |
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Общее решение системы: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x t |
4C e t |
C |
e2t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
2 |
|
|
, где С1 и С2 – const. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C e |
t |
C |
|
e |
2t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y t |
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Найдем частное решение, соответствующее начальным условиям
x(0)=3, y(0)=0.
Частное решение:
x t 4e t e2t , |
|
|
|
t e2t . |
y t e |
|
|
Проверка начальных условий: x(0)=4-1=3, y(0)=1-1=0. Оба начальных условия выполняются.
Проверим, удовлетворяет ли найденный ответ первому уравнению системы dxdt 2x 4 y . Найдем производную функции x(t) 4e t e2t :
233
e |
2t t |
4e |
t |
2e |
2t |
. Подставим |
|
|
|
в первое уравнение системы:
.
Получено верное равенство, значит, найденный ответ удовлетворяет первому уравнению системы.
Проверим, удовлетворяет ли ответ второму уравнению
системы |
dy |
x |
3y |
. |
Найдем |
|
производную |
|
dt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y'(t) e t |
e2t t e t |
2e2t . |
y(t) e |
|
e |
|
и |
y'(t) e |
|
Подставим x(t) 4e |
t |
e |
2t |
, |
t |
2t |
t |
|
|
|
|
|
|
|
|
|
|
|
системы |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dy |
x 3y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dt |
|
|
, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
,
,
.
функции y(t) e t e2t :
2e |
2t |
во второе уравнение |
Получено верное равенство, значит, найденный ответ удовлетворяет второму уравнению системы. Проверка завершена.
Пример 8.2
Найти частное решение системы линейных ДУ, соответствующее заданным начальным условиям:
x' 2x 5y 3,
y' 5x 6 y 1,
при x(0)=6, y(0)=5.
Дана линейная неоднородная система дифференциальных уравнений, в качестве f(t), g(t) выступают константы. Используем метод исключения.
Из первого уравнения системы выражаем
234
Дифференцируем по t обе части: |
. Подставим |
|
1 |
|
|
dx |
|
|
|
y |
|
|
|
|
|
2x 3 |
и |
|
|
|
|
5 |
|
|
dt |
|
|
|
dy |
5x 6 y 1 |
: |
|
dt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Преобразуем:
dy |
|
1 |
|
|
d |
2 |
x |
|
dx |
|
|
|
2 |
|
|
|
|
|
2 |
|
dt |
|
5 |
|
|
dt |
|
|
|
|
|
|
|
dt |
во второе уравнение системы
.
.
Упростим: , .
В результате получено линейное неоднородное уравнение второго порядка с постоянными коэффициентами.
общее решение соответствующего однородного уравнения
0 .
Составим и решим характеристическое уравнение:
|
0 |
, D 16 52 36 , |
λ1,2 |
|
4 6i |
, |
|
2 |
|
|
|
|
|
|
– получены сопряженные комплексные корни, поэтому
Частное |
решение неоднородного |
уравнения ищем в виде |
~ |
A . |
x |
Найдем первую и вторую производную: |
x |
0 , |
x |
0 . |
|
|
|
|
|
|
|
|
~t |
|
~tt |
|
|
|
Подставим |
~ |
, x |
, |
x |
в левую часть неоднородного уравнения: |
|
|
|
x |
~t |
|
~tt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 4 0 13A 13 |
, |
|
|
|
13A 13, |
|
|
|
|
A=1. |
|
|
|
|
Таким образом |
~ |
1 |
. В результате |
x |
|
|
Ищем функцию y(t). Сначала найденной функции x(t):
t |
|
2t |
|
|
t |
|
2t |
t |
|
|
2t |
|
|
t |
|
t e |
C cos3t C |
|
sin3t 1 |
e |
C cos3t C |
|
sin3t e |
C cos3t C |
|
0 |
x |
|
2 |
|
2 |
|
2 |
sin3t |
|
|
|
1 |
|
|
|
1 |
|
|
1 |
|
|
2e 2t C1 cos3t C2 sin3t e 2t C1 sin3t 3C2 cos3t
2e 2t 2C1 cos3t C2 sin3t 3C1 sin3t 3C2 cos3t
Подставим в уравнение (8.1)
sin3t .C1os3t C 2sin3t 1 и
xt t 2e 2t 2C1 3C2 cos3t 3C1 2С2 sin3t :
235
решение, соответствующее начальным условиям
x 0 C 1 6 |
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4C1 |
3C2 |
|
|
→ |
C 5 |
, |
1 |
5 |
1 |
y 0 |
|
|
|
|
|
|
|
5 |
|
|
|
|
|
Окончательно частное решение
Ответ: частное решение:
Пример 8.3
Дифференциальное уравнение модифицированным методом Эйлера (первая модификация) с начальными условиями x0=a=0,
y0=1/9=0.(1), y'(0)=z0= -3,5.
Для вычислений возьмем n=2, → i=0,1,2.
236
При i=1 получим
При i=2 получим:
Составим сводную табл. 8.1 решений дифференциального уравнения аналитическим методом и методом Эйлера, при этом вычислив относительную и абсолютную погрешности.
|
|
|
|
Таблица 8.1 |
|
Расчеты для метода Эйлера первой модификации |
|
|
|
|
|
|
|
|
x |
у первой модификации Эйлера |
точное |
y |
|
100% |
|
|
0 |
1/9 |
1/9 |
0 |
|
0% |
0,5 |
-1,446 |
-1,476 |
0,03 |
|
3% |
1 |
-2,78 |
-2,845 |
0,065 |
|
6,5% |
Средняя ошибка вычисления методом Эйлера: S=(3%+6,5%+0%)/3=3,17%, 3,17%<20%, значит, результаты, полученные методом Эйлера, можно считать достаточно верными.
Пример 8.4 |
|
|
Решить дифференциальное |
уравнение |
, используя |
вторую модификацию метода |
Эйлера. Начальные |
условия: x0=a=0, |
y0=1/9=0.(1), y'(0)=z0= -3,5. |
|
|
Для вычислений возьмем n=2, → i=0,1,2.
При i=1 получим:
х1=x0+hx=0+0,5=0,5,
237
,
,
,
.
При i=2 получим:
х2=x1+hx=0,5+0,5=1,
,
,
,
.
Составим сводную табл. 8.2 решений дифференциального уравнения аналитическим методом и методом Эйлера, при этом вычислив относительную и абсолютную погрешности.
|
|
|
|
Таблица 8.2 |
|
Расчеты для метода Эйлера второй модификации |
|
|
|
|
|
|
x |
у второй модификации Эйлера |
y точное |
y |
100% |
|
0 |
1/9 |
1/9 |
0 |
0% |
0,5 |
-1,254 |
-1,476 |
0,222 |
22,2% |
1 |
-2,947 |
-2,845 |
0,102 |
10,2% |
Средняя ошибка в вычислении второй модификацией метода Эйлера:
S=(22,2%+10,2%+0%)/3=10,8%, 10,8%<20%, значит, результаты, полученные
методом Эйлера, можно считать достаточно верными.
Пример 8.5
Решить дифференциальное уравнение |
8y |
|
|
3y x 5 |
, с |
|
2y |
начальными условиями x0=a=0, y0=1/9=0,(1), y'(0)=z0= -3,5 методом РунгеКутта.
Запишем систему дифференциальных уравнений первого порядка:
Для вычислений возьмем n=2, → i=0,1,2. При i=1 получим:
238
.
Составим сводную таблицу (табл. 8.3) решений дифференциального уравнения аналитическим методом и методом Рунге-Кутта, при этом вычислив относительную и абсолютную погрешности.
|
|
|
|
Таблица 8.3 |
|
Расчеты для метода Рунге-Кутта |
|
|
|
|
|
|
|
|
|
x |
у метода Рунге-Кутта |
y точное |
y |
|
100% |
0 |
1/9 |
1/9 |
0 |
|
0% |
0,5 |
-1,476 |
-1,476 |
0 |
|
0% |
1 |
-2,844 |
-2,845 |
0,001 |
|
0,1% |
Средняя ошибка в вычислении методом Рунге-Кутта:
S=(0,1%+0%+0%)/3=0,03%, 0,03%<20%, значит, результаты, полученные
вычислениями по методу Рунге-Кутта, можно считать достаточно верными.
8.6. Примеры применения решения системы дифференциальных уравнений в экономике
Понятие о разностных уравнениях. Модель делового цикла Самуэльсона-Хикса
Уравнение вида
F n, xn , xn 1 ,..., xn k 0 |
, |
Разностное уравнение вида |
|
B |
n |
, B |
n 1 |
,..., B |
n k |
, K |
|
|
|
|
B |
x |
n |
B x |
n 1 |
... B |
x |
n |
k |
K |
0 |
|
1 |
k |
|
|
некоторые |
функции |
|
от |
, |
(8.4) |
n, называется |
линейным |
разностным уравнением k-го порядка.
В случае, когда коэффициенты
методы решения данного класса уравнений во многом аналогичны решению линейных дифференциальных уравнений с постоянными коэффициентами [22]. Продемонстрируем это для разностных уравнений второго порядка
Так же, как и для линейных дифференциальных уравнений, общее решение уравнения (8.5) определяется по формуле
где x(n) – некоторое частное решение уравнения (8.5); X(n) – общее решение соответствующего однородного уравнения (случай K=0). Для нахождения общего решения однородного уравнения необходимо вначале решить характеристическое уравнение
240