softmatter:Verlet Algorithm
From NSDL Materials Digital Library Wiki
Verlet algorithm is probably the most widely used integration scheme in molecular simulations for integrating equations of motion to determine trajectories and velocities of particles. It is important to note that the Verlet algorithm does not directly use velocity to advance particles through time. To derive the algorithm, we proceed as follows:
General Algorithm
Taylor expansion for position of a particle at time t + Δt is:
where
is the position of the particle at time t and Δt is the time step of integration.
Since the first derivative
is the velocity
of the particle at time t and the second derivative
is the acceleration
of the particle at time t, the above equation becomes
Similarly taylor expansion for particle position at time t − Δt is:
Adding equations [2] and [3] and rearranging terms we get the following expression for position of the particle at time t + Δt:
Note that here acceleration
where
is the net force on the particle at time t and m is the mass of the particle. Also, the new position contains an error of the order Δt4 and has been determined without using velocity values.
Further, subtracting equation [3] from [2] we get:
Calculating Velocity
Dividing the entire equation by Δt and rearranging terms we get the expression for velocity of the particle at time t:
Thus in verlet algorithm, velocities of particles at time t are only evaluated after determining particle positions at time t + Δt. Also, the velocity estimate is less accurate than the position estimate as it contains an error of order Δt2. These disadvantages of the verlet algorithm have been overcome in its variants Leapfrog Algorithm, Velocity Verlet Algorithm and Velocity-corrected Verlet Algorithm.


