Читайте также:
|
|
Обыкновенными дифференциальными уравнениями (ОДУ) можно описать явления и процессы в самых различных областях естествознания: это и движение системы материальных точек, и прохождение тока через электрические цепи, и развитие популяций животных и др. Вначале мы остановимся на методах решения задачи Коши для ОДУ первого порядка.
Определение 14.1. Задачей Коши (или начальной задачей) для одного ОДУ первого порядка называется задача решения следующей системы равенств:
(14.1)
Второе из них называется начальным условием. Предполагается, что, решая ОДУ, можно найти зависимость , начиная движение от начальной точки
, на некотором отрезке, содержащем данную точку. Имеет место Теорема 14.1. (существования и единственности решения задачи (14.1) [20]). Если функция
в некоторой области
, содержащей окрестность точки
, непрерывна и удовлетворяет условию Липшица по переменной
(
,
), то на некотором отрезке
существует единственное решение задачи (14.1).
Если обе части записанного выше условия Липшица разделить на , то получим:
(14.2)
Как видно, левая часть неравенства (14.2) представляет собой конечную разность, которая аппроксимирует первую производную функции по переменной
. Таким образом, требование (14.2) ограничивает скорость изменения функции
по переменной
. Так «очень теоретическое», на первый взгляд, условие Липшица, позволяет нам уже на этапе подготовки к исследованию конкретного ОДУ предположить по виду его правой части, возможно ли здесь вообще найти единственное решение.
Пример 14.1. Решить задачу Коши (14.1), где ,
,
.
Решение. Очевидно, задача имеет два решения: и
; нарушение единственности решения здесь можно было предположить, т.к. для данной функции
не выполняется условие Липшица в окрестности
.
14.1. Метод Тейлора. Предположим, что условия теоремы выполнены и существует решение задачи Коши (14.1) – функция . Предположим, также, что эта функция имеет достаточное количество непрерывных производных. Тогда значение функции
в малой окрестности точки
можно найти, разлагая эту функцию в ряд Тейлора:
(14.3)
Для того, чтобы воспользоваться этой формулой, необходимо знать значения её коэффициентов ,
,
и т.д. Значения первых двух могут быть получены непосредственно из (14.1). Для того, чтобы найти последующие, предположим, что правая часть ОДУ – функция
- имеет достаточное количество частных производных. Тогда, дифференцируя (14.1), найдём:
(14.4)
и т.д. Здесь и далее нижние индексы обозначают переменные, по которым вычисляются частные производные от функции . Подставляя результаты вычислений в (14.3), получим:
(14.5)
Проводя подобное дифференцирование необходимое число раз, мы можем вычислить требуемое количество коэффициентов разложения (14.3). Метод Тейлора используется в качестве эталонного для определения точности других методов.
14.2. Метод Эйлера. Пусть решение задачи (14.1) – функцию - требуется получить на отрезке
(точка
совпадает с левой границей отрезка – точкой
). Разобьём отрезок
на
маленьких отрезков шириной
узлами
. Предположим, что решение задачи Коши известно в узле
заданного отрезка. Аппроксимируем производную
в этом узле при помощи одной из формул численного дифференцирования:
; подставим это выражение в левую часть уравнения (14.1). Преобразуя, получим:
(14.6)
Здесь и далее через обозначаем значение функции
в точке
. Тогда (14.6) можно переписать в виде
(14.7)
Это и есть формула метода Эйлера. Формула (14.6) показывает, что значение неизвестной функции в точке отрезка интегрирования можно подсчитать по известному значению функции в предыдущей точке
. Выясним геометрический смысл формулы (14.6). Как следует из ОДУ (14.1), геометрический смысл его правой части – это тангенс угла наклона касательной к кривой
. Тогда вычисление по формуле (14.6) означает, что на плоскости
мы проводим отрезок прямой из точки с координатами
к точке с координатами
. Передвигаясь таким образом от узла к узлу на отрезке
, мы построим ломаную линию, которая приближает гладкую кривую – решение
. Понятно, что чем меньше расстояние
между узлами, тем точнее ломаная приближает решение. В пределе при
ломаная должна сливаться с кривой – точным решением задачи (14.1). Для того, чтобы выяснить, насколько точным является это приближение, сравним формулу (14.7) с разложением Тейлора (14.5). Заменим в (14.5) значения
на
соответственно,
- на
, разность
- на
. Тогда формулу (14.5) можно переписать в виде:
(14.8)
Мы видим, формула метода Эйлера (14.7) совпадает с разложением в ряд Тейлора (14.8) вплоть до слагаемых, пропорциональных в первой степени при
. В этом смысле говорят, что метод Эйлера является методом первого порядка точности.
Пример 14.2. Дана задача Коши: ,
. Найти её решение в точке
при помощи метода Эйлера. Сравнить теоретическую погрешность с реальной, если точное решение есть функция
(14.9)
Решение. Применим формулу (14.7) при . Получим:
=
. Для сравнения полученного решения с точным разложим функцию (14.9) в ряд Тейлора в окрестности точки
. Получим:
. Как видно, точное решение отличается от приближённого на величину порядка
при
- в полном соответствии с предсказаниями теории.
14.3. Модифицированный метод Эйлера. Попробуем уменьшить погрешность формулы метода Эйлера. Для этого в выражении (14.7) вместо функции возьмём функцию
, где
,
. Если снова привлекать геометрическую интерпретацию, то можно сказать, что теперь отрезок прямой из точки
мы проводим в точку с координатами
под углом, под которым касательная к кривой
проходит в точке
. Итак, запишем формулу модифицированного метода Эйлера:
Подставляя сюда вместо их значения, получим:
(14.10)
Для того, чтобы оценить порядок погрешности формулы (14.10), разложим стоящую в ней функцию (как функцию двух переменных) в ряд Тейлора в окрестности точки
. Продолжая формулу (14.10), получим:
(14.11)
Сравнивая формулу (14.11) с формулой (14.5) решения задачи Коши методом Тейлора, мы видим, что они совпадают вплоть до слагаемых порядка при
. В этом смысле говорят, что модифицированный метод Эйлера является методом второго порядка точности. Итак, модификация метода Эйлера позволяет строить решение задачи Коши с точностью, которая на порядок выше точности обычного метода Эйлера.
Пример 14.3. Дана задача Коши: ,
. Найти её решение в точке
при помощи модифицированного метода Эйлера. Сравнить теоретическую погрешность с реальной, если точное решение есть функция, которая задаётся формулой (14.9).
Решение. Применим формулу (14.10) при . Получим:
=
. Для сравнения полученного решения с точным разложим функцию (14.9) в ряд Тейлора в окрестности точки
. Получим:
. Как видно, точное решение отличается от приближённого на величину порядка
при
- в полном соответствии с предсказаниями теории.
14.4. Методы Рунге-Кутта. Метод Эйлера, модифицированный метод Эйлера и обширное множество других методов решения задачи Коши для ОДУ первого порядка относятся с семейству методов Рунге-Кутта, которые обладают общими для этого семейства родовыми признаками. Перечислим их:
· во-первых, все они одношаговые, что означает, что для вычисления неизвестной функции на шаге (в узле) номер применяется значение функции только с предыдущего шага
;
· во-вторых, в расчётные формулы не входят производные, а только значения самих функций;
· в-третьих, все эти методы в качестве эталонного используют метод Тейлора, сравнение с которым позволяет определить порядок погрешности данного метода.
Приведём без вывода один из часто употребляемых вариантов метода – формулы Рунге-Кутта четвёртого порядка [10]:
(14.12)
Об устойчивости алгоритма. Наряду с точностью алгоритма одной из важных характеристик является его устойчивость. Например, при одних начальных данных численные результаты могут хорошо соотноситься с точными, а при других – существенно отличаться: в таком случае говорят, что данный алгоритм является неустойчивым по начальным данным. Бывает так, что при исследовании задачи Коши на «небольшом» отрезке времени, наблюдается хорошее согласование между точным и приближённым решениями, а на «большом» отрезке времени происходит их расхождение. Проиллюстрируем сказанное примером [1]. Рассмотрим ОДУ (1.9)
Оно имеет общее решение
(1.10)
Здесь - произвольная постоянная, конкретный вид которой зависит от начального условия. При начальном условии
(1.11)
Точное решение имеет вид
.
Предположим, что начальное условие задано с точностью 1%, т.е. вместо (1.11), на самом деле, должно быть
(1.12)
Нетрудно получить, что в этом случае решение может находиться в пределах от
до
.
Тогда при ошибка в определении
может достигать
, т.е. около 30%, в то время как в начальном условии (1.12) она составляла всего 1%. Таким образом, ошибка быстро возрастает с ростом
(когда
становится больше 1). Ясно (как отмечается в [1]), что никакой численный метод не может дать решение этого уравнения с точностью выше 30% при
; эта ошибка уже заложена в исходной информации. Поэтому в [1] такая ошибка называется внутренней неустойчивостью, а мы назвали её неустойчивостью по начальным данным.
Дата добавления: 2015-12-08; просмотров: 74 | Нарушение авторских прав