Skip to main content

Reference implementation of the GDML and sGDML force field models.

Project description

Symmetric Gradient Domain Machine Learning (sGDML)

For more details visit: http://sgdml.org/

Documentation can be found here: http://sgdml.org/doc/

Requirements:

  • Python 2.7/3.7
  • NumPy (>=1.13.0)
  • SciPy
  • PyTorch (optional)

Getting started

Stable release

Most systems come with the default package manager for Python pip already preinstalled. Install sgdml by simply calling:

pip install sgdml

The sgdml command-line interface and the corresponding Python API can now be used from anywhere on the system.

Development version

(1) Clone the repository

git clone https://github.com/stefanch/sGDML.git

cd sGDML

...or update your existing local copy with

git pull origin master

(2) Install

pip install -e .

Using the flag --user, we can tell pip to install the package to the current users's home directory, instead of system-wide. This option might require you to update your system's PATH variable accordingly.

...with GPU support

For GPU support, the optional PyTorch dependency needs to be installed.

pip install -e .[torch]

Reconstruct your first force field

Download one of the example datasets:

sgdml-get dataset ethanol_dft

Train a force field model:

sgdml all ethanol_dft.npz 200 1000 5000

Query a force field

import numpy as np
from sgdml.predict import GDMLPredict
from sgdml.utils import io

r,_ = io.read_xyz('examples/geometries/ethanol.xyz') # 9 atoms
print r.shape # (1,27)

model = np.load('models/ethanol.npz')
gdml = GDMLPredict(model)
e,f = gdml.predict(r)
print e.shape # (1,)
print f.shape # (1,27)

...with GPU support

Setting use_torch=True when instantiating the predictor redirects all calculations to PyTorch.

gdml = GDMLPredict(model, use_torch=True)

NOTE: PyTorch must be installed with GPU support, otherwise the CPU is used. However, we recommend performing CPU calculations without PyTorch for optimal performance.

References

  • [1] Chmiela, S., Tkatchenko, A., Sauceda, H. E., Poltavsky, I., Schütt, K. T., Müller, K.-R., Machine Learning of Accurate Energy-conserving Molecular Force Fields. Science Advances, 3(5), e1603015 (2017)
    10.1126/sciadv.1603015

  • [2] Chmiela, S., Sauceda, H. E., Müller, K.-R., & Tkatchenko, A., Towards Exact Molecular Dynamics Simulations with Machine-Learned Force Fields. Nature Communications, 9(1), 3887 (2018)
    10.1038/s41467-018-06169-2

  • [3] Chmiela, S., Sauceda, H. E., Poltavsky, I., Müller, K.-R., & Tkatchenko, A., sGDML: Constructing Accurate and Data Efficient Molecular Force Fields Using Machine Learning. Computer Physics Communications, 240, 38-45 (2019) 10.1016/j.cpc.2019.02.007

  • [4] Sauceda, H. E., Chmiela, S., Poltavsky, I., Müller, K.-R., & Tkatchenko, A., Molecular Force Fields with Gradient-Domain Machine Learning: Construction and Application to Dynamics of Small Molecules with Coupled Cluster Forces. The Journal of Chemical Physics, 150, 114102 (2019) 10.1063/1.5078687

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sgdml-0.3.2.tar.gz (47.8 kB view hashes)

Uploaded Source

Built Distribution

sgdml-0.3.2-py2-none-any.whl (58.2 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page