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
In order to conduct MD simulations, various computer programs have been
X-PLOR  and
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 is particularly well suited to the increasingly popular Beowulf-class PC clusters, which are quite similar to the workstation clusters for which is was originally designed.
Future versions of NAMD will also make efficient use of clusters of multi-processor workstations or PCs.
NAMD has several important features:
- Force Field Compatibility
The force field used by NAMD is the same as that used by the programs
CHARMM  and X-PLOR
. 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.
- Efficient Full Electrostatics Algorithms
NAMD incorporates the Particle Mesh Ewald (PME) algorithm,
which takes the full electrostatic interactions into account.
This algorithm reduces the computational complexity of electrostatic
force evaluation from to
- Multiple Time Stepping
The velocity Verlet integration method
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 employed. The local
interactions (bonded, van der Waals 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 less often.
This amortizes the cost of computing the electrostatic forces over several timesteps.
A smooth splitting function is used to separate a quickly varying short-range portion of the electrostatic interaction from a more slowly varying long-range component.
It is also possible to employ an intermediate timestep for the short-range non-bonded interactions, performing only bonded interactions every timestep.
- Input and Output Compatibility
The input and output file formats used by NAMD are identical to those
used by CHARMM and X-PLOR. Input formats include coordinate files in PDB format
, structure files in X-PLOR PSF format,
and energy parameter files in either CHARMM or X-PLOR formats.
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
- Constant energy dynamics,
- Constant temperature dynamics via
- Velocity rescaling,
- Velocity reassignment,
- Langevin dynamics,
- Periodic boundary conditions,
- Constant pressure dynamics via
- Berendsen pressure coupling,
- Nosé-Hoover Langevin piston,
- Energy minimization,
- Fixed atoms,
- Rigid waters,
- Rigid bonds to hydrogen,
- Harmonic restraints,
- Spherical or cylindrical boundary restraints.
- 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. If you are contemplating a particular modification to NAMD you are encouraged to contact the developers for guidance.
- Interactive MD simulations
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 VMD, see http://www.ks.uiuc.edu/Research/vmd/.
- 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
and the calculation of interactions among the atoms within them
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.