Ланжевеновская динамика

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

F. R

(1.7)

a, =- "Л,+ —

где / - коэффициент трения растворителя, который измеряется в [пс1], a R - случайная сила, переданная растворенным атомам от растворителя. Случайная сила вычисляется из распределения Гаусса со средним числом ноль, без какой-либо корреляции со скоростью атома [5, 8, 20, 21].

Вычислительные алгоритмы

Специфика метода молекулярной динамики состоит в необходимости решения очень большого числа уравнений. Стандартным методом решения обыкновенных дифференциальных уравнений, таких как уравнения движения Ньютона, является метод конечных разностей. В этом методе координаты и скорости частиц во время г + Аг с достаточной степенью точностью находятся из координат и скоростей в более раннее время t. Уравнения решаются шаг за шагом. Выбор интервала Аг зависит от свойств моделируемой системы, он должен быть значительно меньше, чем характерное время движения частиц.

Используя формулу Тейлора, координата в момент времени г + Аг находится по формуле:

r(r +A/) = r(r) +v(r)Ar + ^a(/)A/2 + ..., (1.8)

где v(z) - скорость, а(0- ускорение. Так как интеграционный процесс является ступенчатым, перепишем это уравнение в дискретной форме. Используя г„, будем обозначать позицию на шаге п во время t, гя+1 соответственно на шаге t + Аг.

r„, =r„+v,A+^ — Д?2+О(Дг’), (1.9)

2 т

где локальная ошибка интегрирования О(А/3) - это терм порядка Аг3 и меньше. С помощью данной информации можно грубо оценить скорость:

Таким образом, зная позицию, скорость и силу на шаге и, можно оценить позицию и скорость на шаге п +1. Данный алгоритм очень простой и приводит к большим ошибкам при интегрировании.

Одним из наиболее распространенных алгоритмов интегрирования уравнений движения в молекулярной динамике являются алгоритмы Верлета и его модификации.

Алгоритм Верлета

Данный алгоритм основывается на знании позиций частицы на шаге п +1 и п — 1:

r„+, = r„+v„A/ + l^Ar + O(Ar’), (1.11)

  • 2 т
  • 1 F

r„_, = r„ + v„ АГ + - -JL ДГ - О(ДГ ). (1.12)

2 т

Сумма этих двух уравнений описывает положение частицы:

F

r+i = 2r„->;.i + —+О(Д/), (1-13)

т

где ги - положение частицы на шаге и, гя+1 и гпЧ соответственно положение частицы на шаге п +1 и п -1, FH - сила, действующая на частицу массой т, на шаге /?, Д/ - шаг времени.

Скорость находится по формуле:

v„=—'2^—' +O(^t2). (1.14)

Алгоритм выполняется в цикле:

  • 1) использовать текущую позицию г„ для вычисления силы F,,;
  • 2) используя позиции на текущем и предыдущем шаге с текущей силой Fn, вычислить новые положения частиц гя+| на временном шаге п +1;

3) вычислить скорость частицы v„ согласно (1.14) на временном шаге п + 1.

Преимущества алгоритма Верлета.

  • 1) Интеграция положений весьма точна (ошибка порядка 6>(Дг4)) и не зависит от скорости, что снижает требования к памяти и упрощает интеграцию позиций.
  • 2) Алгоритм один раз рассчитывает силу в один цикл итерации (расчет силы - самая затратная часть моделирования).
  • 3) Обратимость во времени: расчет системы в обратном времени приводит к тем же уравнениям (из-за неизбежных погрешностей округления при выполнении арифметических операций с ограниченной точностью, рассчитанные при этом траектории частиц не будут совпадать с истинными).

Недостатки алгоритма Верлета.

  • 1) Вычисление скорости имеет относительно большую погрешность 6>(ДГ), а точная оценка скорости требуется для вычисления кинетической энергии.
  • 2) Скорость v,; может быть вычислена только после того, как положение rn+i уже вычислено.
  • 3) Алгоритм Верлета не является самостартуемым. Для его запуска должен быть задан набор положений частиц не только в начальный момент времени, но и на следующем шаге.
  • 4) Он должен быть модифицирован, чтобы добавить пересчет температуры.

Алгоритм «leap-frog»

Для устранения недостатков алгоритма Верлета используются различные варианты его модификации. Один из наиболее часто используемых - алгоритм «leap-frog» или алгоритм «чехарды», так называемый из-за его схемы половины шага. Скорости оцениваются в средней точке из оценки позиций и наоборот.

F v„+l,2=v„_1,2 + —Д/, (1.16)

m

где v„+1/2 и v„_)/2 - скорость на шаге времени r + l/2Ar и r-l/2Ar соответственно. Если убрать скорости в этих уравнениях, то получится метод, который эквивалентен алгоритму Верлета.

Алгоритм выполняется в цикле:

  • 1) для вычисления текущей силы Fn использовать текущую позицию
  • 2) использовать текущую силу FH и скорость v„_1/2 для вычисления следующей скорости на середине шага vn+1/2 (1.16);
  • 3) использовать текущую позицию ги и vw+1/2 для вычисления позиции на следующем шаге г,1+1 .(1.15).

Текущая скорость определяется как

V„ =(v„_,,2 + v„+1z2)/2 , (1.17)

и служит для вычисления кинетической энергии.

Преимущества алгоритма «leap-frog».

  • 1) Более точная оценка скорости.
  • 2) Прямая оценка скорости дает возможности для управления моделированием температуры (через перемасштабирование скорости).
  • 3) Уменьшаются численные ошибки.

Недостатки алгоритма «leap-frog».

  • 1) Недостаточно точно определяет скорости.
  • 2) Требует большего количества ресурсов для вычислений, чем алгоритм Верлета.

Скоростной алгоритм Верлета

Для улучшения скоростной обработки алгоритм Верлета модифицируется к скоростной форме алгоритма Верлета. Этот алгоритм сохраняет позиции, скорости и ускорения в один момент времени t и минимизирует ошибки округления.

1 F

r„(.i=r„+v„A? + -—ДГ (1.18)

  • 2 т
  • 1 Ак I? Л

V„, =v„ + -”+ Дг (1.19)

2 т т )

Алгоритм выполняется по следующим шагам в цикле:

  • 1) Вычисление позиции гг+1 во время t + А/ по формуле (1.18);
  • 2) Вычисление скорости в середине шага
  • 1 F

v„+l/2 = v« + ^—Д< (1-20)

  • 2 т
  • 3) Вычисление силы Fn+1 во время t + А/;
  • 4) Вычисление скорости v„+1.
  • 1 F

v„+i=v„+i,2+--^A? (1.21)

2 т

На этой точке рассчитывается кинетическая энергия на шаге времени t + А?.

Преимущества скоростного алгоритма Верлета.

  • 1) Численно очень стабильный.
  • 2) Удобный и простой.
  • 3) Обеспечивает точную оценку скоростей и кинетической энергии.

Главное неудобство алгоритма - в вычислительном отношении наиболее дорогой, чем предыдущие алгоритмы [5, 11, 20, 30, 31].

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >