Адаптивный размер шага - Adaptive step size

В числовой анализ, адаптивный размер шага используется в некоторых методах для численное решение обыкновенных дифференциальных уравнений (включая особый случай численное интегрирование ) для контроля ошибок метода и обеспечения свойства устойчивости Такие как А-стабильность. Использование адаптивного размера шага особенно важно, когда существует большой разброс в размере производной. Например, при моделировании движения спутника вокруг Земли в качестве эталона. Орбита Кеплера, фиксированный метод временного шага, такой как Метод Эйлера может быть достаточно. Однако все сложнее, если кто-то хочет смоделировать движение космического корабля с учетом как Земли, так и Луны, как в Проблема трех тел. Там возникают сценарии, в которых можно делать большие временные шаги, когда космический корабль находится далеко от Земли и Луны, но если космический корабль приближается к столкновению с одним из планетных тел, тогда требуются небольшие временные шаги. Метод Ромберга и Рунге – Кутта – Фельберг являются примерами методов численного интегрирования, в которых используется адаптивный размер шага.

Пример

Для простоты в следующем примере используется простейший метод интеграции: Метод Эйлера; на практике методы высшего порядка, такие как Рунге-Кутта методы предпочтительнее из-за их превосходных свойств сходимости и стабильности.

Рассмотрим задачу начального значения

куда у и ж может обозначать векторы (в этом случае это уравнение представляет собой систему связанных ОДУ с несколькими переменными).

Нам дана функция ж(т,у) и начальные условия (а, уа), и нас интересует решение на т = б. Позволять у(б) обозначим точное решение в точке б, и разреши уб обозначают решение, которое мы вычисляем. Мы пишем , куда - ошибка численного решения.

Для последовательности (тп) значений т, с тп = а + нэметод Эйлера дает приближения к соответствующим значениям у(тп) в качестве

Локальная ошибка усечения этого приближения определяется как

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

куда c - некоторая константа пропорциональности.

Мы отметили это решение и его ошибку значком .

Значение c нам не известно. Давайте теперь снова применим метод Эйлера с другим размером шага, чтобы получить второе приближение к у(тп+1). Мы получаем второе решение, которое мы помечаем . Возьмите новый размер шага, равный половине исходного размера шага, и примените два шага метода Эйлера. Это второе решение, по-видимому, более точное. Поскольку нам приходится применять метод Эйлера дважды, локальная ошибка (в худшем случае) вдвое превышает исходную ошибку.

Здесь мы предполагаем коэффициент ошибки постоянно на интервале . В действительности скорость его изменения пропорциональна . Вычитание решений дает оценку ошибки:

Эта оценка локальной ошибки имеет третий порядок точности.

Оценка локальной ошибки может использоваться для определения размера шага должны быть изменены для достижения желаемой точности. Например, если местная толерантность разрешено, мы могли бы позволить час развиваться как:

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

Это решение действительно третий порядок точен в локальной области (второй порядок в глобальной области), но, поскольку для нее нет оценки ошибок, это не помогает уменьшить количество шагов. Эта техника называется Экстраполяция Ричардсона.

Начиная с начального размера шага , эта теория облегчает нашу управляемую интеграцию ОДУ с точки к , используя оптимальное количество шагов с учетом локальной устойчивости к ошибкам. Недостатком является то, что размер шага может стать слишком маленьким, особенно при использовании младшего порядка. Метод Эйлера.

Подобные методы могут быть разработаны для методов более высокого порядка, таких как метод Рунге – Кутта 4-го порядка. Кроме того, устойчивость к глобальной ошибке может быть достигнута путем масштабирования локальной ошибки до глобальной области.

Встроенные оценки ошибок

Адаптивные методы размера шага, которые используют так называемую «встроенную» оценку ошибки, включают Рунге – Кутта – Фельберг, Кэш – Карп и Дорман – Принс методы. Эти методы считаются более эффективными с точки зрения вычислений, но имеют более низкую точность оценок ошибок.

Смотрите также

Рекомендации

дальнейшее чтение

  • Уильям Х. Пресс, Сол А. Теукольски, Уильям Т. Веттерлинг, Брайан П. Фланнери, Числовые рецепты на C, Второе издание, ПРЕСС КЕМБРИДЖСКОГО УНИВЕРСИТЕТА, 1992. ISBN  0-521-43108-5
  • Кендалл Э. Аткинсон, Числовой анализ, Второе издание, John Wiley & Sons, 1989. ISBN  0-471-62489-6