Next: User feedback
Up: Introduction
Previous: New features in version
Molecular dynamics (MD) simulations compute atomic trajectories by solving
equations of motion numerically using empirical force fields, such as the
CHARMm force field, that approximate the actual atomic force in
biopolymer systems. Detailed information about MD simulations can be found in
several books such as
[1,8].
In order to conduct MD simulations, various computer programs have been
developed including
X-PLOR [6] and
CHARMm [5].
These programs were originally developed for serial machines.
Simulation of large molecules, however, require enormous computing power.
One way to achieve such simulations is to utilize parallel computers. In recent
years, distributed memory parallel computers have been offering
cost-effective computational power. NAMD was designed to run efficiently
on such parallel
machines for simulating large molecules.
NAMD has several important features:
- Force Field Compatibility
The force field used by NAMD is the same as that used by the programs
CHARMm [5] and X-PLOR
[6]. This force field includes local
interaction terms consisting of bonded interactions between 2, 3, and 4 atoms
and pairwise interactions including electrostatic and van der Waals forces.
This commonality allows simulations to migrate between these three programs.
- Fast Multipole Algorithm
NAMD incorporates the Distributed Parallel Multipole Tree Algorithm
(DPMTA) [4], which takes the full electrostatic
interactions into account. This algorithm reduces the computational
complexity of electrostatic force evaluation from O(N2) to O(N).
- Multiple Time Stepping:
The velocity Verlet integration method
[1]
is used to advance the positions and velocities of the atoms in time.
To further reduce the cost of the evaluation of
long range electrostatic forces,
a multiple time step scheme is combined with the DPMTA method. The local
interactions (bonded interactions and electrostatic interactions within a
specified distance) are calculated at each time step. The longer range
interactions (electrostatic interactions beyond the specified distance) are
only computed every k steps, with each set of k steps called a cycle.
This amortizes the cost of computing the electrostatic forces
over the k steps in the cycle.
For appropriate values of k, the error due to holding the long range
forces constant for a few steps is modest compared to the errors incurred
from using a finite time step for the other forces.
- Input and Output Compatibility
The input and output file formats used by NAMD are identical to those
used by X-PLOR. Input formats include coordinate files in PDB format
[2], structure files in PSF format,
and energy parameter files in the same format used by CHARMm and X-PLOR.
Output formats include PDB coordinate files and binary DCD trajectory files.
These similarities assure that the molecular dynamics trajectories from NAMD
can be read by CHARMm or X-PLOR and that the user can exploit the many
analysis algorithms of the latter packages.
- Dynamics Simulation Options
MD simulations may be carried out using several options, including
- NVE ensemble dynamics,
- NVT ensemble dynamics,
- Velocity rescaling,
- Langevin dynamics,
- Energy minimization,
- Harmonic restraints,
- Moving harmonic restraints,
- Spherical boundary conditions,
- Rigid bonds.
- Easy to Modify and Extend
Another primary design objective for NAMD is extensibility and
maintainability. In order to achieve this, it is designed in an
object-oriented style with C++. Since molecular dynamics is a new field,
new algorithms and techniques are continually being developed.
NAMD's modular design allows one to integrate and test new algorithms
easily. The structure and design of the program
is described in the NAMD Programming Guide with sufficient
detail to allow additions of such
new algorithms.
- Interactive MD simulations
NAMD is one component of MDScope, a computational environment for
structural biology. The two other components of MDScope are VMD,
a molecular visualization program, and MDCOMM, a communications package.
When combined, a system undergoing simulation in NAMD may be viewed and
altered with VMD; for instance, forces can be applied to a set of atoms
to alter or rearrange part of the molecular structure. For more information
on MDScope, see
http://www.ks.uiuc.edu/Research/mdscope/.
- Load Balancing
An important factor in parallel applications is the equal distribution
of computational load among the processors. In parallel molecular simulation,
a spatial decomposition that evenly distributes the computational load
causes the region of space mapped to each processor to become very irregular,
hard to compute and difficult to generalize to the evaluation of many different
types of forces. NAMD addresses this problem by using a simple uniform
spatial decomposition where the entire model is split into uniform cubes of
space called patches. An initial load balancer assigns patches
to processors such that the computational load is balanced as much as possible.
During the simulation, an incremental load balancer monitors the load
and performs necessary adjustments.
Next: User feedback
Up: Introduction
Previous: New features in version
David Hardy
1998-09-06