MDAnalysis

Overview

MDAnalysis provides open-source tools for the analysis of molecular simulation data, providing researchers with efficient and accessible solutions for studying molecular structures and dynamics.

We now recommend installing MDAnalysis in your own local conda environment. This will give you an up-to-date version.

Any previously-installed central copies are old and unlikely to work.

Please follow the instructions below to install your own version.

Restrictions on use

There are no restrictions on accessing MDanalysis on the CSF. The source is the released under then GNU LGPL v2 license.

All users should cite their use of the software as per the MDAnalysis Citations Instructions.

Set up procedure

Please install your own copy of MDAnalysis in a conda environment, which will be stored in your home directory area.

# On the login node
module purge
module load apps/binapps/conda/miniforge3/26.3.2-3

# Create a conda env (choose whatever name you want - here we use mdanalysis)
conda create -n mdanalysis -y
conda activate mdanalysis 
mamba install -y mdanalysis
# If you want the test data
mamba install -y MDAnalysisTests

# Now test:
python -c 'import MDAnalysis as mda; print("Using MDAnalysis version", mda.__version__)'
Using MDAnalysis version 2.10.0

# When finished
conda deactivate

Running the application

Please do not run MDAnalysis jobs on the login node. Jobs should be submitted to the compute nodes via batch.

You will need to load the miniforge3 modulefile and activate your conda env:

#!/bin/bash
#SBATCH -p serial
#SBATCH -n 1         # 1-core job
#SBATCH -t 2-0       # Wallclock timelimit. 2-0 is 2 days, max permitted is 7-0.
module purge
module load apps/binapps/conda/miniforge3/26.3.2-3
conda activate mdanalysis
python my_mda_code.py

To submit the job, use sbatch myjobscript.

For help writing parallel analysis python code, please see the MDAnalysis documentation on parallel analysis.

You can the submit your job to the multicore_small or multicore partition:

#!/bin/bash
#SBATCH -p multicore_small    # Intel 32-core nodes (or use 'multicore' for AMD 168-core nodes)
#SBATCH -n 16                 # Number of cores
#SBATCH -t 1-0                # Wallclock timelimit. 1-0 is 1 day, max permitted is 7-0.

module purge
module load apps/binapps/conda/miniforge3/26.3.2-3
conda activate mdanalysis

# Ensure that your code uses the value of the $SLURM_NTASKS environment variable
# so that it knows how many cores your job has reserved. For example:
# import os
# ncores=os.getenv("SLURM_NTASKS"))
# Then pass this value to multiprocessing or dask.

python my_mda_code.py

Submit the jobscript using sbatch jobscript.

Further Information

Updates

None.

Last modified on October 9, 2026 at 5:18 pm by George Leaver