Алгоритм Биманса - Википедия - Beemans algorithm
Алгоритм Бимана это метод для численно интегрирующий обыкновенные дифференциальные уравнения порядка 2, а именно уравнения движения Ньютона . Он был разработан, чтобы позволить большое количество частиц в моделировании молекулярной динамики. Существует прямой или явный и неявный варианты метода. Прямой вариант был опубликован Шофилдом в 1973 г.[1] как личное сообщение от Бимана. Это то, что обычно называют Метод Бимана. Это вариант Интеграция Верле метод. Он производит идентичные позиции, но использует другую формулу для скоростей. Биман в 1976 году опубликовал[2] класс неявных (предиктор – корректор) многошаговых методов, где Метод Бимана является прямым вариантом метода третьего порядка в этом классе.
Уравнение
Формула, используемая для вычисления позиций в момент времени в полном составе предиктор-корректор[2] Схема такая:
- Предсказывать из данных время от времени
- .
- Правильное положение и скорость во времени из данных время от времени путем многократного вычисления дифференциального уравнения, чтобы получить ускорение и уравнений неявной системы
- В ходе испытаний было установлено, что этот шаг корректора необходимо повторить не более двух раз. Значения справа - это старые значения последних итераций, в результате чего слева появляются новые значения.
Используя только формулу предиктора и корректор для скоростей, можно получить прямой или явный метод[1] который является вариантом метода интегрирования Верле:[3]
Это вариант, который обычно понимается как Метод Бимана.
Биман[2] также предлагается альтернативно заменить обновление скорости в последнем уравнении на второй порядок Метод Адамса – Моултона:
куда
- настоящее время (т.е. независимая переменная)
- размер временного шага
- позиция в момент времени t
- - скорость в момент времени t
- - ускорение в момент времени t, вычисленное как функция
- последний член - это член ошибки, используя нотация большой O
Модификации предиктора – корректора
В системах, где силы являются функцией скорости в дополнение к положению, приведенные выше уравнения необходимо преобразовать в форму предсказателя-корректора, в соответствии с которой скорости в момент времени спрогнозированы, и силы рассчитаны до получения скорректированной формы скоростей.
Пример:
Скорости во времени затем рассчитываются (прогнозируются) с позиций.
Ускорения вовремя затем вычисляются на основе положений и прогнозируемых скоростей, и скорости корректируются.
Срок ошибки
Как показано выше, термин локальной ошибки для должности и скорости, что приводит к глобальной ошибке . Для сравнения, Верле для положения и скорости. В обмен на большую точность алгоритм Бимана умеренно дороже в вычислительном отношении.
Требования к памяти
Моделирование должно отслеживать положение, скорость, ускорение и предыдущие векторы ускорения для каждой частицы (хотя возможны некоторые умные обходные пути для сохранения предыдущего вектора ускорения), сохраняя требования к памяти на уровне скорости Верле и немного дороже, чем исходный метод Верле. .
Рекомендации
- ^ а б Шофилд, П. (1973), "Компьютерное моделирование исследований жидкого состояния", Компьютерная физика Коммуникации, 5 (1): 17–23, Дои:10.1016/0010-4655(73)90004-0
- ^ а б c Биман, Дэвид (1976), "Некоторые многоступенчатые методы для использования в расчетах молекулярной динамики", Журнал вычислительной физики, 20 (2), стр. 130–139, Дои:10.1016/0021-9991(76)90059-0
- ^ Левитт, Майкл; Мейрович, Хагай; Хубер, Р. (1983), "Интегрирование уравнений движения", Журнал молекулярной биологии, 168 (3): 617–620, Дои:10.1016 / S0022-2836 (83) 80305-2, PMID 6193281
- Садус, Ричард Дж. (2002), Молекулярная теория жидкостей: теория, алгоритмы и объектная ориентация, Elsevier, стр. 231, ISBN 0-444-51082-6