1. Verlet’s Method
The Euler method is a first order method. This means that the global error is proportional
to the step size. Although the Euler-Cromer method has better energy conserving
properties than the Euler method, it is still a first order method for non-periodic motions.
For some problems, it is useful to have a more accurate higher order method. The
simplest second order method is Verlet’s method. Verlet’s method appears in slightly
different forms and here we take a different approach to it than in the textbook.
Suppose we have an equation of motion of form
d 2x
= a ( x, t )
dt 2
This can be written as two first order equations by introducing the velocity
dx
=v
dt
dv
=a
dt
Euler’s method gives the recurrence relations
vn+1 = vn + an ∆t
xn+1 = xn + vn ∆t
and the Euler-Cromer method gives the recurrence relations
vn+1 = vn + an ∆t
xn+1 = xn + vn+1∆t
The reason why the Euler method is only first order accurate is that the acceleration and
velocity are calculated at the beginning of the step. A more accurate scheme would be to
use information at the mid-point of the step e.g. if we knew the velocity at the mid point
of the step we could use
xn+1 = xn + vn+½ ∆t
Since we, in principle, know the acceleration at the beginning of the step we can find the
velocity at the middle of the step by using
vn+½ = vn−½ + an ∆t
These last two equations constitute Verlet’s method. The time centering makes this
method second order accurate.
Note if we replace vn+½ by vn+1 and vn-½ by vn we get the Euler-Cromer method. However
there is a real difference between the Euler-Cromer method and Verlet’s method in that to
get the correct velocity at the end of the step in Verlet’s method you should find the
average
vn+1 =
1
(v + v )
2 n+3/ 2 n+1/ 2
whereas the Euler-Cromer method uses vn+1/2.
2. Verlet’s method also needs care to be taken with the initial conditions. In practice, you
usually know the initial velocity at the same time as the initial position. To start Verlet’s
method you need to take either a half step backwards in time to get v-1/2 or a half step
forwards in time to get v+1/2. Either way can be done using Euler’s method, with a number
of sufficiently small steps to get the desired accuracy.