GithubHelp home page GithubHelp logo

sscake / hoomd-tf Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ur-whitelab/hoomd-tf

0.0 0.0 0.0 61.05 MB

A plugin that allows the use of Tensorflow in Hoomd-Blue for GPU-accelerated ML+MD

Home Page: https://hoomd-tf.readthedocs.io

License: MIT License

CMake 5.49% C++ 22.21% Cuda 4.69% Python 63.54% Makefile 0.23% CSS 2.91% HTML 0.94%

hoomd-tf's Introduction

HOOMD-TF

status Documentation Status Build Stats

This plugin enables the use of TensorFlow in a HOOMD-blue simulation to compute quantities like forces and collective variables and do learning while running a simulation. You may also use it without hoomd-blue to process trajectories via MDAnalysis. Please see here for documentation for install and usage instructions.

HOOMD-TF can be used for a variety of tasks such as online force-matching, online machine learning in HOOMD-blue simulations, and arbitrary collective variable calculations using TensorFlow tensor operations. Because both HOOMD-blue and TensorFlow are GPU-accelerated, HOOMD-TF was designed with speed in mind, and minimizes latency with a GPU-GPU communication scheme. Of particular interest, HOOMD-TF allows for online machine learning with early termination, rather than the more tradditional batch learning approach for MD+ML.

HOOMD-TF includes several utility functions as convenient built-ins, such as:

  • RDF calculation
  • EDS Biasing (See this paper)
  • Coarse-Grained simulation force matching

In addition to all these, the TensorFlow interface of HOOMD-TF makes implementing arbitrary ML models as easy as it is in TensorFlow, by exposing the HOOMD-blue neighbor list and particle positions to TensorFlow. This enables GPU-accelerated tensor calculations, meaning arbitrary collective variables can be treated in the TensorFlow model framework, as long as they can be expressed as tensor operations on particle positions or neighbor lists.

Tutorials

See example notebooks here to learn about what HOOMD-TF can do.

Prerequisites

The following packages are required to compile:

tensorflow >= 2.3
hoomd >= 2.6
tbb-devel (only for hoomd if installed with conda)

tbb-devel is required when using the HOOMD-blue conda release. It is not automatically installed when installing HOOMD-blue, so use conda install -c conda-forge tbb-devel to install. The TensorFlow version should be TensorFlow 2.3 release. It is recommended you install via pip.

Citation

Please use the following citation:

HOOMD-TF: GPU-Accelerated, Online Machine Learning in the HOOMD-blue Molecular Dynamics Engine. R Barrett, M Chakraborty, DB Amirkulova, HA Gandhi, G Wellawatte, and AD White (2020) Journal of Open Source Software doi: 10.21105/joss.02367

© HOOMD-TF Developers

hoomd-tf's People

Contributors

whitead avatar rainierbarrett avatar hgandhi2411 avatar geemi725 avatar mchakra2 avatar mehradans92 avatar dilnoza92 avatar ziyueyang37 avatar saraezzatali avatar oktak avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.