-
Notifications
You must be signed in to change notification settings - Fork 669
GSoC 2018 Project Ideas
The currently proposed projects are:
Or work on your own idea! Get in contact with us to propose an idea and we will work with you to flesh it out into a full project. Raise an issue in the Issue Tracker or contact us via the developer Google group.
You can find the list of all available mentors for MDAnalysis here.
Mentors: Richard, Jonathan Intensity: Hard
Analysis of molecular dynamics simulations typically involves calculations of based upon atoms which are spatially close to each other. For example a radial distribution function is often only interesting up to distances of around 1.6 nm. The naive approach to calculate this is to calculate the distance between each pair of atoms, however as the size of the system grows the number of useful pair distances decreases while the computational cost scales as N^2.
To greatly improve the efficiency of this operation, we can first decompose the total simulation volume into smaller cells. We can then calculate the distances between atom pairs in neighbouring cells. If atoms are not in neighbouring cells we already know that the distance is to large to be interesting. A theoretical description of this algorithm can be found in this book Appendix F
One domain decomposition algorithm is cell grids.
In this project you would integrate the cell grid algorithm into MDAnalysis.
Mentors: Richard, Jonathan Intensity: Easy
The analysis and visualization of molecular simulation trajectories often requires to transform the raw coordinates. Such transformations can be about centering a molecule in the box, aligning a molecule, or prevent molecular complexes to be broken through the periodic box. Frequently, it is not one, but multiple transformations that must be applied to each frame. Some of these transformations are implemented in MDAnalysis, but they must be applies manually and often saved on disk before analyses can be used, or before the trajectory can be visualize with a third party library such as nglview.
The student will be asked to implement a way to declare a transformation pipeline that will be applied on-the-fly on a trajectory at reading time. See issue 786 for the discussion on the feature.