GROMACS (Groningen MAchine for Chemical Simulations ) is a software package for simulation and analysis of molecular dynamic processes (MD), which was originally developed at the University of Groningen. Today, the support and development takes place in different places and institutions, including the University of Uppsala, Stockholm University and the Max Planck Institute for Polymer Research.
Originally the GROMACS project was started in the early 1990s to construct an optimized parallel computer system for molecular simulation. The whole system was initially based on a ring-shaped architecture of the computers involved with complex communication between nodes. The specific routines based on the GROMOS program, which was developed in the same workgroup in Groningen. But they were rewritten in C, whereas GROMOS was written in Fortran77. In addition, a number of specific elements were added, such as:
- A special routine to bypass the expensive square root calculation
- Optimized processing the list of neighboring atoms
- Calculation of the virial equation as a simple rather than a double sum over the particle
- Fast grid -based search of adjacent atoms
- Use of multimedia ( 3DNow! and SSE) instructions on Pentium (III and above), Athlon and Duron processors.
The fully optimized code makes GROMACS one of the fastest programs in the field of molecular simulations, which can be found currently (as of July 2009). In addition GROMACS is very flexible by supporting various force fields, such as AMBER, OPLS or GROMOS. The distribution under GPL licensing is another point worth mentioning of GROMACS. This type of licensing the package is already included in many Linux distributions and can be quite easily installed later. For distributed computing an MPI installation support is available as an option. The Folding @ Home Stanford University project uses GROMACS under a non-GPL license in the field of ab initio simulations of protein folding. The package comprises nearly 100 programs for the implementation and analysis of molecular dynamics calculations.