Skip to content
MDAnalysis is a Python library to analyze molecular dynamics trajectories.
Python C GAMS Shell CSS Makefile Arc
Branch: develop
Clone or download

Latest commit

WG150 Ensure principal axes follow right hand convention (PR #2686)
* Fixes #2637 
* Added a check when calculating the principal axes to ensure that they follow the 
  right handed convention.
* Added a test with PDB code 6msm that returned a triple product of -1.0. Now returns 1.0
* update doc string
* update CHANGELOG
* update AUTHORS
Latest commit a0bd19c May 22, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github update GitHub templates (#2581) Mar 5, 2020
benchmarks BENCH: fix benchmark suite (#2544) Feb 26, 2020
maintainer started version 0.19.1 Oct 9, 2018
package Ensure principal axes follow right hand convention (PR #2686) May 23, 2020
testsuite Ensure principal axes follow right hand convention (PR #2686) May 23, 2020
.appveyor.yml tqdm ProgressBar replaces deprecated ProgressMeter (PR #2617) Mar 22, 2020
.coveragerc Issues/#2490 migration (#2496) Feb 4, 2020
.coveralls.yml added coveralls token May 7, 2018
.gitignore added pyd to gitignore (#2626) Mar 14, 2020
.nojekyll Added .nojekyll file to disable Jekyll Apr 9, 2015
.travis.yml tqdm ProgressBar replaces deprecated ProgressMeter (PR #2617) Mar 22, 2020 fix more grammar errors Jan 30, 2017 add NumFOCUS sponsorship (issue #2460) (#2467) Feb 5, 2020
LICENSE Updated LICENSE and AUTHOR info regarding xdrfile (closes #679) Feb 8, 2016
README.rst Resize NumFOCUS Logo (#2684) May 19, 2020


MDAnalysis Repository README

Powered by NumFOCUS Build Status Coverage Status [*]

Documentation (latest release) Documentation (development version) User Google Group Developer Google Group Anaconda My Binder

MDAnalysis is a Python library for the analysis of computer simulations of many-body systems at the molecular scale, spanning use cases from interactions of drugs with proteins to novel materials. It is widely used in the scientific community and is written by scientists for scientists.

It works with a wide range of popular simulation packages including Gromacs, Amber, NAMD, CHARMM, DL_Poly, HooMD, LAMMPS and many others — see the lists of supported trajectory formats and topology formats. MDAnalysis also includes widely used analysis algorithms in the MDAnalysis.analysis module.

The MDAnalysis project uses an open governance model and is fiscally sponsored by NumFOCUS. Consider making a tax-deductible donation to help the project pay for developer time, professional services, travel, workshops, and a variety of other needs.

This project is bound by a Code of Conduct.

Example analysis script

import MDAnalysis as mda

# Load simulation results with a single line
u = mda.Universe('topol.tpr','traj.trr')

# Select atoms
ag = u.select_atoms('name OH')

# Atom data made available as Numpy arrays

# Iterate through trajectories
for ts in u.trajectory:

There are a number of tutorials on the MDAnalysis homepage that explain how to conduct RMSD calculations, Alignment and many more features of MDAnalysis.

Source code

Source code is hosted in a git repository at

and is available under the GNU General Public License, version 2 (see the file LICENSE).

This is the top level of the master repository. It contains

  1. the MDAnalysis toolkit source files in the directory

  2. the unit tests together with any input files required for running those tests in the directory


The directory maintainer contains scripts only needed for maintaining releases and are not generally useful for the user or the typical developer.

(For more details on the directory layout see Issue 87 on the MDAnalysis issue tracker.)

Guide for Developers

To set up a development environment and run the test suite you can use this guide. If you are a new developer who would like to start contributing to MDAnalysis, you can help increase our code coverage, the guides explain how to find uncovered code.

[*]build: Unit testing is for the whole package; coverage is shown for the core library modules and the analysis modules.
You can’t perform that action at this time.