GROMACS is a molecular dynamics package mainly designed for simulations of proteins, lipids, and nucleic acids. Its command line interface and python API are designed to make simulations on such molecules easy to setup, run, and analyze.

GROMACS is a free open-source package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles.

It is primarily designed for biochemical molecules like proteins, lipids and nucleic acids that have a lot of complicated bonded interactions, though many groups also use it for research on non-biological systems, e.g. polymers. Like most molecular dynamics software, its engine allows parallelization on CPU and GPU.

There is no scripting language - all programs use a simple interface with command line options for input and output files. GROMACS also comes with a large selection of flexible tools for trajectory analysis. It also comprises gmxapi Python Package, which allows molecular simulation and analysis work to be staged and run from Python. All these features are referenced and explained in GROMACS online documentation.


Starting from a Protein Data Bank (pdb) file, the whole process of solvation, ionization and minimization of the system through command lines would be:

gmx pdb2gmx -f 1AKI.pdb -o 1AKI_processed.gro -water spce
gmx editconf -f 1AKI_processed.gro -o 1AKI_newbox.gro -c -d 1.0 -bt cubic
gmx solvate -cp 1AKI_newbox.gro -cs spc216.gro -o 1AKI_solv.gro -p
gmx grompp -f ions.mdp -c 1AKI_solv.gro -p -o ions.tpr
gmx genion -s ions.tpr -o 1AKI_solv_ions.gro -p -pname NA -nname CL -neutral
gmx grompp -f minim.mdp -c 1AKI_solv_ions.gro -p -o em.tpr
gmx mdrun -v -deffnm em

(From GROMACS Tutorial by Dr. Justin A. Lemkul)