Time-propagation algorithms in molecular dynamics
In molecular dynamics simulations, the ionic positions and velocities are monitored as functions of time . This time dependence is obtained by integrating Newton's equations of motion. When integrating the equations of motions it is important to use symplectic algorithms which conserve the phase-space volume. To solve the equations of motion under symplectic conditions, various integration algorithms have been developed. The time dependence of a particle can be expressed in a Taylor expansion
A backward propagation in time by a time step can be obtained in a similar way
Adding these two equation gives and rearrangement gives the Verlet algorithm
The Verlet algorithm can be rearranged to the Velocity-Verlet algorithm by inserting
Velocity-Verlet integration scheme
The Velocity-Verlet algorithm can be decomposed into the following steps:
- compute forces from density functional theory or machine learning
From these equations it can be seen that the velocity and the position vectors are synchronous in time.
Leap-Frog integration scheme
Another form of the Verlet algorithm can be written in the form of the Leap-Frog algorithm. The Leap-Frog algorithm consists of the following steps:
- compute forces from density functional theory or machine learning
In this form the velocity and the position vectors are asynchronous in time.
Thermostats and used integrators
MDALGO | thermostat | integration algorithm |
---|---|---|
0 | Nose-Hoover | Velocity-Verlet |
1 | Andersen | Leap-Frog |
2 | Nose-Hoover | Leap-Frog |
3 | Langevin | Velocity-Verlet |
4 | NHC | Velocity-Verlet |
5 | CSVR | Leap-Frog |
5 | Multiple Andersen | Leap-Frog |