Sie sind auf Seite 1von 4

Beeman's algorithm

Beeman's algorithm is a method for numerically integrating ordinary differential equations of


order 2, more specifically Newton's equations of motion
. It was designed to allow
high numbers of particles in simulations of molecular dynamics. There is a direct or explicit and
an implicit variant of the method. The direct variant was published by Schofield [1] in 1973 as a
personal communication from Beeman. This is what is commonly known as Beeman's method.
It is a variant of the Verlet integration method. It produces identical positions, but uses a different
formula for the velocities. Beeman[2] in 1976 published a class of implicit (predictor-corrector)
multi-step methods, where Beeman's method is the direct variant of the third order method in
this class.

Contents
[hide]

1 Equation
2 Predictor-Corrector Modifications
3 Error term
4 Memory Requirements
5 References

Equation[edit]
The formula used to compute the positions at time
scheme is:

Predict

in the full predictor-corrector[2]

from data at times

Correct position and velocities at time

from data at times

repeated evaluation of the differential equation to get the acceleration


the equations of the implicit system

by
and of

In tests it was found that this corrector step needs to be repeated at most twice. The
values on the right are the old values of the last iterations, resulting in the new values on
the left.

Using only the predictor formula and the corrector for the velocities one obtains a direct or
explicit method[1] which is a variant of the Verlet integration method:[3]

This is the variant that is usually understood as Beeman's method.


Beeman[2] also proposed to alternatively replace the velocity update in the last equation by the
second order AdamsMoulton method:

where

is present time (i.e.: independent variable)


is the time step size

is the position at time t

is the velocity at time t

is the acceleration at time t, computed as a function of


the last term is the error term, using the big O notation

Predictor-Corrector Modifications[edit]
In systems where the forces are a function of velocity in addition to position, the above equations
need to be modified into a predictor-corrector form whereby the velocities at time
are
predicted and the forces calculated, before producing a corrected form of the velocities.
An example is:

The velocities at time t =

The accelerations at time t =


velocities.

are then calculated from the positions.

are then calculated from the positions and predicted

Error term[edit]
As shown above, the local error term is
global error of

for position and

. In comparison, Verlet is

velocity,resulting in a

for position and

for velocity.

However, the more important global error is


. In exchange for greater accuracy,
Beeman's algorithm is moderately computationally more expensive.

Memory Requirements[edit]
The simulation must keep track of position, velocity, acceleration and previous acceleration
vectors per particle (though some clever work-arounds for storing the previous acceleration
vector are possible), keeping its memory requirements on par with velocity Verlet and slightly
more expensive than the original Verlet method.

References[edit]
1. ^ Jump up to: a b Schofield, P. (1973), "Computer simulation studies of the liquid state", Computer
Physics Communications 5 (1): 1723, doi:10.1016/0010-4655(73)90004-0
2. ^ Jump up to: a b c Beeman, David (1976), "Some multistep methods for use in molecular dynamics
calculations", Journal of Computational Physics 20 (2): 130139, doi:10.1016/00219991(76)90059-0
3. Jump up ^ Levitt, Michael; Meirovitch, Hagai; Huber, R. (1983), "Integrating the equations of
motion", Journal of Molecular Biology 168 (3): 617620, doi:10.1016/S0022-2836(83)80305-2,
PMID 6193281

Sadus, Richard J. (2002), Molecular Theory of Fluids: Theory, Algorithms and ObjectOrientation, Elsevier, p. 231, ISBN 0-444-51082-6
[hide]

v
t
e

Numerical integration methods by order


First-order

Euler
o backward

Second-order

Verlet (velocity)
Trapezoidal

Higher-order

Exponential integrators
General linear

o
o

semi-implicit

Beeman
Midpoint
Heun
Newmark-beta

exponential

RungeKutta (list)
o

multistep

Leapfrog
<img src="//en.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title=""
width="1" height="1" style="border: none; position: absolute;" />
Retrieved from "https://en.wikipedia.org/w/index.php?title=Beeman
%27s_algorithm&oldid=661963395"
Categories:
Numerical differential equations

Das könnte Ihnen auch gefallen