ISISNeutronMuon / MDANSE

MDANSE: Molecular Dynamics Analysis for Neutron Scattering Experiments
https://www.isis.stfc.ac.uk/Pages/MDANSEproject.aspx
GNU General Public License v3.0
22 stars 5 forks source link

investigation: replacing MMTK with MDAnalysis #13

Closed RastislavTuranyi closed 2 years ago

RastislavTuranyi commented 3 years ago

MMTK is a python2-only module, and so it cannot be used as-is when MDANSE is rewritten in python 3. One way to handle this is to replace it with another module whose development is not ceased and works with python 3. One such module is MDAnalysis. One of its advantages is that it is capable of reading a variety of formats, potentially allowing MDANSE to drop the classes that convert various file formats into the format required by MMTK.

RastislavTuranyi commented 3 years ago

Of the inputs currently supported by MDANSE, MDAnalysis has official readers only for the following:

Therefore, either the existing code would have to be changed and updated, or custom readers for the MDAnalysis would have to be written for the following inputs:

RastislavTuranyi commented 3 years ago

MDAnalysis has some built-in functions that would greatly simply some of the functionality that MDANSE provides:

MDAnalysis seems to be lacking the following functionalities that MDANSE uses:

EDIT: making a configuration contiguous is possible with MDAnalysis using on-the-fly workflows.

RastislavTuranyi commented 3 years ago

Overall, from reviewing MDANSE code, I believe that it is feasible to replace MMTK with MDAnalysis, though all affected files (ie. all files that use MMTK), will likely have to be rewritten to varying degrees. Of course, this belief was obtained from evaluating the code only, so to be completely certain that the substitution is possible, I would have to attempt performing it.

RastislavTuranyi commented 2 years ago

This will not be used, instead the replacement for MMTK will be bespoke, as detailed in #64.