deepmodeling / DMFF

DMFF (Differentiable Molecular Force Field) is a Jax-based python package that provides a full differentiable implementation of molecular force field models.
GNU Lesser General Public License v3.0
156 stars 43 forks source link

[Feature Request] Support for machine learning force field in OpenMM DMFF plugin #152

Open tucy22 opened 1 year ago

tucy22 commented 1 year ago

Summary

Provide support for machine learning (ML) force field in OpenMM DMFF plugin. Present version does not yet support well, such as EANN and SGNN models.

Motivation

The OpenMM DMFF plugin uses _savedmff2tf.py script to transform a JAX model trained in DMFF to a tensorflow model used for OpenMM simulations. In this module, both classical and ADMP force field are considered. While the usage of ML force field in ther transformation is not clear. If ML force field are defined in XML file (referenced as https://github.com/deepmodeling/DMFF/blob/master/docs/user_guide/4.4MLForce.md), there will occur errors in running _savedmff2tf.py script (detailed error message can be browsed in Further Information part). The used ML models are EANN and SGNN.

Suggested Solutions

  1. Revise the potential generation function when using ML, and consider the situation of using ADMP and ML simultaneously.
  2. Provide a specific instruction for the usage of ML forces in OpenMM DMFF Plugin docs.

Further Information, Files, and Links

reportbug.zip test.zip Above files record two different errors when using ML in this plugin.

dingye18 commented 11 months ago

Fixed in PR #154