Branches and releases
Several branches and tags are stored on the git repository.
v2.X correspond to release branches.
Master branch may contain non tested features and is not expected to be used by non-developers. It typically contains features that will be available on the next release.
v2.XbY correspond to beta releases, use it with care.
v2.X.Y correspond to official releases, use the latest available.
In addition, the repository contains a number of other branches related to specific features.
Please contact the developers that are committing on those branches before basing your work
there, since they might contain temporary work and might be rebased later.
For instance, branch
testdoc is setup so as to push a test copy of the manual
and is often force pushed.
To report problems found on beta or official releases, use the normal
mailing list. Please state exactly which version you are using.
To report problems found on
master branch, use the
firstname.lastname@example.org mailing list.
This is also the correct place for discussions about new features etc.
When reporting please provide the git hash (you can obtain it with
git rev-parse HEAD).
Below you find the status on GitHub Actions for the release branches.
|Branch||Status||First stable release (year)||Still supported|
Here's a description of the content of each file and directory in the root PLUMED directory.
CHANGES : change log COPYING.LESSER : license Makefile : makefile Makefile.conf.in : template configuration makefile PEOPLE : list of authors README.md : this file VERSION : version file astyle : a local version of astyle, used to format code configure : configuration script configure.ac : configuration script (autoconf) developer-doc : developer documentation docker : directory where Docker is generated macports : directory where Portfiles are generated patches : patch scripts python : python stuff regtest : regression tests, including reference results release.sh : developer utility to publish releases scripts : shell tools sourceme.sh.in : template configuration script src : source code test : examples user-doc : user documentation vim : directory where vim syntax is generated
- GNU make.
- C/c++ compiler (c++11 support is required as of version 2.4).
- A modern version of the
patchcommand line tool.
- Support for POSIX library
Suggested software (libraries are checked by
./configure and enabled if available):
- MPI library to run parallel simulations. It should be the same library used by your MD code.
- Optimized blas and lapack libraries. They are automatically replaced by an internal version if not available.
- VMD molfile plugins to read arbitrary file formats. They are automatically replaced by an internal version supporting a few formats if not available.
- Zlib library to use compressed data files.
- Doxygen to build user manual. Doxygen might need the following packages:
- Latex to build the pdf user manual.
- Graphviz to show class hierarchy in developer manual.
Quick compilation instructions
Extensive installation instructions are in the user documentation. Quick instructions:
./configure --prefix=$HOME/opt make make doc # optional make test # optional
User documentation can be found at
Developer documentation can be found at
Pre-compiled documentation is available online, so this is only required
if you are working with a modified version of the code!
In order to run PLUMED without installing it you should type
source sourceme.sh. However,
we recommend installing PLUMED.
To install it in
$HOME/opt (directory should be set during
umask 022 make install
Now you will be able to run plumed using e.g.
If you compiled your own documentation, paths to the installed documentation can be found with command
plumed info --user-doc.
A sample modulefile with environment variable will be placed in
$HOME/opt/lib/plumed/src/lib/modulefile. This can be useful if you want to
install multiple PLUMED versions side by side and select them with env modules.