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

ЧМ (МП-3) / Лекции / Лекции / Лекци12

.doc
Скачиваний:
120
Добавлен:
17.04.2013
Размер:
945.66 Кб
Скачать

64

Глава IV.

Численные методы решения обыкновенных дифференциальных уравнений.

Лекция 12.

4.1. Численное дифференцирование.

Различают 3 вида задач для обыкновенных дифференциальных уравнений (ОДУ): задача Коши, краевая задача и задача на собственные значения. В данной главе мы более подробно изучим численные методы решения задачи Коши.

Вначале приведем и обсудим формулы численного дифференцирования. Существует два подхода к выводу формул численного дифференцирования.

1. Интерполяционный подход.

Полагаем

,

где - интерполяционный многочлен Лагранжа,

,

причем остаточный член формулы дифференцирования выражается через

Недостаток:

при стремлении получить достаточно высокую точность приходится использовать большое количество узлов, в которых вычисляется значение функции. Если функция задана таблично, то такой подход приемлем.

2. Конечно-разностная аппроксимация, основанная на Тейлоровском разложении.

Рассмотрим этот подход более подробно.

Пусть задана сетка , где h - шаг сетки

Теорема 1.

Имеют место следующие утверждения:

Пусть

. (1)

. (2)

. (3)

(4)

Для определенности докажем (4):

используем тейлоровское разложение в точках x1 и x-1

.

Складывая эти две формулы, получим

.

В силу непрерывности четвертой производной

.

Замечание.

Формулы (1), (2), (3) и (4) называются формулами численного дифференцирования.

При этом

формула (1) - определяет правую разностную производную и имеет порядок точности ,

формула (2) – определяет левую разностную производную и имеет порядок точности ,

формула (3) - определяет центральную разностную производную первого порядка и имеет порядок точности ,

формула (4) - определяет центральную разностную производную второго порядка и имеет порядок точности .

4.2.Численные методы решения задачи Коши.

Задача для ОДУ первого порядка для функции одной переменной ставится следующим образом

(5)

Более общая постановка задачи Коши для дифференциального уравнения n-го порядка

(6)

Здесь - заданные числа (начальные условия).

Задача (6) с помощью замены переменных

,

.

сводится к системе дифференциальных уравнений первого порядка:

(7)

Систему (7) можно переписать в векторном виде:

, где (8)

,

,

.

Система (8) исследуется и решается аналогично одномерной задаче Коши (5), поэтому важно изучить, прежде всего, численные методы решения задачи (5).

В курсе математического анализа формулируется и доказывается теорема существования и единственности решения задачи Коши. Отметим, что для выполнения теоремы необходимо и достаточно, чтобы функция имела непрерывные частные производные в замкнутой ограниченной области на плоскости .

Будем искать решение задачи (5) в прямоугольниках

Введем сетку на оси

,

Простейший итерационный процесс решения (5) на сетке получается, если аппроксимировать производную на сетке правой конечной разностью. Обозначая приближенное решение на сетке , получим

или

(9)

Итерационная процедура (9) называется “метод Эйлера” (или “метод ломаных”).

Дадим графическую иллюстрацию метода.

Начав движение из точки на точном решении , итерационное решение образует ломаную линию, каждый отрезок которой представляет собой касательную к кривой , проходящую через данную точку.

Например,

- уравнение касательной к u(x) в точке .

где u1(x1)-та интегральная кривая, которая проходит через точку (x1,y1).

Из рисунка видно, что ошибка растет с номером k. Выясним, каков порядок этой ошибки в сеточной норме

4.2.1. Оценка погрешности метода Эйлера.

Будем считать, что ошибка округления имеет порядок не меньший, чем . Тогда из (9) следует:

(10)

Разложим точное решение задачи (5) в точке с такой же точностью:

(11)

Вычтем(11) из (10) 

(12)

где

В силу условий теоремы существования и единственности частные производные ограничены в прямоугольнике :

Обозначим и оценим (12) по модулю

(13)

по условию.

Обозначим

(14)

Теорема 2.

Для метода Эйлера имеет место следующая оценка погрешности:

(15)

Из (13) следует (рекурсия назад)

Используя алгебраическое тождество

получаем

(16)

(В последнем неравенстве использовано свойство второго замечательного предела)

Учитывая, что

получим

,

т.е. оценку (15).

Замечание.

Из соотношения (16) следует, что

  1. 1. Ошибка растет с номером шага k.

  2. 2. Порядок ошибки в методе Эйлера .

4.2.2.Методы Рунге-Кутта.

Методы Рунге-Кутта - это группа итерационных методов решения задачи Коши (4), характеризуемая следующими условиями:

  1. Это одношаговые методы, т.е. при переходе из точки в точку используется лишь информация о предыдущей точке . Этому условию соответствует такая общая запись итерационной процедуры

, (17)

где выражается через значения функции в точке или близким к ней (сдвинутым на долю шага).

2. Процедура (16) согласуется с рядом Тейлора вплоть до членов порядка , где p -порядок метода.

3. Метод не использует производных от , а требует только вычисления функции в различных точках сетки, причем число вычислений функции - минимально возможное для данного порядка.

Заметим, что метод Эйлера является частным случаем метода Рунге-Кутта, имеющий наименьший первый порядок точности. Рассмотрим один из примеров повышения порядка точности метода Рунге-Кутта (16) до второго порядка.

Представим в виде следующей линейной комбинации

.

Разложим функцию в точке в ряд Тейлора до членов первого порядка включительно

.

Подставляя эти формулы в (16) , получим:

. (18)

(все входящие в правую часть функции берутся в точке )

Аналогичное разложение по Тейлору напишем для функции , используя уравнение

. (19)

Требуя совпадения коэффициентов разложений (18) и (19) при одинаковых степенях h, получим систему уравнений для неизвестных коэффициентов :

(20)

Система (20) недоопределена. Поэтому один из коэффициентов можно задать произвольно.

Например, положим .

Решая (20), получим

.

Итерационная процедура (17) приобретает вид

. (21)

Учитывая результат теоремы 2, заключаем, что точность этого метода , т.е. данный метод - второго порядка.

Рассмотрим некоторые частные случаи процедуры (21).

Отбрасывая погрешность, получаем

. (22)

Полученный метод Рунге-Кутта носит название “предиктор-корректор”. Чтобы прояснить смысл этого названия разобьем процедуру (22) на два этапа:

На первом этапе “предсказываем” значение по методу Эйлера. На втором этапе это значение корректируется путем усреднения угловых коэффициентов в точках и . За счет коррекции, точность данного метода и повышается на порядок по сравнению с методом Эйлера.

Согласно (21) , получаем

. (23)

Обозначим

.

Тогда (23) разбивается на два этапа:

На первом этапе находим - прогнозируемое значение на половинном шаге от точки по методу Эйлера.

Вычисляем наклон интегральной кривой в точке , и на втором этапе, двигаясь по касательной с данным угловым коэффициентом из точки () в точку (), получаем окончательно Полученный метод носит название “модифицированный метод Эйлера”.

Замечание 1.

Существуют процедуры Рунге-Кутта повышенной точности (порядка 3, 4, 5…). Например, метод Рунге-Кутта четвертого порядка точности (наиболее употребляемый на практике) сформулирован следующим образом

где

(24)

Если , то погрешность процедуры .

Замечание 2.

При практическом применении методов Рунге-Кутта возникает вопрос: какой формулой пользоваться на практике? Если априори известно, что - достаточно гладкая функция, например, , то наиболее эффективна процедура (24). Если же гладкость функции недостаточна, то лучше использовать методы второго и третьего порядка.

Замечание 3.

В среде МАТЛАБ реализованы две процедуры Рунге-Кутта:

ode23 – метод второго и третьего порядка

и ode45 - метод четвертого и пятого порядка.

В лабораторной работе 7 предусмотрено знакомство с этими командами.

Соседние файлы в папке Лекции