MD
Molecular Dynamics


MD is a MATLAB program which carries out a molecular dynamics simulation.

The computation involves following the paths of particles which exert a distance-dependent force on each other. The particles are not constrained by any walls; if particles meet, they simply pass through each other.

The problem is treated as a coupled set of differential equations. The system of differential equation is discretized by choosing a discrete time step. Given the position and velocity of each particle at one time step, the algorithm estimates these values at the next time step.

To compute the next position of each particle requires the evaluation of the right hand side of its corresponding differential equation. Since each of these calculations is independent, there is a potential speedup if the program can take advantage of parallel computing.

This version of the program is intended as a starting point; students are asked to examine the program and add the appropriate parallel MATLAB modifications to run it in parallel.

Usage:

md ( nd, np, step_num )
where

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

MD is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

FFT_SERIAL, a MATLAB program which demonstrates the computation of a Fast Fourier Transform, and is intended as a starting point for implementing a parallel version.

HEATED_PLATE, a MATLAB program which solves the steady (time independent) heat equation in a 2D rectangular region, and is intended as a starting point for implementing a parallel version.

MD_OPENMP, a FORTRAN90 program which carries out a molecular dynamics simulation, using OpenMP for parallel execution.

MD_PARFOR, a MATLAB program which carries out a molecular dynamics simulation; it runs in parallel using MATLAB's "parfor" facility, and includes instructions on how to run the job, via MATLAB's BATCH facility, on a remote system such as Virginia Tech's ITHACA cluster.

MD1, a FORTRAN90 program which carries out a molecular dynamics simulation.

MD2, a FORTRAN90 program which carries out a molecular dynamics simulation.

MD3, a FORTRAN90 program which carries out a molecular dynamics simulation.

MD3GLUE, a FORTRAN90 program which carries out a molecular dynamics simulation.

MDBNCH, a FORTRAN77 program which is a benchmark molecular simulation calculation.

POISSON_SERIAL, a MATLAB program which computes an approximate solution to the Poisson equation in a rectangle, and is intended as the starting point for the creation of a parallel version.

PRIME_SERIAL, a MATLAB program which counts the number of primes between 1 and N, intended as a starting point for the creation of a parallel version.

QUAD_SERIAL, a MATLAB program which approximates an integral using a quadrature rule, and is intended as a starting point for parallelization exercises.

Reference:

  1. Matthew Allen, Dominic Tildesley,
    Computer Simulation of Liquids,
    Oxford University Press, 1987,
    ISBN: 0198556454,
    LC: QC145.2.
  2. Peter Arbenz, Wesley Petersen,
    Introduction to Parallel Computing - A practical guide with examples in C,
    Oxford University Press,
    ISBN: 0-19-851576-6,
    LC: QA76.58.P47.
  3. Rohit Chandra, Leonardo Dagum, Dave Kohr, Dror Maydan, Jeff McDonald, Ramesh Menon,
    Parallel Programming in OpenMP,
    Morgan Kaufmann, 2001,
    ISBN: 1-55860-671-8,
    LC: QA76.642.P32.
  4. Barbara Chapman, Gabriele Jost, Ruud vanderPas, David Kuck,
    Using OpenMP: Portable Shared Memory Parallel Processing,
    MIT Press, 2007,
    ISBN13: 978-0262533027,
    LC: QA76.642.C49.
  5. Furio Ercolessi,
    A Molecular Dynamics Primer.
  6. Philipp Janert,
    Gnuplot in Action: Understanding Data with Graphs,
    Manning, 2008,
    ISBN: 1-933988-39-8.
  7. Dennis Rapaport,
    An Introduction to Interactive Molecular-Dynamics Simulation,
    Computers in Physics,
    Volume 11, Number 4, July/August 1997, pages 337-347.
  8. Dennis Rapaport,
    The Art of Molecular Dynamics Simulation,
    Cambridge University Press, 2004,
    ISBN: 0521825687.

Source Code:

Examples and Tests:

You can go up one level to the MATLAB source codes.


Last revised on 30 July 2009.