
3.3. Модификации метода Эйлера
Фактически, метод Эйлера получен из разложения решения дифференциального уравнения (3.1) в ряд по степеням с отбрасыванием членов, содержащих в степени выше первой. Для получения более точной формулы можно использовать еще и член, содержащий . На практике более широкое применение получали следующие два улучшенных метода Эйлера.
Модифицированный метод Эйлера
Расчетная формула модифицированного метода Эйлера имеет вид:
(3.4)
Смысл этого метода состоит
в следующем. Сначала вычисляем
приближенное значение решения при
(то есть сдвигаемся не на шаг
,
а на полшага) обычным методом Эйлера
(эту точку обычно обозначают
,
чтобы показать промежуточный характер
вычислений), а затем в найденной точке
определяем наклон интегральной кривой
и по этому наклону
определяем
(рис. 3.2).
Остаточный член модифицированного
метода Эйлера (т.е. локальная погрешность)
на каждом шаге имеет порядок
.
Метод Эйлера-Коши
Расчетная формула метода Эйлера-Коши имеет вид:
(3.6)
Здесь мы сначала определяем "грубое приближение" по методу Эйлера
(3.7)
и наклон
интегральной кривой в новой точке (рис.
3.3)
,
а затем находим величину
(как бы усредняем наклон на данном шаге
)
и уточняем значение
(3.8)
Остаточный член метода Эйлера-Коши имеет на каждом шаге порядок .
3.4. Метод Рунге - Кутта
Метод Рунге-Кутта является одним из наиболее употребительных методов повышенной точности. Большинство компьютерных программ, предназначенных для численного интегрирования ОДУ, основаны именно на этом методе.
Пусть по-прежнему требуется
найти численное решение уравнения
,
удовлетворяющее условию
,
на отрезке
.
Обозначим приращение решения
,
где
как раз и надо вычислить. Представим
приращение
в виде суммы некоторых
"поправок"
с некоторыми коэффициентами
:
.
Общие формулы для этих поправок и
коэффициентов мы здесь приводить не
будем. Укажем лишь на то, что они получаются
при сравнении разложений
и
по степеням
.
Здесь мы ограничимся
рассмотрением наиболее распространенного
«четырехточечного метода Рунге-Кутта».
Итак, при
,
,
где
,
,
,
.
С помощью этих формул находим
сначала
.
Далее, все последующие значения
приближенного решения:
,
,
…,
,
…. Этот процесс можно представить
геометрически. В точке
вычисляется тангенс угла наклона
касательной
;
используя его, мы идем на половину шага
вперед и смотрим тангенс угла наклона
здесь
.
Используем его, мы опять начинаем из
точки
,
идем вперед на половину шага и находим
тангенс угла наклона
.
Взяв этот последний тангенс, мы опять
начинаем из точки
,
идем вперед на полный шаг и находим
тангенс угла наклона
.
Найденные четыре тангенса наклона
усредняем с весами
,
,
,
и, беря этот средний тангенс, делаем
окончательный шаг от
к
.
Таким образом, по методу
Рунге-Кутта вычисление приближенного
значения
в точке
производится по формулам:
,
,
(3.9)
,
где
,
,
(3.10)
,
.
Известно, что локальная
погрешность формул Рунге-Кутта имеет
порядок
,
значит, в данном «четырехточечном»
методе она составляет
.
Как
видно, с алгоритмической точки зрения
метод Рунге-Кутта не имеет принципиальных
различий от метода Эйлера. Разница лишь
в объеме вычислений: для получения
нового значения
на каждом шаге необходимо проделать
все действия, предусмотренные формулами
выше.
На
практике применяется следующий способ
контроля точности для метода Рунге-Кутта
(аналогичный правилу Рунге оценки
точности при вычислении определенного
интеграла, см. лабораторную работу №2)
– двойной счет. Если
,
,
— вычисленные значения с шагом
,
а
– вычисленные значения с шагом
,
то для ориентировочной оценки погрешности
численного решения (в качестве его
значений берутся
)
можно использовать формулу:
.
(3.11)