Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

investigation: requirements for removing mmtk dependency #7

Closed
franzlang opened this issue Jul 5, 2021 · 2 comments
Closed

investigation: requirements for removing mmtk dependency #7

franzlang opened this issue Jul 5, 2021 · 2 comments
Labels
dependency regarding a dependency of the code

Comments

@franzlang
Copy link
Collaborator

The mmtk module that MDANSE depends upon is only available for python 2 (e.g. see the documentation here:http://dirac.cnrs-orleans.fr/MMTK.html). investigate and document what is required to remove this dependency and create separate issues for any parts of the MDANSE code that need to be updated/changed.
A separate issue (#6) exists to investigate what would be required to move from a custom version of mmtk provided by the ILL to the standard version of the modules; such a move might be deemed pointless depending of the outcome of this investigation.

@franzlang franzlang added documentation Improvements or additions to documentation dependency regarding a dependency of the code and removed documentation Improvements or additions to documentation labels Jul 5, 2021
@RastislavTuranyi
Copy link
Collaborator

MMTK.Units is a collection of constants and should run without any issues with python 3. Therefore, the file can be copied to Externals/ as-is, or the relevant constants can be defined in the MDANSE file that needs them. Either way, the following file will have to be edited:

Classes that use MMTK.Units MDANSE.Framework.Jobs.Castep
MDANSE.Framework.Jobs.DCDConverter
MDANSE.Framework.Jobs.Density
MDANSE.Framework.Jobs.DL_POLY
MDANSE.Framework.Jobs.Discover
MDANSE.Framework.Jobs.Forcite
MDANSE.Framework.Jobs.Gromacs
MDANSE.Framework.Jobs.LAMMPS
MDANSE.Framework.Jobs.MaterialsStudio
MDANSE.Framework.Jobs.McStasVirtualInstrument
MDANSE.Framework.Jobs.Temperature
MDANSE.Framework.Jobs.VASP

@RastislavTuranyi
Copy link
Collaborator

The main problem with removing MMTK entirely is how to replace the in-memory representations of MD data. This is the primary usage of MMTK in MDANSE and coding it from scratch is essentially writing a new package in addition to altering all the affected MDANSE code (as documented in issue #6 ). Indeed, there exist multiple packages that serve this role. The replacement of MMTK with some of these has been investigated in issues #13 (MDAnalysis) and #14 (Mosaic). Using these seems like a much more reasonable way of removing MMTK than writing its functionality anew.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependency regarding a dependency of the code
Projects
None yet
Development

No branches or pull requests

3 participants