Oliver Beckstein edited this page Jul 17, 2018 · 1 revision

MDAnalysis 0.18.0 release



  • Added flatten_dict function that flattens nested dicts into shallow dicts with tuples as keys.
  • Can now pass multiple attributes as a list to groupby function. Eg ag.groupby(["masses","charges"]) (Issue #1839)
  • Added reading of record types (ATOM/HETATM) for PDB, PDBQT and PQR formats (Issue #1753)
  • Added Universe.copy to allow creation of an independent copy of a Universe (Issue #1029)
  • Added copy method to various core classes including Reader, TransTable, Topology, TopologyAttr (Issue #1029)
  • Added reindex option to GROWriter to preserve original atom ids when set to False (Issue #1777)
  • Can now pass 'atom_style' keyword argument when parsing Lammps Data files to specify what is on each line. Eg atom_style = 'id type charge x y z' (Issue #1791)
  • Added periodic boundary condition option to HydrogenBondAnalysis (Issue #1188)
  • Added duecredit to prepare a summary of the citations, when a user uses MDAnalysis (Issue #412)
  • Added AtomGroup, ResidueGroup and SegmentGroup to the top module namespace


  • Fixed MPI fork() warning when importing MDAnalysis in an Infiniband-enabled MPI environment (PR #1794)
  • Fixed waterdynamics SurvivalProbability ignoring the t0 start time (Issue #1759)
  • AtomGroup.dimensions now strictly returns a copy (Issue #1582)
  • lib.distances.transform_StoR now checks input type (Issue #1699)
  • libdcd now writes correct length of remark section (Issue #1701)
  • DCDReader now reports the correct time based on istart information (PR #1767)
  • added requirement scipy >= 1.0.0 (absolutely needed: >= 0.19) (Issue #1775)
  • Universe.empty now warns about empty Residues and Segmnets (Issue #1771)
  • AMBER netcdf reader now defaults to mmap=None as described in the docs (meaning mmap=True for files and NOT in memory), thus avoiding memory problems on big trajectories (Issue #1807)
  • analysis.align: fixed output and catch more cases with SelectionError when selections are incompatible (Issue #1809)
  • fix cython 0.28 compiler error
  • DCD istart was wrongly interpreted as frames (only in 0.17.0) instead of integrator timesteps, which lead to large time-offsets when reading and writing DCD files; now istart is correctly interpreted when reading and when writing, istart=None will set it to the CHARMM default nsavc but the default is istart=0, which will make the DCD start at frame 0 (Issue #1819)
  • Can now parse PDB files without resids (Issue #1854)
  • Fixed periodic KDTree, now requires Biopython version 1.71 onwards (Issue #1857)
  • fixed a bug in visualization.streamlines (Issue #1617)
  • Updated TPR parser for GROMACS 2018 (Issue #1796)
  • Fixed reading of PQR files generated by Gromacs (Issue #1804)


  • scipy >= 1.0.0 is now required (issue #1775 because of PR #1758)


  • undeprecated creating Groups from list of Components (Issue #1847)


tylerjereddy, richardjgowers, palnabarun, bieniekmateusz, kain88-de, orbeckst, xiki-tempula, navyakhare, zemanj, ayushsuhane, davidercruz, jbarnoud

Project Information

GNU GPL v2 code license
Labels: python, molecular dynamics, analysis, DCD, CHARMM, LAMMPS, NAMD, Gromacs, computer simulation, atoms, coordinates, trajectory, XTC, Library, object-oriented
Core Developers


Release Notes
Guide for Developers
Google Summer of Code

Code of Conduct


@mdanalysis on Twitter
Downloads (PyPi)
Mailing Lists:
User discussion group
Developer mailing list

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.