lincs: a linear constraint solver for molecular simulations berk hess, hemk bekker, herman...
TRANSCRIPT
LINCS: A Linear Constraint Solver for Molecular Simulations
Berk Hess, Hemk Bekker, Herman J.C.Berendsen, Johannes G.E.M.Fraaije
Journal of Computational Chemistry, 1997
Ankur Dhanik
Outline
• Introduction to Molecular Dynamics
• Problem description
• Some solutions
• LINCS
• Results
Introduction to Molecular Dynamics
• A classical molecular simulations method• Successive configurations of the system
are generated by integrating Newton’s laws of motion
• Integration algorithms should strive to reduce computation and conserve energy
• Various integration algorithms– Standard Verlet algorithm– Leap-frog algorithm
Introduction to Molecular Dynamics
• Standard Verlet Algorithm– r(t+Δt) = 2r(t) - r (t-Δt) + Δt2a(t)– v(t) = [r(t+Δt) - r(t-Δt)]/2Δt– Velocities are not directly generated, and are one time
step behind
• Leap-frog algorithm– r(t+Δt) = r(t) + Δtv(t+Δt/2)– v(t+Δt/2) = v(t-Δt/2) + Δta(t)– v(t) = [v(t+Δt/2) + v(t-Δt/2)]/2– Velocities are half time step behind
Introduction to Molecular Dynamics
• Choosing the time step• One order of magnitude smaller than the shortest
motion (bond vibrations)• Severe restriction as these high frequency
motions have minimal effect on the overall behavior of the system
• Constrained dynamics
Introduction to Molecular Dynamics
System Type of motion present
Suggested times step(s)
Atoms translation 10-14
Rigid molecules Translation and rotation
5 X 10-15
Rigid molecules, rigid bonds
Translation, rotation, torsion
2 X 10-15
Rigid molecules, flexible bonds
Translation, rotation, torsion, vibration
10-15or 5 X 10-16
The different types of motion present in various systems together with suggested time steps
Introduction to Molecular Dynamics
• In constrained dynamics bonds and angles are forced to adopt specific values throughout a simulation
• Constraints are categorized as holonomic and non-holonomic.
• Suppose a particle on the surface of a sphere– r2 – a2 = 0 Holonomic– r2 – a2 >= 0 Non-holonomic
• In a constrained system– Particles are not independent– Magnitude of constraint forces are unknown
Fc
g
Introduction to Molecular Dynamics
Integration algorithms– Standard Verlet Algorithm– Leap-frog algorithm
Choosing time stepConstrained dynamicsHolonomic and non-holonomic constraints
Outline
Introduction to Molecular Dynamics
• Problem description
• Some solutions
• LINCS
• Results
Problem Description
• Design an algorithm for solving constrained molecular dynamics, the constraints being holonomic
• The algorithm should strive for following features:– Numerical stability– Energy conservation– Computational efficiency
Some solutions• Reset coupled constraints after an
unconstrained update– Non-linear problem– SETTLE
• Solves analytically• Very fast, but unsuited for large molecules
– SHAKE• Iterative method• Sequentially all the bonds are set to the correct
length• Simple and numerically stable• No solutions may be found when displacements are
large, difficult to parallelize
Some solutions
• EEM– The second derivatives of constraint
equations are set to zero– All the constraints are dealt with
simultaneously– Corrections are necessary to achieve
accuracy and stability
LINCS
• Does an unconstrained update• Sets the projection of the new bonds onto the
old directions of the bonds to the prescribed lengths
• Similar to EEM, with some practical differences• Implements
– Efficient solver for the matrix equation– A velocity correction that prevents rotational
lengthening– A length correction that improves accuracy and
stability
LINCS
Newton’s equation
of motion
Constraint equations
Lagrangian formulation
Gradient matrix of
constraint equations, B
LINCS
1st and 2nd derivatives
of constraints are zero
Constraint forces
, where
Newton’s equationof motion
(I-TB) is projection matrix which sets the constrained coordinates to zero. T transforms
motions in the constrained coordinates into motions in cartesian coordinates
LINCS
Constrained leap-frog algorithm
=0
is the projection matrix that sets the constrained coordinates to zero
Since =0
If we set We can use
LINCS
• Numerical errors can accumulate which leads to drifts
Velocity correction Position correction
• Drawback: the projection of the new bonds onto the old directions rather than the new bonds are set to prescribed lengths
LINCS
• Correction for rotational lengthening– To correct rotation of bond i, the projection of the bond on the old
direction is set to
• The corrected positions are
LINCS
Constrained new position is given by
Half of the CPU time goes to invert with diagonal element
&A is symmetric, sparse and has zeros on the diagonal
LINCS
•The first power of An gives the coupling effects of neighboring bonds
•The second power gives the coupling effect over a distance of two bonds
•The inversion through a series expansion makes parallelization easy
•In one timestep, the bonds influence each other when they are separated by fewer bonds than highest order in expansion
LINCS
• Parallelization– Consider a linear-bond constrained molecule of 100
atoms to be simulated on a dual processor computer– Uses rotation correction and an expansion to the
second power of An – Because order of expansion is two, bonds influence
each other over a distance of 6– Update of position and call of LINCS algorithm must
be done for atom 1-56 and 44-100 on processors 1 and 2 respectively
– 1-50 update from processor 1 and 50-100 from processor 2
Results
Results
• Solves constrained molecular dynamics
• Numerically stable
• Conserves energy
• Three to four times faster than SHAKE
• Can be easily parallelizedProblem Description
• Design an algorithm for solving constrained molecular dynamics, the constraints being holonomic
• The algorithm should strive for following features:– Numerical stability– Energy conservation– Computational efficiency