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

Лекция4

.pdf
Скачиваний:
18
Добавлен:
14.03.2016
Размер:
549.67 Кб
Скачать

ЛЕКЦИЯ 4 Приближенное решение ОДУ

Приближенное решение ОДУ

Обыкновенные Дифференциальные Уравнения

dy

f x, y

y = y(x) – неизвестная функция

x – независимая переменная

dx

 

f (x, y) – заданная правая часть

 

 

начальные условия: y(x0) = y0

Задача Коши для ОДУ 1 порядка

Методы решения:

аналитические (точные)

приближенные

2

Приближенное решение ОДУ

dy

f x, y

y(x0) = y0

dx

 

 

Будем искать приближенное решение на отрезке [ x0, xN ]

c шагом h

xN x0

 

в узлах

xi

x0 ih, i 0, 1,..., N

N

 

Цель – построить

 

 

 

 

 

x0

x1

 

 

xN

 

 

таблицу

 

 

 

 

 

 

 

y0

y1

 

 

yN

 

 

dy

 

 

 

 

y(xi 1 ) y(xi )

 

 

yi 1

yi

 

 

«разность вперед»

 

 

 

 

 

 

 

 

 

 

dx

 

x x

 

h

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

yii 1 yi

f (x , y ),

 

 

i 0,1,..., N 1,

y y0

 

 

 

 

 

 

 

 

 

 

 

h

 

i

i

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Явная схема Эйлера

3

 

Приближенное решение ОДУ

 

dy

 

y = y0

при x = x .

 

 

 

f x, y

 

 

0

 

 

 

dx

 

 

 

 

 

 

 

 

 

 

 

 

Явная схема Эйлера:

yi 1 yi

f (xi , yi ),

 

h

 

 

 

 

 

 

 

 

 

y

y h f (x , y ),

i 0,1,..., N 1, y

y0

 

i 1

i

i i

 

 

0

 

 

y0

известно

 

 

 

 

 

y1 y0 h f (x0 , y0 ),

 

Таблица

 

y2 y1 h f (x1, y1 ), ...

 

приближенного

 

yN yN 1 h f (xN 1, yN 1 ),

решения построена

 

 

4

Приближенное решение ОДУ

 

 

 

 

 

 

yi yi 1

 

 

 

dy

 

dy

 

 

 

 

 

 

 

 

f x, y

 

 

 

 

 

 

 

 

 

 

Разность

 

 

 

 

dx

 

 

 

 

 

h

«назад»

 

 

dx

 

 

x x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

Неявная схема Эйлера:

 

 

yi yi 1

f (x , y ),

 

 

 

 

 

 

 

 

h

i i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y h f (x , y ) y

, i 1,..., N,

y y0

 

 

 

i

i i

 

 

 

i 1

 

 

 

 

 

0

 

y0 известно

 

 

 

 

 

 

 

 

 

 

 

 

 

Чтобы найти y1

надо решить нелинейное уравнение

 

 

y1 h f (x1, y1 ) y0 ,

Метод имеет более сложную

 

 

 

 

 

 

 

 

реализацию

 

 

 

yN h f (xN , yN ) yN 1,

Используют для решения

 

 

«жестких» систем ОДУ

5

 

 

 

 

 

 

 

 

 

Приближенное решение ОДУ

ПОРЯДОК ТОЧНОСТИ МЕТОДОВ ЭЙЛЕРА

Определяется главным членом погрешности в

формуле численного дифференцирования

'

 

h

 

 

 

 

 

f xi fi

2

fi ...

Погрешность ~ h1

 

При уменьшении h в два раза погрешность уменьшится тоже в 2 раза

Более точными будут методы, в которых

ошибка ~h2 , т.е. методы второго порядка,

6

Методы решения задачи Коши

Приближенные методы

Явные

Неявные

Одношаговые (м. Эйлера, Рунге-Кутты)

Многошаговые (Адамса)

Многошаговые методы

В m-шаговых методах для нахождения решения на слое n+1 необходимы значения на m предыдущих слоях

Для старта многошагового метода необходимо сделать несколько шагов по одношаговым методам

Приближенное решение ОДУ

Неявный метод второго порядка:

yi1 yi h2 f xi , yi f xi1 , yi1

Метод предиктор–корректор:

~

 

h

f xi , yi

 

 

y yi

 

 

 

«предсказываем»

2

 

 

 

~

«исправляем»

 

 

 

yi 1 yi h f xi 1 2 , y

 

где

 

xi 1 2 xi h / 2

 

8

Приближенное решение ОДУ

МЕТОДЫ РУНГЕ-КУТТЫ

Многоэтапные методы повышенного порядка точности «Этап» - вычисление правой части уравнения

k1 f xi , yi

k2 f xi 2h, yi 21k1h

k3

f xi 3h, yi

31k1h 32k2h

…………………………………………….

 

 

 

 

n 1

 

kn

 

 

 

 

 

f xi

n h, yi njk j h

 

 

 

n

j 1

 

 

 

yi 1

yi h c j k j

 

n, nj, cn,

 

 

j 1

 

 

 

– параметры, которые подбирают так,

чтобы метод был как можно более точным 9

Приближенное решение ОДУ

ПРИМЕРЫ МЕТОДОВ РУНГЕ-КУТТЫ

Двухэтапный метод (второго порядка точности)

 

i

f xi

, yi ,

i

 

 

 

h

 

 

h

i

 

k

 

k2

f xi

 

, yi

 

k1

 

 

2

2

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

1

y hk i

,

i 0,1, 2,...

 

 

 

 

 

i

i

 

2

 

 

 

 

 

 

 

 

 

Трехэтапный метод (третьего порядка точности)

k1= f xi ,yi , k2= f xi+h/ 2,yi+hk1/ 2 , k3 f xi+h,yi-hk1+2hk2

yi 1 yi h6 k1 4k2 k3 , i 0,1, 2,...

Четырехэтапный метод (четвертого порядка точности)

 

k1= f xi ,yi , k2= f xi+h/ 2,yi+hk1 / 2 ,

 

k3 f xx+h/ 2,yi+hk2 / 2 ,

k4 f xi+h,yi+hk3 ,

 

yi 1

yi

h

k1 2k2

2k3 k4 , i 0,1, 2,...

10

 

 

6