From version 3.3 onwards, the default gromacs distributions support QM/MM. Visit our gromacs webpage to obtain one. Below are two older versions, which we no longer provide support for. I therefore strongly advise you to use an official distribution version instead.
qmx.tar.gz (gromacs v3.2 with QM/MM)
(gromacs v3.3 (CVS) with QM/MM)
Download and install ORCA as indicated on the ORCA Homepage. Then simply configure gromacs with
Then, configure gromacs with
There are two ways in which you can perform QM/MM simulations with gaussian. The first requires you to make a few modifications in links 301, 510, 701 and 9999. This procudere will be explained below.
The alternative approach is to use (and possibly slightly modify) the script found here: gau. This script reads and modifies the input file generated by gromacs, then calls the gaussian program and finally extracts the relevant information about energy and gradients and writes these to a file that gromacs can read. This approach is recommended if you only have access to a gaussian binary, or are not confident in programming. Nevertheless it is imperative to read and understand the script, as depending on your operating system, small modifications may still be required to run QM/MM simulations with gaussian smoothly.
To use it, set the environment variables $GAUSS_DIR to the location of the script in your filesystem and $GAUSS_EXE to the name of the script. In addition, gromacs requires also the environment $DEVEL_DIR to be set to somewhere, but this variable is ignored.
Because we cannot distribute source code which is part of gaussian, we have made available a set of instructions to build these yourself, which is allowed as long as you have a legal version of the gaussian source code.
Gaussian provides a convenient way of building and using modified links. You should make a new subdirectory, say modlinks, in which you make directories for each of the links you want to modify. Then extract from the gaussian source tree, those functions that need modification into these directories and build an alternative executable by linking you objects with the original gaussian objects. With the %subst lxxx /home/user/modlinks/lxxx in the input file, gaussian will use your modified lxxx.exe instead of the original.
Gromacs uses gradients on the point charges, and thus modifications are required to l701.exe. Also to make these gradients available for gromacs, l9999, which controls the output of gaussian are essential. In addition a small modification should be made to l301, to exclude point charge - point charge interactions. Finally, link 510 that performs the MCSCF has to be altered if you are interested in excited state dynamics.
After creating a subdirectory for these links in the modlinks directory, i.e.
the modified executables have to be built. Therefore, a makefile is required in each lxxx subdirectory. See for example the l301.make make file.
With the gaussian utility gau-fsplit, you can extract the subroutines that have to be changed, e.g.
gau-fsplit -e d1e $GAUSS_DIR/l701.F
To find the fortran source file that contains the function you need, you can use the grep command:
grep -i d1e $GAUSS_DIR/*.F
An overview of which functions have to be modified and how can be be
found here: roadmap.pdf. After the
modified links have been created, and gromacs has been configured
with --with-qmmm-gaussian, the $DEVEL_DIR environment has to be set to
the path of the modlinks subdir. Gromacs is now ready for doing QM/MM