This repository contains the materials for the 3-day MDAnalysis 2021 PRACE/SURF workshop.
The workshop is structured in the following manner:
-
Workshop welcome presentation.
-
The first lecture covering the general structure, objects and workflows of MDAnalysis.
-
Practical complementing
Day1-Session1-Lecture/Lecture1_Molecules.ipynb
introducing the fundamental objects of MDAnalysis (e.g.Universe
,AtomGroup
,Atom
,Residues
,Segments
).
-
Lecture covering the main concepts of coordinate I/O in MDAnalysis.
-
Practical complementing
Day1-Session2-Lecture/session2-dynamics.ipynb
. This practical demonstrates the main objects linked to coordinate I/O, and demonstrates how they can be used for basic trajectory analysis.
-
Lecture covering both the
MDAnalysis.lib.distances
module and the MDAnalysis' analysis framework (e.g.AnalysisBase
).
-
day2session1-lib.distances.ipynb
Practical complementing
Day2-Session1-Lecture/lib.distances.pdf
. Demonstrates how to calculate hydrogen bonds using bothMDAnalysis.lib.distances
andMDAnalysis.analysis.hydrogenbonds
.
-
universe_creation_and_manipulation-lecture.ipynb
Lecture covering how to;
- Create, copy, and merge
Universe
objects - Manipulating positions (e.g. translate, rotate, PBC wrap/unwrap)
- Talk to other libraries through
MDAnalysis.converters
- Create, copy, and merge
-
Follow-up to
Day2-Session1-Lecture/lib.distances.pdf
andDay2-Session1-Practical/day2session1-lib.distances.ipynb
. This practical demonstrates how one could write their ownAnalysisBase
-derived analysis class.
-
Lecture convering various strategies for parallelizing MDAnalysis-based workflows.
-
Practical complementing
Day3-Session1-Lecture/MDAParallelization.pdf
. Here we demonstrate how both multiprocessing and MPI-based parallelism can be employed to analyze lipid headgroup orientation. Note: the MPI portion of this practical assumes access to SURF's LISA HPC platform, seeDay3-Session1-Practical/README.md
for more information.
-
Final lecture demonstrating some of the other features available in MDAnalysis such as auxiliary data reading, and on-the-fly transformations.
-
creating_and_manipulating_universes.ipynb
Practical complementing
Day2-Session2-Lecture/universe_creation_and_manipulation-lecture.ipynb
This practical demonstrates how to seemlessly interface RDKit and OpenMM with MDANalysis.
-
MDAnalysis_Workshop_final_no_logo.pdf
SURF / PRACE workshop closing remarks.
Instructions for setting up your environment to run this workshop locally
are provided in INSTALL.md
.
A full list of the required Python packages can be seen inside environment.yml
.
Note: this workshop uses the beta release of MDAnalysis 2.0.0.
The course assumes that attendees have a working proficiency in using Jupyter notebooks, Python (especially the NumPy library), and the bash shell.
The tutorial materials can be accessed online via binder. To launch the binder instance, click here.
The code examples in this repository are licensed under the GPL version 2.0 license. Non-code content is licensed under the Creative Commons Attribution-ShareAlike 4.0 International license. The MDAnalysis logo and its derivatives are licensed under the Creative Commons Attribution-NoDerivs 3.0 Unported License.
Please see AUTHORS.md
for a list of contributors to the workshop
materials.
Special acknowlegements go to the 2018 MDAnalysis Workshop and Hackathon which these materials build on.