GROMACS

Gromacs (http://gromacs.org) is available at the CAC in a parallel solver. At this time no visualization is available at the CAC. Gromacs is available in a single precision (recommended) and double precision for those who need it. All commands for a double precision run will be sufixed with _d. For example mdrun will become mdrun_d, grompp will become grompp_d, etc.

To use Gromacs run:

module load gromacs
A sample PBS file follows:
#!/bin/sh
#PBS -N gromacs
#PBS -l nodes=5:ppn=2,walltime=100:00:00
#PBS -M uniquename@umich.edu
#PBS -m bae
#PBS -j oe
#PBS -V

echo "i ran on:"
cat $PBS_NODEFILE

#move to input
cd ~/gromacs/inputs/

#run gromacs (mdrun or mdrun_d)
mpirun -np CPUS mdrun

Gromacs requires that inputs be preped before ran. You can ether add these commands before your mpirun or you can run them (they take very little time) before you submit your job. The most important command is grompp.

grompp preps your input for a parallel run. For the best performance run grommp like so:

grompp -sort -shuffle -np 10 (if going to run on 10 cpus)
This will organize all the a large system for a parallel run.


When using -shuffle the trajectory will need to deshuffled when the run is compleated.
trjconv -f traj.trr -n deshuf -o btraj.trr

Note, do not use parallel gromacs if simulating a single protein! This will run slower than a serial run (mpirun -np 1 mdrun). Speed-ups do exist for large single proteins in a single node with multiple cpus but not for more than one node multiple cpus. In this case request resources like:

#PBS -l nodes=1:ppn=2
and run on only 2 cpus. Any more and your simulation will slow wasting your time and wasting resources. For more information look at the grommp man page. (man grompp)

For systems with any molecules or membrane systems Gromacs scales very well.

The following is a list of all Gromacs commands. Most are available in the _d version also. Some may not work if you have questions email us at: cac-support@umich.edu

anadock
average
completion.bash
completion.csh
completion.zsh
editconf
eneconv
ffscan
g_anaeig
g_analyze
g_angle
g_bond
g_bundle
g_chi
g_cluster
g_clustsize
g_confrms
g_covar
genbox
genconf
g_enemat
g_energy
genion
genpr
g_filter
g_gyrate
g_h2order
g_hbond
g_helix
g_lie
g_mdmat
g_mindist
g_morph
g_msd
gmxcheck
gmxdump
GMXRC
GMXRC.bash
GMXRC.csh
GMXRC.zsh
g_nmeig
g_nmens
g_nmtraj
g_order
g_potential
g_rama
g_rdf
g_rms
g_rmsdist
g_rmsf
grompp
g_rotacf
g_saltbr
g_sas
g_sgangle
g_sham
g_sorient
g_tcaf
g_traj
g_velacc
g_wham
luck
make_edi
make_ndx
mdrun
mk_angndx
pdb2gmx
protonate
tpbconv
trjcat
trjconv
trjorder
wheel
x2top
xpm2ps