Wiki
Clone wikiMIST / Running GROMACS with MIST
This section details the steps required to run MD in GROMACS with the MIST library.
Page Table of Contents
Running GROMACS with MIST
There is extensive help on using GROMACS on the GROMACS website. However, this section provides a quick start for using GROMACS with the MIST library. It is not intended to replace a good working knowledge of GROMACS and its uses.
Using grompp
The grompp
tool is a GROMACS preprocessor that reads in simulation parameters from an .mdp
file, a molecular topology .top
file, and from these generates a binary input that can be used as the input for GROMACS. You can see example files in the MIST repository:
When using the MIST library, not all the standard GROMACS functionality can be used. We recommend that you use GROMACS without MIST if you need any of this particular functionality and switch to using MIST with your preferred integrator for production runs. If you want to use MIST then you will not be able to use the following GROMACS functionalities:
- Ensembles: as no temperature or pressure coupling is supported when using MIST please ensure that in your mdp options file that
tcoupl=no
andpcoupl=no
. NVT dynamics can be performed using thelangevin
integrator in MIST. - Constraints: constraints are not currently supported which removes the ability to use algorithms such as SHAKE. To ensure your topology file can be used add the line
#define FLEXIBLE
to the top of the file. Bond constraints may be enabled in MIST for some integrators by specifyingconstraints all-bonds
. We are going to run the modified GROMACS file by using an Alanine Dipeptide system. Outside the git mist repository you have cloned:
#!unix mkdir mist_test cd mist_test wget https://bitbucket.org/extasy-project/mist/raw/master/examples/gromacs/aladip/grompp.mdp # MD parameters file wget https://bitbucket.org/extasy-project/mist/raw/master/examples/gromacs/aladip/topol.top # Topology file wget https://bitbucket.org/extasy-project/mist/raw/master/examples/gromacs/aladip/input.gro # Initial coords
First, change line 6 of the grompp.mdp
file:
integrator = md
integrator = mist
For clarity in what follows we assume that the GROMACS binaries are in your search path, otherwise you will have to provide the full path name to each executable.
Then use the grompp
tool to produce a .tpr
file (more on tpr). Specifying the options -f
(input .mdp
file), -p
(input topology file), -c
(input structure file) and -o
(name of the output .tpr
file) allow non-default filenames to be used:
gmx grompp -f grompp.mdp -p topol.top -c input.gro -o run.tpr
NB: always recreate your tpr file before using MIST as using a tpr file created using a version of GROMACS without MIST, but then running with MIST, will result in errors.
This should produce the binary run.tpr
as well as an output file mdout.mdp
which logs the chosen parameters. If grompp
finished correctly, the mdout.mdp
file should contain the line:
integrator = mist
Second, you need to create a mist.params
file in this directory. The basic file can contain:
# Select which integration algorithm to use integrator verlet # Parameters for the integrator # none
verlet
can be replaced by your choice of integrator. A list of the available integrators and parameters required for any integrators is discussed in the next section.
The next step is to run your MD job, using the MIST library and the correct tpr file:
gmx mdrun -nt 1 -s run.tpr -mp topol.top
The -s
and -mp
flags allow user-specified filenames for the tpr and top files, -nt
sets the number of threads (only available if GROMACS was built using -DGMX_OPENMP=ON).
You should see output like (excluding the banner info at the top of the output):
Command line: gmx mdrun -nt 1 -s run.tpr -mp topol.top Reading file run.tpr, VERSION 5.0.2 (single precision) Can not increase nstlist because an NVE ensemble is used Using 1 MPI thread Using 1 OpenMP thread starting mdrun 'Protein t= 0.00000' 10 steps, 0.0 ps. MIST: Input file ok. MIST: Using Velocity Verlet Integrator MIST: Constraints not specified, assuming none. MIST: Initialised MIST Library Writing final coordinates. MIST: Parameters freed ok. MIST: Cleaned up MIST Library Core t (s) Wall t (s) (%) Time: 0.008 0.051 15.8 (ns/day) (hour/ns) Performance: 18.493 1.298 gcq#219: "Let's Go Hang Out In a Mall" (LIVE)
Running GROMACS on ARCHER
ARCHER is the UK national supercomputing service. To run GROMACS with MIST in parallel on ARCHER, the batch script should contain:
export OMP_NUM_THREADS=X aprun -n 1 -d X ./gmx mdrun -ntmpi 1 -ntomp X -s myFile.tpr -mp water.top
Note: GROMACS has an internal concept called a ‘thread-mpi’ where threads can be used like MPI processes and do a domain decomposition, which MIST does not support.
Up: Home; Previous: Running LAMMPS with MIST; Next: Running Amber with MIST
Updated