Skip to main page content
U.S. flag

An official website of the United States government

Dot gov

The .gov means it’s official.
Federal government websites often end in .gov or .mil. Before sharing sensitive information, make sure you’re on a federal government site.

Https

The site is secure.
The https:// ensures that you are connecting to the official website and that any information you provide is encrypted and transmitted securely.

Access keys NCBI Homepage MyNCBI Homepage Main Content Main Navigation
. 2011 Jul 30;32(10):2319-27.
doi: 10.1002/jcc.21787. Epub 2011 Apr 15.

MDAnalysis: a toolkit for the analysis of molecular dynamics simulations

Affiliations

MDAnalysis: a toolkit for the analysis of molecular dynamics simulations

Naveen Michaud-Agrawal et al. J Comput Chem. .

Abstract

MDAnalysis is an object-oriented library for structural and temporal analysis of molecular dynamics (MD) simulation trajectories and individual protein structures. It is written in the Python language with some performance-critical code in C. It uses the powerful NumPy package to expose trajectory data as fast and efficient NumPy arrays. It has been tested on systems of millions of particles. Many common file formats of simulation packages including CHARMM, Gromacs, Amber, and NAMD and the Protein Data Bank format can be read and written. Atoms can be selected with a syntax similar to CHARMM's powerful selection commands. MDAnalysis enables both novice and experienced programmers to rapidly write their own analytical tools and access data stored in trajectories in an easily accessible manner that facilitates interactive explorative analysis. MDAnalysis has been tested on and works for most Unix-based platforms such as Linux and Mac OS X. It is freely available under the GNU General Public License from http://mdanalysis.googlecode.com.

Keywords: Python programming language; analysis; membrane systems; molecular dynamics simulations; object-oriented design; proteins; software.

PubMed Disclaimer

Figures

Figure 1
Figure 1
Organization of the MDAnalysis Python library. The Universe class contains both topological and structural information and maintains a list of all atoms – an AtomGroup instance named atoms – in the system. The selectAtoms() methods provides an interface to the selection mechanism and returns an AtomGroup instance. A molecular dynamics trajectory is accessed through the trajectory attribute, which is an instance of a Reader class. MDAnalysis also contains an analysis sub-module, which collects a number of pre-defined classes and tools.
Figure 2
Figure 2
Layout of important MDAnalysis classes. The Universe class contains an AtomGroup of all Atom instances that can be accessed through the attribute Universe.atoms. It also features a number of auto-generated AtomGroups, one for each segment identifier of the topology. Users can obtain information from the individual Atom instances and computed data from a whole AtomGroup by querying the instance attributes and methods. The Timestep class represents the current state of the system at a particular time frame of the trajectory. Trajectory Reader and Writer classes provide an abstract interface to trajectory I/O. They implement special methods that allow “Pythonic” access to the objects such as treating a Reader as an iterator over trajectory frames (via the __iter__() special method) or selecting individual frames by the indexing operation (implemented through a custom __getitem__() method).
Figure 3
Figure 3
Calculation of geometric parameters for a KALP19 peptide in a DMPC bilayer. (A) The alpha-helical KALP19 peptide (black) was simulated in a DMPC bilayer with 90 lipids with the CHARMM27 force field. (B) Backbone dihedral angles φ and ψ averaged over a 75 ns MD trajectory. Error bars indicate one standard deviation from the mean. The values for an ideal α-helix are shown as dashed lines (φ = −57° and ψ = −47°) for comparison. (C) Average deuterium order parameter profiles, SCD, of DMPC lipid tails. SCD converges slowly and only the average over the last 25 ns is shown.
Figure 4
Figure 4
Defining membrane leaflets (MDAnalysis.analysis.leaflets.LeafletFinder). A-C: LeafletFinder algorithm (A) A graph is constructed that connects particles within a fixed cutoff (circles) such as lipid head group particles. (B) An algorithm implemented in the NetworkX package detects all disconnected subgraphs. (C) Typically, only two graphs are found that describe the two topologically disjoint leaflets. (D) View of a coarse grained bilayer with strong deformations. The bilayer contains ~24,000 lipids and the total simulation system size was ~1.5 million particles (J. Goose, personal communication). The phosphate particles in the head groups are shown and are colored black or white according to the LeafletFinder algorithm. (E) Close-up view of a deformation that is larger than the bilayer thickness itself.
Figure 5
Figure 5
Native contacts analysis for the closed to open transition of adenylate kinase. q1 is the fraction of native contacts relative to the closed state (PDB: 1AKE) and q2 is relative to an open state structure (PDB: 4AKE).

Similar articles

Cited by

References

    1. Hess B, Kutzner C, van der Spoel D, Lindahl E. J Chem Theo Comp. 2008;4(3):435–447. - PubMed
    1. Case DA, Cheatham r., Thomas E, Darden T, Gohlke H, Luo R, Merz J, Kenneth M, Onufriev A, Simmerling C, Wang B, Woods RJ. J Comput Chem. 2005;26(16):1668–1688. - PMC - PubMed
    1. Seeber M, Cecchini M, Rao F, Settanni G, Caflisch A. Bioinformatics. 2007;23(19):2625–2627. - PubMed
    1. Verstraelen T, Van Houteghem M, Van Speybroeck V, Waroquier M. J Chem Inform Model. 2008;48(12):2414–2424. - PubMed
    1. Mezei M. J Comput Chem. 2010;31(14):2658–2668. - PubMed

Publication types

LinkOut - more resources