Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why is Verlet integration better than Euler integration?

Tags:

Can someone explain to me why Verlet integration is better than Euler integration? And why RK4 is better than Verlet? I don't understand why it is a better method.

like image 895
GameProgrammer89 Avatar asked May 04 '10 22:05

GameProgrammer89


People also ask

What is verlet integration used for?

Verlet integration (French pronunciation: ​[vɛʁˈlɛ]) is a numerical method used to integrate Newton's equations of motion. It is frequently used to calculate trajectories of particles in molecular dynamics simulations and computer graphics.

What was the drawback in the verlet method?

Because the Verlet algorithm is not self-starting, another algorithm must be used to obtain the first few terms. An additional problem is that the new velocity Eq. (22) found by computing the difference between two quantities of the same order of magnitude.

Is the Verlet method symplectic?

The statement follows from the fact that the Störmer–Verlet scheme is the composition of the two symplectic Euler methods (1) with step size h/2. Even order 2 follows from its symmetry.


2 Answers

The Verlet method is is good at simulating systems with energy conservation, and the reason is that it is symplectic. In order to understand this statement you have to describe a time step in your simulation as a function, f, that maps the state space into itself. In other words each timestep can be written on the following form.

(x(t+dt), v(t+dt)) = f(x(t),v(t))

The time step function, f, of the Verlet method has the special property that it conserves state-space volume. We can write this in mathematical terms. If you have a set A of states in the state space, then you can define f(A) by

f(A) = {f(x)| for x in A}

Now let us assume that the sets A and f(A) are smooth and nice so we can define their volume. Then a symplectic map, f, will always fulfill that the volume of f(A) is the same as the volume of A. (and this will be fulfilled for all nice and smooth choices of A). This is fulfilled by the time step function of the Verlet method, and therefore the Verlet method is a symplectic method.

Now the final question is. Why is a symplectic method good for simulating systems with energy conservation, but I am afraid that you will have to read a book to understand this.

like image 183
niels Avatar answered Oct 25 '22 07:10

niels


The Euler method is a first order integration scheme, i.e. the total error is proportional to the step size. However, it can be numerically unstable, in other words, the accumulated error can overwhelm the calculation giving you nonsense. Please note, this instability can occur regardless of how small you make the step size or whether the system is linear or not. I am not familiar with verlet integration, so I can not speak to its efficacy. But, the Runge-Kutta methods differ from the Euler method in more than just step size.

In essence, they are based on a better way of numerically approximating the derivative. The precise details escape me at the moment. In general, the fourth order Runge-Kutta method is considered the workhorse of the integration schemes, but it does have some disadvantages. It is slightly dissipative, i.e. a small first derivative dependent term is added to your calculation which resembles an added friction. Also, it has a fixed step size which can result can make it difficult to achieve the accuracy you desire. Alternatively, you can use an adaptive stepsize scheme, like the Runge-Kutta-Fehlberg method, which gives fifth order accuracy for an additional 6 function evaluations. This can greatly reduce the time necessary to perform your calculation while improving accuracy, as shown here.

like image 44
rcollyer Avatar answered Oct 25 '22 08:10

rcollyer