gromacs - molecular dynamics simulation suite (the Groningen Machine for Chemical Simulations) is a full-featured suite of programs to perform molecular dynamics simulations - in other words, to simulate the behavior of systems with hundreds to millions of particles, using Newtonian equations of motion. It is primarily used for research on proteins, lipids, and polymers, but can be applied to a wide variety of chemical and biological research questions. The following commands make up the GROMACS suite. Please refer to their individual man pages for further details.

Generating topologies and coordinates
pdb2gmx converts pdb files to topology and coordinate files g_x2top generates a primitive topology from coordinates editconf edits the box and writes subgroups genbox solvates a system genion generates mono atomic ions on energetically favorable positions genconf multiplies a conformation in 'random' orientations g_protonate protonates structures

Running a simulation
grompp makes a run input file tpbconv makes a run input file for restarting a crashed run mdrun performs a simulation, do a normal mode analysis or an energy minimization mdrun_mpi performs a sim across multiple CPUs or systems

Viewing trajectories
ngmx displays a trajectory g_highway X Window System gadget for highway simulations g_nmtraj generate a virtual trajectory from an eigenvector

Processing energies
g_energy writes energies to xvg files and displays averages g_enemat extracts an energy matrix from an energy file mdrun with -rerun (re)calculates energies for trajectory frames

Converting files
editconf converts and manipulates structure files trjconv converts and manipulates trajectory files trjcat concatenates trajectory files eneconv converts energy files xpm2ps converts XPM matrices to encapsulated postscript (or XPM) g_sigeps convert c6/12 or c6/cn combinations to and from sigma/epsilon

Tools
make_ndx makes index files mk_angndx generates index files for g_angle gmxcheck checks and compares files gmxdump makes binary files human readable g_traj plots x, v and f of selected atoms/groups (and more) from a trajectory g_analyze analyzes data sets trjorder orders molecules according to their distance to a group g_filter frequency filters trajectories, useful for making smooth movies g_lie free energy estimate from linear combinations g_dyndom interpolate and extrapolate structure rotations g_morph linear interpolation of conformations g_wham weighted histogram analysis after umbrella sampling xpm2ps convert XPM (XPixelMap) file to postscript g_sham read/write xmgr and xvgr data sets g_spatial calculates the spatial distribution function (more control than g_sdf) g_sdf calculates the spatial distribution function (faster than g_spatial) g_select selects groups of atoms based on flexible textual selections g_tune_pme time mdrun as a function of PME nodes to optimize settings

Distances between structures
g_rms calculates rmsd's with a reference structure and rmsd matrices g_confrms fits two structures and calculates the rmsd g_cluster clusters structures g_rmsf calculates atomic fluctuations

Distances in structures over time
g_mindist calculates the minimum distance between two groups g_dist calculates the distances between the centers of mass of two groups g_bond calculates distances between atoms g_mdmat calculates residue contact maps g_polystat calculates static properties of polymers g_rmsdist calculates atom pair distances averaged with power -2, -3 or -6

Mass distribution properties over time
g_traj plots x, v, f, box, temperature and rotational energy g_gyrate calculates the radius of gyration g_msd calculates mean square displacements g_polystat calculates static properties of polymers g_rotacf calculates the rotational correlation function for molecules g_rdf calculates radial distribution functions g_rotmat plots the rotation matrix for fitting to a reference structure g_vanhove calculates Van Hove displacement functions

Analyzing bonded interactions
g_bond calculates bond length distributions mk_angndx generates index files for g_angle g_angle calculates distributions and correlations for angles and dihedrals g_dih analyzes dihedral transitions

Structural properties
g_hbond computes and analyzes hydrogen bonds g_saltbr computes salt bridges g_sas computes solvent accessible surface area g_order computes the order parameter per atom for carbon tails g_principal calculates axes of inertia for a group of atoms g_rdf calculates radial distribution functions g_sdf calculates solvent distribution functions g_sgangle computes the angle and distance between two groups g_sorient analyzes solvent orientation around solutes g_spol analyzes solvent dipole orientation and polarization around solutes g_bundle analyzes bundles of axes, e.g. helices g_disre analyzes distance restraints g_clustsize calculate size distributions of atomic clusters g_anadock cluster structures from Autodock runs

Kinetic properties
g_traj plots x, v, f, box, temperature and rotational energy g_velacc calculates velocity autocorrelation functions g_tcaf calculates viscosities of liquids g_kinetics calculate kinetic rate constants (experimental) g_bar calculates free energy difference estimates through Bennett's acceptance ratio g_current calculate current autocorrelation function of system g_vanhove compute Van Hove correlation function g_principal calculate principal axes of inertion for a group of atoms

Electrostatic properties
genion generates mono atomic ions on energetically favorable positions g_potential calculates the electrostatic potential across the box g_dipoles computes the total dipole plus fluctuations g_dielectric calculates frequency dependent dielectric constants g_current calculate current autocorrelation function of system g_spol analyze dipoles around a solute

Protein specific analysis
do_dssp assigns secondary structure and calculates solvent accessible surface area g_chi calculates everything you want to know about chi and other dihedrals g_helix calculates everything you want to know about helices g_helixorient calculate coordinates/directions of alpha-helix components g_rama computes Ramachandran plots g_xrama shows animated Ramachandran plots wheel plots helical wheels

Interfaces
g_potential calculates the electrostatic potential across the box g_density calculates the density of the system g_order computes the order parameter per atom for carbon tails g_h2order computes the orientation of water molecules g_bundle analyzes bundles of axes, e.g. transmembrane helices g_membed embeds a protein into a lipid bilayer

Covariance analysis
g_covar calculates and diagonalizes the covariance matrix g_anaeig analyzes the eigenvectors make_edi generate essential-dynamics input file from g_covar output

Normal modes
grompp makes a run input file mdrun finds a potential energy minimum mdrun calculates the Hessian g_nmeig diagonalizes the Hessian make_edi generates essential-dynamics input file from g_nmeig analysis g_anaeig analyzes the normal modes g_nmens generates an ensemble of structures from the normal modes Consult the manual at <http://www.gromacs.org/content/view/27/42/> for an introduction to molecular dynamics in general and GROMACS in particular, as well as an overview of the individual programs. The shorter HTML reference and GROMACS FAQ are available in /usr/share/doc/gromacs/html/ . Tutorial files and other miscellaneous references are stored in /usr/share/gromacs/ . The development of GROMACS is mainly funded by academic research grants. To help us fund development, the authors humbly ask that you cite the GROMACS papers: H.J.C. Berendsen, D. van der Spoel and R. van Drunen. GROMACS: A message-passing parallel molecular dynamics implementation. Comp. Phys. Comm. 91, 43-56 (1995) Erik Lindahl, Berk Hess and David van der Spoel. GROMACS 3.0: A package for molecular simulation and trajectory analysis. J. Mol. Mod. 7, 306-317 (2001) B. Hess, C. Kutzner, D. van der Spoel, and E. Lindahl. GROMACS 4: Algorithms for Highly Efficient, Load-Balanced, and Scalable Molecular Simulation. J. Chem. Theory Comput. 4, 3, 435-447 (2008), <http://dx.doi.org/10.1021/ct700301q> Current developers: David van der Spoel <spoel@gromacs.org>
Berk Hess <hess@gromacs.org>
Erik Lindahl <lindahl@gromacs.org> A full list of present and former contributors is available at <http://www.gromacs.org> This manual page is largely based on the GROMACS online reference, and was prepared in this format by Nicholas Breen <nbreen@ofb.net>. GROMACS has no major known bugs, but be warned that it stresses your CPU more than most software. Systems with slightly flaky hardware may prove unreliable while running heavy-duty simulations. If at all possible, please try to reproduce bugs on another machine before reporting them.