(7) |

(8) |

As one can immediately see, the truncation error of the algorithm when evolving the system by is of the order of , even if third derivatives do not appear explicitly. This algorithm is at the same time simple to implement, accurate and stable, explaining its large popularity among molecular dynamics simulators.

A problem with this version of the Verlet algorithm is that
velocities are not directly generated. While they are not needed for
the time evolution, their knowledge is sometimes necessary.
Moreover, they are required to compute the kinetic energy *K*,
whose evaluation is necessary to test the conservation of
the total energy *E*=*K*+*V*.
This is one of the most important tests to verify that a MD
simulation is proceeding correctly.
One could compute the velocities from the positions by using

To overcome this difficulty, some variants of the Verlet algorithm
have been developed. They give rise to exactly the same trajectory,
and differ in what variables are stored in memory and at what times.
The *leap-frog* algorithm, not reported here, is one of such
variants [20] where velocities are handled somewhat better.

An even better implementation of the same basic algorithm is the so-called
*velocity Verlet* scheme, where positions, velocities and
accelerations at time are obtained from the same quantities
at time *t* in the following way: