Greenspan's method

Update for positions:

xim+1 = xim + h/2 (vim+1 + vim)
Update for velocities:
vim+1 = vim + h Aim
where we use a different acceleration than before. That is, in other methods the acceleration aim was the sum over ji of:
G (xjm - xim) / (rijm)3
where rij=||xj-xi||. On the other hand, Greenspan's method uses the sum over ji of:
G ((xjm+1 - xim+1) + (xjm - xim)) / ( rijm+1 rijm (rijm+1 + rijm))
for the acceleration Aim.

This method is energy conserving. The design comes from approximating the force as a discrete derivative of the potential energy (rather than, as before, keeping the force exact while effectively approximating the potential energy). The energy conservation comes at the cost of the method being implicit.

The method also conserves both linear and angular momentum. It is time reversible.

References