Software Suite for Advanced General Ensemble Simulations
SSAGES (Software Suite for Advanced General Ensemble Simulations) is an open-source, engine agnostic, C++11 based advanced sampling package. It is designed to be easy to use, extendable and extremely versatile. It is currently pre-beta, meaning that there are many rough edges, but we are working rapidly to expand its features and fix any bugs. Keep an eye on this page for future updates and see below on how to contribute!
To view the full changelog history, refer to HISTORY.
SSAGES currently works with multiple molecular dynamics engines. It contains a variety of collective variables (CVs) and advanced sampling methods.
The first step is to clone the repository locally.
$ git clone https://github.com/SSAGESproject/SSAGES.git
SSAGES uses a CMake build system. It also requires the use of a support MD engine. For example, to compile with LAMMPS, execute the following
$ cd SSAGES
$ mkdir build && cd build
$ cmake -DLAMMPS_SRC=/path/to/lammps/src ..
$ make
This will build a SSAGES executable which will reside in the build directory.
If you want to use a specific compiler (or if your default compiler is not supported),
set the C and C++ compilers with CMAKE_C_COMPILER
and CMAKE_CXX_COMPILER
, respectively.
For example, to use gcc/g++, replace the CMake command with
$ cmake -DLAMMPS_SRC=/path/to/lammps/src -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ ..
If you want to compile and run unit and integration tests, replace the cmake command in the example above with
$ cmake -DLAMMPS_SRC=/path/to/lammps/src -DBUILD_TESTS=ON ..
A requisite underlying MPI library also required to run SSAGES. On recent Debian based systems using OpenMPI, the requirement can be installed via:
$ sudo apt-get install libopenmpi-dev openmpi-bin
For more detail on the build system, please check the documentation.
To build the documentation, refer to Documentation README.
SSAGES is currently in pre-beta. That means there may be known issues that are not yet resolved. Major issues are listed here.
Feel free to fork this project on GitHub. Any pull-requests, feature requests or other form of contributions are welcome.