Выбор интегратора: Верле, RK4, leapfrog
Как выбрать интегратор под задачу: цена, точность и сохранение.
Симплектический интегратор — метод, сохраняющий структуру фазового пространства и потому не дающий энергии систематически дрейфовать; для долгих консервативных симуляций он обязателен.
Три семейства методов
В арсенале вычислительной физики десятки интеграторов, но они делятся на несколько типов по двум осям: точность (порядок) и сохранение структуры (симплектичность).
| Метод | Порядок | Симплектичен? | Когда применять |
| Явный Эйлер | 1 | нет | демонстрация, очень короткие прогоны |
| Полунеявный Эйлер | 1 | да | игры, простая физика реального времени |
| Скоростной Верле | 2 | да | молекулярная динамика, орбиты, N тел |
| Рунге-Кутта 4 (RK4) | 4 | нет | высокая точность на коротком интервале, неконсервативные задачи |
Симплектичность против высокого порядка
Здесь скрыт неочевидный выбор. RK4 — метод четвёртого порядка, очень точный на коротком интервале, но не симплектичный: на длинной дистанции его энергия медленно дрейфует. Верле всего второго порядка, но симплектичен: его энергия колеблется, но не уходит. Для орбиты на миллион периодов скромный Верле побьёт «точный» RK4, потому что важен не один точный шаг, а отсутствие накопления за миллионы шагов.
Правило простое: для долгих консервативных систем (орбиты, газы, кристаллы) выбирают симплектический метод (Верле, leapfrog). Для коротких или диссипативных задач, где важна локальная точность (химическая кинетика, цепи с затуханием), берут RK4.
Цена шага
Стоимость метода измеряют числом вычислений силы за шаг — это самая дорогая операция (особенно в N тел). Эйлер и Верле считают силу один раз за шаг. RK4 — четыре раза. Значит, при равном шаге RK4 вчетверо дороже. Иногда выгоднее сделать вчетверо больше дешёвых симплектических шагов, чем один дорогой RK4.
Метод leapfrog (чехарда)
Близкий родственник Верле — leapfrog, где координаты и скорости определены в чередующихся («перепрыгивающих») моментах времени, отсюда название. Он математически эквивалентен Верле, тоже симплектичен и второго порядка. В астрофизических кодах N тел чаще встречается именно leapfrog за его простоту и устойчивость.
Как работает под капотом
Выбор интегратора — это выбор того, какую ошибку вы готовы терпеть. Несимплектичный метод высокого порядка делает крошечную ошибку, но с постоянным знаком, и она копится. Симплектичный метод делает ошибку побольше, но осциллирующую, и она не растёт. Для физики важнее качественная верность (планета остаётся на орбите) на длинной дистанции, чем абсолютная точность одного шага. Поэтому в вычислительной физике геометрия метода часто важнее его порядка.
Частые ошибки
- Брать RK4 для долгой орбиты «потому что он точнее». На длинной дистанции несимплектичный метод проигрывает Верле по сохранению энергии.
- Сравнивать методы по точности одного шага. Решает поведение на тысячах и миллионах шагов.
- Игнорировать цену. Метод высокого порядка может оказаться медленнее, чем несколько дешёвых шагов симплектического метода.
Итоги
- Методы различают по порядку (точность шага) и симплектичности (сохранение структуры).
- Для долгих консервативных систем выбирают симплектический метод, даже невысокого порядка.
- RK4 точен на коротком интервале, но дрейфует по энергии на длинном.
- Цена метода — число вычислений силы за шаг; это решающий ресурс в N тел.