Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие_Численные методы -26 -дек_2014 (97-2003)

.pdf
Скачиваний:
270
Добавлен:
11.03.2016
Размер:
6.51 Mб
Скачать

Рис. 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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(8.1)

dy

.

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

x'(t)

x'(t) 4e

t

 

4e

t

 

 

2e

 

 

2t

e

2t t

4e

t

2e

2t

. Подставим

 

 

 

в первое уравнение системы:

.

x(t) 4e

t

 

e2t

,

y(t) e

t

e

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) выступают константы. Используем метод исключения.

Из первого уравнения системы выражаем

 

1

 

 

dx

 

(8.2)

y

 

 

 

 

2x 3

 

 

 

5

 

 

dt

 

 

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

во второе уравнение системы

.

.

Упростим: , .

В результате получено линейное неоднородное уравнение второго порядка с постоянными коэффициентами.

d

2

x

 

dt

2

 

Найдем

4 dx 13x dt

общее решение соответствующего однородного уравнения

0 .

Составим и решим характеристическое уравнение:

λ

2

4λ 13

 

 

λ

1,2

2 3i

 

 

 

0

, D 16 52 36 ,

λ1,2

 

4 6i

,

2

 

 

 

 

 

– получены сопряженные комплексные корни, поэтому

X

e

2t

C cos3t

 

 

 

1

C

2

 

sin3t

.

Частное

решение неоднородного

уравнения ищем в виде

~

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):

~

 

x t X x

находим

e

2t

C cos3t C

 

sin3t

 

2

 

 

1

 

производную от

1

.

уже

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

2e

2t

2C 3C

 

cos3t

 

 

 

 

 

 

1

2

 

Подставим в уравнение (8.1)

3C 2С

2

1

 

x t

e 2t

sin3t .C1os3t C 2sin3t 1 и

xt t 2e 2t 2C1 3C2 cos3t 3C1 2 sin3t :

235

Общее решение системы

x 0

Найдем

6

,

y 0

 

 

частное

5

:

 

решение, соответствующее начальным условиям

x 0 C 1 6

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4C1

3C2

 

 

C 5

,

1

5

1

y 0

 

 

 

 

 

 

 

5

 

 

 

 

 

20 3C2

5

4

20 3C2

20

C2

0

.

Окончательно частное решение

Ответ: частное решение:

Пример 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

х1=x0+hx=0+0,5=0,5,

,

,

,

,

,

,

,

,

,

.

При i=2 получим:

х2=x1+hx=0,5+0,5=1,

,

,

,

,

,

,

,

,

,

239

.

Составим сводную таблицу (табл. 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

,

Разностное уравнение вида

 

(8.3)

где

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-го порядка.

В случае, когда коэффициенты

B

n

 

, B

n 1

,..., B

n k

 

 

являются константами,

методы решения данного класса уравнений во многом аналогичны решению линейных дифференциальных уравнений с постоянными коэффициентами [22]. Продемонстрируем это для разностных уравнений второго порядка

xn 2

pxn 1

qxn K

(8.5)

Так же, как и для линейных дифференциальных уравнений, общее решение уравнения (8.5) определяется по формуле

xn x n X n ,

(8.6)

где x(n) – некоторое частное решение уравнения (8.5); X(n) – общее решение соответствующего однородного уравнения (случай K=0). Для нахождения общего решения однородного уравнения необходимо вначале решить характеристическое уравнение

240