Release 2.0.0 of MDAnalysis
This is the first version of MDAnalysis to solely support python 3.6+
Supported python versions:
- 3.6, 3.7, 3.8, 3.9
Please note that starting with the next minor version, MDAnalysis will be following NEP29.
Notes:
- This is a major release and introduces major advertised API breaks. Caution is advised when upgrading to 2.0.0.
Major changes:
Enhancements:
- LAMMPSDumpReader can now read coordinates in all different LAMMPS coordinate conventions (Issue #3358)
- New
Results
class for storing analysis results (Issue #3115) - New OpenMM coordinate and topology converters (Issue #2863, PR #2917)
- New
intra_bonds
,intra_angles
,intra_dihedrals
, etc... methods to return connections involve atoms within AtomGroups instead of including atoms outside of it (Issue #1264, #2821, PR #3200) - Support for Groamcs 2021 TPR files (Issue #3180)
- Adds preliminary support for ppc64le and aarch64 [ARM] (Issue #3127, PR #2956 #3149)
- New selection operators (Issue #3054, PR #2927)
- New refactor of helix analysis class as
analysis.helix_analysis
(Issue #2452) - New converter between RDKit molecules and MDAnalysis AtomGroup objects (Issue #2468). Also includes
from_smiles
Universe generator method, and the aromatic and smarts selection. - New analysis method for calculating Mean Squared Dsiplacements (Issue #2438)
- New converter between Cartesian and Bond-Angle-Torsion coordinates (PR #2668)
- Universes and readers can now be
pickled
paving the way to easier parallel analyses (Issue #2723) - New H5MDReader and H5MDWriter (Issue #762, #2866)
Fixes:
- Fixes an issue where
select_atom
, AtomGroup.unique, ResidueGroup.unique, and SegmentGroup.unique did not sort the output atoms (Issues #3364 #2977) - GRO files now only support unit cells defined with 3 or 9 entries (Issue #3305)
- Fixes the sometimes wrong sorting of atoms into fragments when unwrapping (Issue #3352)
- Fixes issue when atttempting to use/pass mean positions to PCA analysis (Issue #2728)
- Fixes support for DL_POLY HISTORY files that contain cell information even if there are no periodic boundary conditions (Issue #3314)
- Fixes issue with WaterBridgeAnalysis double counting waters (Issue #3119)
- PDBWriter will use chainID instead of segID (Issue #3144)
- PDBParser and PDBWriter now assign and use the element attribute (Issues #3030 #2422)
- AtomGroup.center now works correctly for compounds + unwrapping (Issue #2984)
- Documents and fixes the
density
keyword forrdf.InterRDF_s
(Isuse #2811) - Fixed Janin analysis residue filtering, including CYSH (Issue #2898)
Changes:
- New converter API for all MDAnalysis converters under MDAnalysis.converters
- Timestep now stores information in 'C' memory layout instead of the previous 'F' default (PR #1738)
hbonds.hbond_analysis
has been remove din favour ofhydrogenbonds.hbond_analysis
(Issues #2739, #2746)- TPRParser now loads TPR files with
tpr_resid_from_one=True
by deafult, which starts TPR resid indexing from 1 (instead of 0 as in previous MDAnalysis versions) (Issue #2364, PR #3152) analysis.hole
has now been removed in favour ofanalysis.hole2.hole
(Issue #2739)Writer.write(Timestep)
andWriter.write_next_timestep
have been removed. Please usewrite()
instead (Issue #2739)- Removes deprecated density_from_Universe, density_from_PDB, Bfactor2RMSF, and notwithin_coordinates_factory from MDAnalysis.analysis.density (Issue #2739)
- Changes the minimum numpy supported version to 1.16.0 (Issue #2827)
- Removes deprecated
waterdynamics.HydrogenBondLifetimes
(PR #2842) hbonds.WaterBridgeAnalysis
has been moved tohydrogenbonds.WaterBridgeAnalysis
(Issue #2739 PR #2913)
Deprecations:
- The
bfactors
attribute is now aliased totempfactors
and will be removed in 3.0.0 (Issue #1901) WaterBridgeAnalysis.generate_table()
now returns table information, with thetable
attribute being deprecated- Various analysis result attributes which are now stored in
Results
will be deprecated in 3.0.0 (Issue #3261) - In 3.0.0 the ParmEd classes will only be accessible from the
MDAnalysis.converters
module - In 2.1.0 the TRZReader will default to a dt of 1.0 ps when failing to read it from the input TRZ trajectory
See the CHANGELOG for more changes and details.
Known issues:
- Windows builds
- For some compilers (seen on MVC v.19xx), differences in floating point precision leads to PBC wrapping differing from expected outcomes. This leads to failures in the
MDAnalysisTests.lib.test_augment
tests. To our knowledge this does not significantly affect results (as all other tests pass). We will aim to fix this in version 2.1.0.
- For some compilers (seen on MVC v.19xx), differences in floating point precision leads to PBC wrapping differing from expected outcomes. This leads to failures in the