- •010300.68 Математическое обеспечение и администрирование информационных систем
- •Планы практических занятий
- •Занятие № 1. Теория погрешности.
- •Занятие № 2. Решения алгебраических уравнений. Отделение корней.
- •Занятие № 3. Метод хорд (секущих) и метод деления пополам.
- •Занятие № 4. Метод Ньютона (касательных).
- •Занятие № 5. Комбинированный метод.
- •Занятие № 6. Метод итераций.
- •Метод Гаусса
- •Занятие № 7. Прямые методы решения систем линейных алгебраических уравнений.
- •Занятие № 8. Метод итераций для систем уравнений.
- •Занятие № 9. Равномерное приближение функций многочленами. Интерполяционный многочлен Лагранжа.
- •Занятие № 10. Интерполяционный многочлен Ньютона. Многочлены Чебышева.
- •Занятие № 11. Интерполяция с кратными узлами и формула Эрмита.
- •Занятие № 12. Понятие сплайна. Виды сплайнов.
- •Занятие № 13. Численное дифференцирование.
- •Занятие № 14. Численное интегрирование. Квадратурные формулы Ньютона-Котеса.
- •Занятие № 15. Квадратурные формулы Гаусса.
- •Занятие № 16. Численные методы решения задачи Коши для обыкновенных дифференциальных уравнений. Классификация методов. Метод Пикара.
- •Занятие № 17. Методы Эйлера.
- •Занятие № 18. Методы Рунге-Кутта.
- •Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона.
- •Занятие № 20. Многошаговые методы Адамса.
- •Занятие № 21. Методы прогноза и коррекции.
- •Занятие № 22. Метод Милна четвертого порядка
- •Приложение 1 полиномы лежандра
- •Приложение 2.
- •Индивидуальное домашнее задание № 1
- •Индивидуальное задание №2.
- •Индивидуальное задание №3
- •Литература
Занятие № 18. Методы Рунге-Кутта.
О семействе методов Рунге-Кутта. Методы второго порядка
Недостатком исправленного метода Эйлера (25) и других методов более высоких порядков, основанных на пошаговом представлении решения у(х) задачи (1)-(2) по формуле Тейлора и последовательном дифференцировании уравнения (1) для получения тейлоровых коэффициентов, является необходимость вычисления на каждом шаге частных производных функции f(x,у).
Идея построения явных методов Рунге-Кутты p-го порядка заключается в получении приближений к значениям f(хi+1) по формуле вида
(26)
где φ(х, у, h) — некоторая функция, приближающая отрезок ряда Тейлора до р-го порядка и не содержащая частных производных функции f(х, у).
Так, полагая в (26) φ(х, у, р) = f(x, у) приходим к методу Эйлера (8), т.е. метод Эйлера можно считать простейшим примером методов Рунге-Кутты, соответствующим случаю р = 1.
Для построения методов Рунге-Кутты порядка, выше первого, функцию φ(х, у, h) берут многопараметрической, и подбирают ее параметры сравнением выражения (26) с многочленом Тейлора для у(х) соответствующей желаемому порядку степени.
Рассмотрим случай р=2. Возьмем функцию φ в (26) следующей структуры:
Ее параметры с1, с2, а и b будем подбирать так, чтобы записанная, согласно (26), формула
(27)
определяла метод второго порядка, т.е. чтобы максимальная локальная ошибка составляла величину o(h3).
Разложим функцию двух переменных f(x + ah, у + bhf(x, у)) по формуле Тейлора, ограничиваясь линейными членами:
Ее подстановка в (27) дает
(28)
Сравнение последнего выражения с тейлоровским квадратичным представлением решения у(х) (22) с точностью до о(h3) равносильно сравнению его с выражением уi+1 по формуле (25), т е. с исправленным методом Эйлера. Очевидно, чтобы (28) и (25) совпадали с точностью O(h3), от параметров нужно потребовать выполнение следующей совокупности условий:
(29)
Полученная система условий содержит три уравнения относительно четырех параметров метода. Это говорит о наличии одного свободного параметра. Положим с2 = α(≠ 0). Тогда из (29) имеем:
В результате подстановки этих значений параметров в формулу (27) приходим к однопараметрическому семейству методов Рунге-Кутты второго порядка.
(30)
Выделим из семейства методов (30) два наиболее простых и естественных частных случая:
при α=1/2 получаем формулу
в котором узнаём метод Хойна (16), полученный ранее из других соображений;
при α = 1 из (30) выводим новый простой метод
(31)
который назовем методом средней точки.
Методы Рунге-Кутты произвольного и четвертого порядков
Любой метод из семейства методов Рунге-Кутты второго порядка (30) реализуют по следующей схеме. На каждом шаге, т.е. при каждом i=0, 1, 2,..., вычисляют значения функции
а затем находят шаговую поправку
прибавление которой к результату предыдущего шага дает приближенное значение решения у(х) в точке xi+1 = xi + h:
Метод такой структуры называют двухэтапным по количеству вычислений значений функции — правой части уравнения (1) — на одном шаге.
Анализ устройства методов Рунге-Кутты второго порядка позволяет представить, в какой форме следует конструировать явный метод Рунге-Кутты произвольного порядка. По аналогии с предыдущим для семейства методов Рунге-Кутты p-го порядка используется запись, состоящая из следующей совокупности формул:
(32)
где к = 2, 3, …, р (для р-этапного метода). Многочисленные параметры сk, ак, bkj, фигурирующие в формулах (32), подбираются так, чтобы получаемое методом (32) значение уi+1 совпадало со значением разложения y(xi+1) по формуле Тейлора с погрешностью O(hp+1) (без учета погрешностей, совершаемых на предыдущих шагах).
Наиболее употребительным частным случаем семейства методов (32) является следующий метод Рунге-Кутты четвертого порядка относящийся к четырехэтапным и имеющий вид:
(33)
Не пытаясь воспроизвести выкладки, приводящие от общей записи семейства (32) при р=4 к конкретному методу (33), дадим геометрическое толкование последнего.
Обратив внимание
на то, что шаговая поправка Δуi,
есть средневзвешенная величина поправок
каждого
этапа (с весовыми коэффициентами 1/6,
2/6, 2/6, 1/6 соответственно), проанализируем,
как получаются эти поправки этапов. На
первом этапе создается приращение
соответствующее
шаговой поправке Эйлера, — это
очевидно.
На рис 2 ему отвечает отрезок ВС
вертикали
х=xi+1
(точка В
получена
ортогональным проектированием
точки
А на
эту вертикаль).
Рис. 2. Геометрическая иллюстрация одного шага методов Рунге-Кутта четвертого порядка
Так как точка М,
благодаря свойству средней линии
треугольника (см. ΔАВС),
имеет ординату
определяет значение f(M),
служащее
(согласно связи у=f(x,
у) и
геометрическому смыслу производной)
тангенсом угла А
в новом
треугольнике с противолежащим этому
углу катетом
Далее,
аналогично, подсчитав
на
вертикали x=xi+1
откладываем следующую промежуточную
(этапную) поправку
Вычислив
величину f(E)=
являющуюся значением тангенса угла
А во
вновь получаемом ΔABG,
имеем поправку
последнего
этапа. Итоговая шаговая поправка
есть
продукт усреднения с указанными
коэффициентами четырех этапных поправок
— длин отрезков ВС,
BD,
BE
и BG.
Точка Н будет
стартовой для следующего, i+1-го,
шага метода (33).
Заметим, что если первый этап, как уже упоминалось, соответствует применению явного метода Эйлера, то четвертый — неявного, а второй и третий — уточненного методов Эйлера. Последний имеет более высокий порядок точности, отсюда и больший вес отвечающих ему значений этапных поправок.
