Coder Social home page Coder Social logo

pysages's Introduction


Documentation   GitHub Actions   GitHub Actions   Trunk

PySAGES (Python Suite for Advanced General Ensemble Simulations) is a Python implementation of SSAGES with support for GPUs.

NOTICE: This is in early stages of development. Expect breaking changes.

Installation

Currently, there is only support for HOOMD-blue and OpenMM, but gradual support for other molecular dynamics engines is planned (for instance, for all engines already supported by the original SSAGES).

You first need to install one of the following plugins depending on your molecular dynamics engine:

PySAGES also depends on JAX, follow their installation guide to set it up. NOTE: make sure you have jaxlib installed before using PySAGES. Depending on your local setup, you will have to install the jaxlib CPU version or the CUDA compatible flavor.

To test GPU support HOOMD-blue, HOOMD-dlext and JAX need to be built or installed with CUDA support.

Our installation tutorial on Google Colab enable you to see how PySAGES, HOOMD-blue and OpenMM can be built and installed into such environment. Install Env

Usage

PySAGES provide a straightforward interface to setup Collective Variables and Enhanced Sampling methods in your MD simulations. See the documentation to learn more.

We provide ready-to-go examples for common methods. Checkout out the examples subfolder to look at different script and notebook examples. These include pre-set simulations and a tutorial on how to install PySAGES along with the supported MD engines.

Development

We believe in good software engineering and collaboration. As an open-source software we welcome all contributions. To ease collaboration we use trunk as a development tool free for open-source software. This includes version-checked linters that can be run automatically. We ship a launcher for trunk with this repo ./trunk, no installation required. For details about how to use ./trunk fmt to format existing code into this style and ./trunk check to verify a consistent code style, check out the trunk documentation page.

Trunk githooks

For the development of this repo, we highly recommend to activate trunk's interaction with githooks. The ensures, that any code committed and pushed fulfills the coding standards. (Otherwise a CI test will fail on the repo side PRs.) This feature requires to be activated by developers on each machine.

./trunk git-hooks install

pysages's People

Contributors

pabloferz avatar innocentbug avatar pre-commit-ci[bot] avatar ricalessandri avatar gustavor101 avatar sivadasetty avatar

Stargazers

 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.