Browse the tests
The codes listed below below were tested on September 24, 2024. PLUMED-TESTCENTER tested whether the current and development versions of the code can be used to complete the tests for each of these codes.
Name of Program | Short description | Compiles | Passes tests |
---|---|---|---|
gromacs | A free and open-source software suite for high-performance molecular dynamics and output analysis. | ||
lammps | The Large-scale Atomic/Molecular Massively Parallel Simulator. An MD code that is often used for materials modelling. | ||
simplemd | A Lennard Jones molecular dynamics code that is part of PLUMED. | ||
i-pi | A universal force engine interface that can be used to sample thermodynamic ensembles once it is coupled with a function for calculating the energies and forces | ||
quantum_espresso | An integrated suite of Open-Source computer codes for electronic-structure calculatiosn and materials modelling at the nanoscales that uses density-functional theory, plane waves and pseudopotentials. |
Building PLUMED
When the tests above are run PLUMED is built using the following bash script.
#! /bin/bash
set -e
set -x
suffix=""
version=""
repo=https://github.com/plumed/plumed2.git
program_name=plumed
for opt
do
case "$opt" in
(version=*) version="${opt#version=}" ;;
(suffix=*)
suffix="--program-suffix=${opt#suffix=}"
program_name="plumed${opt#suffix=}"
;;
(repo=*) repo="${opt#repo=}" ;;
(*) echo "unknown option $opt" ; exit 1 ;;
esac
done
cd "$(mktemp -dt plumed.XXXXXX)"
git clone $repo
cd plumed2
if [ -n "$version" ] ; then
echo "installing plumed $version"
else
version=$(git tag --sort=-creatordate | grep '^v2\.[0-9][0-9]*\.[0-9][0-9]*' | head -n 1 )
echo "installing latest stable plumed $version"
fi
git checkout $version
hash=$(git rev-parse HEAD)
if test -f $HOME/opt/lib/$program_name/$hash
then
echo "ALREADY AVAILABLE, NO NEED TO REINSTALL"
else
rm -fr $HOME/opt/lib/$program_name
rm -fr $HOME/opt/bin/$program_name
rm -fr $HOME/opt/include/$program_name
rm -fr $HOME/opt/lib/lib$program_name.so*
./configure --prefix=$HOME/opt --enable-modules=all --enable-boost_serialization --enable-fftw $suffix --enable-libtorch LDFLAGS=-Wl,-rpath,$LD_LIBRARY_PATH
make -j 5
make install
touch $HOME/opt/lib/$program_name/$hash
fi