Navigation: Documentation / Installation


The PMFLib code is written in Fortran and C/C++ and is split into several git repositories hosted on GitHub. PMFLib itself contains a limited molecular dynamics engine, which requires external application providing potential energy and its gradient. Therefore, this engine is only suitable for testing. For production MD simulations, it is necessary to employ PMFLib integrated into another MD engine. Currently, sander and pmemd from AMBER are supported.

PMFLib

  • pmflib - pmflib main library and utilities
  • pmflib-build - infrastructure for building of PMFLib

sander-pmf

pmemd-pmf

The pmemd is not open source code, thus upon a request, we provide patches for connection with PMFLib.

Installation of the reference MD code (sander.PMF)

Pre-requisities

This procedure is tested on Ubuntu 20.04 LTS but other compatible distributions should work as well. First, install the following system packages:

$ sudo apt-get install git cmake gcc g++ gfortran openmpi-bin 

Compile and Install Sequential Version

This procedure will compile and install a sequential version of sander.PMF and PMFLib utilities into the $HOME/bin/sander-pmf/single directory.

$ mkdir -p $HOME/bin/sander-pmf/single
$ git clone --recursive https://github.com/kulhanek/sander-pmf-build.git sander-pmf-single
$ cd sander-pmf-single
$ ./build-utils/00.init-links.sh
$ ./01.pull-code.sh
$ cmake -DCMAKE_INSTALL_PREFIX=/path/to/sander-pmf/single .
$ make
$ make install

Compile and Install Parallel Version

This procedure will compile and install a parallel version of sander.PMF and sequential version of PMFLib utilities into the $HOME/bin/sander-pmf/para directory.

$ mkdir -p $HOME/bin/sander-pmf/para
$ git clone --recursive https://github.com/kulhanek/sander-pmf-build.git sander-pmf-para
$ cd sander-pmf-para
$ ./build-utils/00.init-links.sh
$ ./01.pull-code.sh
$ export CC=mpicc
$ export CXX=mpic++
$ export FC=mpif90
$ cmake -DCMAKE_INSTALL_PREFIX=/path/to/sander-pmf/para .
$ make
$ make install