MDAnalysis — MD Trajectory Analysis
MDAnalysis 2.10.0 (2025). Core pattern: Universe (topology + trajectory) → AtomGroup (selection) → AnalysisBase.run() → .results.
When to Use This Skill
- Loading GROMACS, AMBER, NAMD, CHARMM, LAMMPS trajectories
- RMSD and RMSF calculations (protein stability, flexibility)
- Structural alignment across trajectory frames
- Hydrogen bond detection and lifetime analysis
- Protein-ligand contacts and binding site analysis
- Dihedral angles (Ramachandran plots, chi angles)
- Secondary structure (DSSP) assignment
- PCA of conformational dynamics
- Radial distribution functions (RDF), density maps
- Mean square displacement (MSD), diffusion coefficients
Quick Start
import MDAnalysis as mda
from MDAnalysis.analysis import rms, align
# Load topology + trajectory
u = mda.Universe('protein.prmtop', 'traj.dcd')
print(u) # <Universe with 45000 atoms>
print(len(u.trajectory)) # number of frames
# Select atoms
protein = u.select_atoms('protein')
ca = u.select_atoms('protein and name CA')
ligand = u.select_atoms('resname LIG')
# Iterate trajectory
for ts in u.trajectory:
print(ts.frame, ts.time, ca.positions.mean(axis=0))
Router — What to Read
| Task |
Reference |
| Universe, topology formats, selections, trajectory I/O, writing |
references/universe-selections.md |
| RMSD, RMSF, alignment, radius of gyration |
references/rmsd-rmsf-alignment.md |
| Hydrogen bonds, native contacts, binding residues |
references/contacts-hbonds.md |
| Dihedrals, DSSP, PCA, RDF, density, MSD |
references/structure-dynamics.md |
| Protein-ligand interaction analysis workflow |
references/protein-ligand.md |
Key Modules
| Module |
Import |
Role |
rms |
from MDAnalysis.analysis import rms |
RMSD, RMSF |
align |
from MDAnalysis.analysis import align |
Structural alignment |
contacts |
from MDAnalysis.analysis import contacts |
Native contacts |
hydrogenbonds |
from MDAnalysis.analysis.hydrogenbonds.hbond_analysis import HydrogenBondAnalysis |
H-bonds |
dihedrals |
from MDAnalysis.analysis.dihedrals import Ramachandran, Janin |
Dihedral angles |
dssp |
from MDAnalysis.analysis.dssp import DSSP |
Secondary structure |
pca |
from MDAnalysis.analysis.pca import PCA |
Conformational PCA |
rdf |
from MDAnalysis.analysis.rdf import InterRDF |
Radial distribution |
density |
from MDAnalysis.analysis.density import DensityAnalysis |
Density maps |
msd |
from MDAnalysis.analysis.msd import EinsteinMSD |
Diffusion |
distances |
from MDAnalysis.analysis.distances import dist, between |
Distances |
Supported Formats
Topology: PSF, PRMTOP (Amber), GRO (GROMACS), PDB, MOL2, TPR, CRD, XML
Trajectory: DCD, XTC, TRR, NC (Amber), LAMMPSDUMP, H5MD, TNG, XYZ, PDB
Installation
pip install MDAnalysis MDAnalysisData
conda install -c conda-forge mdanalysis
# Verify
python -c "import MDAnalysis; print(MDAnalysis.__version__)"
AnalysisBase Pattern (all analysis modules)
analysis = SomeAnalysis(atomgroup, **params)
analysis.run(start=0, stop=None, step=1, verbose=True)
results = analysis.results # dict-like Results object
Related Skills
ase — ASE MD trajectories, structure building (complementary)
scientific-skills:matplotlib — plotting RMSD, RMSF curves
scientific-skills:seaborn — heatmaps for contact maps
scientific-skills:plotly — interactive conformational space plots
scientific-skills:biopython — PDB fetching and sequence tools
1---2name: mdanalysis3description: Use when analyzing molecular dynamics trajectories with MDAnalysis. Covers Universe/AtomGroup, RMSD/RMSF/alignment, contacts and hydrogen bonds, dihedral/secondary structure/PCA analysis, and protein-ligand binding analysis.4---56# MDAnalysis — MD Trajectory Analysis78MDAnalysis 2.10.0 (2025). Core pattern: `Universe` (topology + trajectory) → `AtomGroup` (selection) → `AnalysisBase.run()` → `.results`.910## When to Use This Skill1112- Loading GROMACS, AMBER, NAMD, CHARMM, LAMMPS trajectories13- RMSD and RMSF calculations (protein stability, flexibility)14- Structural alignment across trajectory frames15- Hydrogen bond detection and lifetime analysis16- Protein-ligand contacts and binding site analysis17- Dihedral angles (Ramachandran plots, chi angles)18- Secondary structure (DSSP) assignment19- PCA of conformational dynamics20- Radial distribution functions (RDF), density maps21- Mean square displacement (MSD), diffusion coefficients2223## Quick Start2425```python26import MDAnalysis as mda27from MDAnalysis.analysis import rms, align2829# Load topology + trajectory30u = mda.Universe('protein.prmtop', 'traj.dcd')31print(u) # <Universe with 45000 atoms>32print(len(u.trajectory)) # number of frames3334# Select atoms35protein = u.select_atoms('protein')36ca = u.select_atoms('protein and name CA')37ligand = u.select_atoms('resname LIG')3839# Iterate trajectory40for ts in u.trajectory:41 print(ts.frame, ts.time, ca.positions.mean(axis=0))42```4344## Router — What to Read4546| Task | Reference |47|------|-----------|48| Universe, topology formats, selections, trajectory I/O, writing | `references/universe-selections.md` |49| RMSD, RMSF, alignment, radius of gyration | `references/rmsd-rmsf-alignment.md` |50| Hydrogen bonds, native contacts, binding residues | `references/contacts-hbonds.md` |51| Dihedrals, DSSP, PCA, RDF, density, MSD | `references/structure-dynamics.md` |52| Protein-ligand interaction analysis workflow | `references/protein-ligand.md` |5354## Key Modules5556| Module | Import | Role |57|--------|--------|------|58| `rms` | `from MDAnalysis.analysis import rms` | RMSD, RMSF |59| `align` | `from MDAnalysis.analysis import align` | Structural alignment |60| `contacts` | `from MDAnalysis.analysis import contacts` | Native contacts |61| `hydrogenbonds` | `from MDAnalysis.analysis.hydrogenbonds.hbond_analysis import HydrogenBondAnalysis` | H-bonds |62| `dihedrals` | `from MDAnalysis.analysis.dihedrals import Ramachandran, Janin` | Dihedral angles |63| `dssp` | `from MDAnalysis.analysis.dssp import DSSP` | Secondary structure |64| `pca` | `from MDAnalysis.analysis.pca import PCA` | Conformational PCA |65| `rdf` | `from MDAnalysis.analysis.rdf import InterRDF` | Radial distribution |66| `density` | `from MDAnalysis.analysis.density import DensityAnalysis` | Density maps |67| `msd` | `from MDAnalysis.analysis.msd import EinsteinMSD` | Diffusion |68| `distances` | `from MDAnalysis.analysis.distances import dist, between` | Distances |6970## Supported Formats7172```73Topology: PSF, PRMTOP (Amber), GRO (GROMACS), PDB, MOL2, TPR, CRD, XML74Trajectory: DCD, XTC, TRR, NC (Amber), LAMMPSDUMP, H5MD, TNG, XYZ, PDB75```7677## Installation7879```bash80pip install MDAnalysis MDAnalysisData81conda install -c conda-forge mdanalysis8283# Verify84python -c "import MDAnalysis; print(MDAnalysis.__version__)"85```8687## AnalysisBase Pattern (all analysis modules)8889```python90analysis = SomeAnalysis(atomgroup, **params)91analysis.run(start=0, stop=None, step=1, verbose=True)92results = analysis.results # dict-like Results object93```9495## Related Skills9697- `ase` — ASE MD trajectories, structure building (complementary)98- `scientific-skills:matplotlib` — plotting RMSD, RMSF curves99- `scientific-skills:seaborn` — heatmaps for contact maps100- `scientific-skills:plotly` — interactive conformational space plots101- `scientific-skills:biopython` — PDB fetching and sequence tools