Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона

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

Нетрудно понять, что выведение надежных и, в то же вре­мя, простых и эффективных оценок погрешности, гарантирую­щих получение таблицы значений решения у=у(х) заданной точности, является делом малоперспективным, особенно для ме­тодов более-менее высоких порядков. Поэтому главным спосо­бом отслеживания точности при реализации численных процесcов решения задачи Коши остается применение различных полуэмпирических правил, основанных на принципе Рунге.

Будем считать, что при использовании метода р-гопорядка абсолютная шаговая погрешность должна находиться в пределах ε>0. Тогда, согласно принципу Рунге, осуществляется счет по системе узлов Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru с шагом h и по системе узлов Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru — с шагом h/2. При четных j вторая система будет совпадать с первой, т.е. Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru Переход от расчетной точки xi с приближенным значением решения в ней уiк расчет­ной точке один раз совершается за один шаг длины hи приводит к значению Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru другой раз — за два шага длины h/2 («транзитом» через точку Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru со значением Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru и дает значение

Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru

Поправка Ричардсона в таком случае будет составлять величину

Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru (34)

Если величина Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru меньше заданного ε, то можно считать, что ошибка приближенного равенства Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru не превосходит ε. Если же Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru то следует уменьшить расчетный шаг h.При условии Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru стоит попытаться двигаться дальше с более крупным шагом (например, удвоить h).

Пример 2. (продолжение примера 1). Посмотрим, что дает применение принципа Рунге к нескольку простым методам численного решения того же уравнения y'=2х-3yначальным условием у(0) = 1. Из точки х=0 перейдем в точку х=0.2 за один шаг h =0.2 четырьмя одношаговыми методами: явным и неявным методами Эйлера, методом трапеций и методом Хойна — частным случа­ев метода Рунге-Кутты второго порядка. С помощью полученных значе­ний Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru и найденных ранее теми же методами в примере 1 значений Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru подсчитаем поправки Ричардсона

Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru

при р=1 для методов Эйлера и р=2 для методов трапеций и Хойна. Эти результаты, а также уточненные прибавлением к значениям Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru попра­вок Ричардсона Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru приближенные значения Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru решения y(0.2) и их истинные погрешности Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru сведем в следующую таблицу.

Метод Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru
Эйлера (8) 0.4 0.11 0.62 ≈-0.04 ≈0.07
Неявный Эй­лера (14) 0.675 ≈ -0.0407 ≈ 0.5936 ≈-0.01 ≈ -0.05
Трапеций (15) ≈0.5692 ≈0.0032 ≈0.5820 ≈-0.0001 ≈0.003
Хойна (16) 0.62 ≈ -0.0102 ≈0.5793 ≈ 0.0026 ≈ -0.008

В эту таблицу последним столбцом помещен последний столбец из таблицы результатов примера 1, содержащий погрешности значе­ний Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru Сравнение с ним столбца со значениями поправок Ричардсона показывает, что эти поправки хорошо отражают поведение погрешностей методов (хотя и не дают основания считать их модули оценками погрешностей), а предпоследнего — эффективность уточнения по правилу Рунге-Ричардсона.

Грубо обозначенная здесь технология пошагового контроля точности численного интегрирования дифференциальных уравнений и автоматического выбора расчетного шага при этом на основе двойного счета в такой непосредственной форме говорит о ее значительной «дороговизне». Действительно, предположим, что для решения задачи (1)-(2) применяется четырехэтапныйметод Рунге-Кутты четвертого порядка (33). Тогда вы­полнение одного его шага с контролем точности по правилу Рунге потребует 11 вычислений правой части уравнения (1) (по четыре получения каждого из значений Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru и Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru минус одно общее для Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru весьма затратно.

Более «дешевый», но, возможно, менее строгий способ су­дить о том, достаточно ли малым выбран шаг h расчетов по ме­тоду Рунге-Кутты четвертого порядка (33), — это вычисление при каждом i= 0,1, 2,... величин

Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru

Считается, что если величина Θi, не превосходит нескольких со­тых, то можно продолжить вычисления с данным шагом или пы­таться при переходе от i к i+1 его увеличить; в противном случае шаг следует уменьшить, например, вдвое.

Стремление повысить вычислительную эффективность при­вело к появлению различных вычислительных версий методов Рунге-Кутты, благо для этого в семействе методов (32) имеет­ся значительное число свободных параметров. Основные сооб­ражения, положенные в основу этих версий, таковы: нужно по­лучить формулы из семейства методов Рунге-Кутты (32), которые использовали бы одни и те же значения функции — правой части уравнения (1) — и определяли бы разные кон­кретные методы одного порядка (или смежных порядков, напри­мер, четвертого и пятого); при этом, чтобы по разности результа­тов подсчета приближенных значений решения по выведенным близким формулам (с одним и тем же шагом h(!)) можно было судить о точности одного из них.

Приведем один из таких методов, который называется методом Кутты-Мерсона или, иначе, пятиэтапным мето­дом Рунге-Кутты четвертого порядка, а также методов вложенных форм.

На i-ом шаге решения задачи (1)-(2) последовательно вычисляют:

Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru

После этого подсчитывают величину

Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru

и проводят сравнения. Если значение R окажется больше задан­ного допустимого уровня абсолютных погрешностей ε, то шаг уменьшают вдвое Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru и возвращаются к началу второго эта­па, т.е. заново вычисляют Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru и т.д. Если R≤ε, то считают Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru с точностью ε. При переходе к следующему шагу делается проверка на возможность увеличить расчетный шаг: если Занятие № 19. Пошаговый контроль точности. Метод Кутты-Мерсона - student2.ru то далее расчет ведется с шагом h:= 2h.

Наши рекомендации