How to run a RESP calculation.

1. Optimise the geometry, either at the

• B3LYP/6-31G* level (small molecules or transition-metal complexes, accurate calculations)
• AM1 level (large organic molecules, relatively crude calculations).

2. Run a Gaussian single-point energy calculation, either at the
HF/6-31G* level (without transition metals) or at the
B3LYP/DZpdf/6-31G* level.

Include the following keywords in the command line.
SCF=Tight Pop=MK IOp(6/33=2,6/41=10,6/42=17)

If you already have a converged wavefunction at the appropriate level of theory, you can simply run:

If the system includes transition metal, you also have to specify:
and give a row for each metal at the end of the script, (with one blank line before and after) e.g.
Cu 2.0

IOp(6/33=2) makes Gaussian write out the potential points and potentials (do not change)
IOp(6/41=10) specifies that 10 concentric layers of points are used for each atom (do not change)
IOp(6/42) givest the density of points in each layer. A value of 17 gives about 2500 points/atom. Lower values may be needed for large molecules, since the programs cannot normally handle more than 100 000 potential points. A value of 10 gives about 1000 points/atom.

Example of a full Gaussian script:
%Chk=g.chk
IOp(6/33=2,6/41=10,6/42=17)

! Gen basis set
@/teo/ulf/Basis/stdbas/N

Zn 2.0
Cu 2.0

3. Use the program /teo/ulf/Bin/changepot to convert the Gaussian output file to resp input files. All defaults are valid, except the name of the Gaussian file.
This gives the files resp.in, resp.pot, and qin.

4. Control if there are any polar hydrogens bound to the same atoms.
If so, constrain these to have the same charge (in resp.in), e.g. for water:

Water
&cntrl  ihfree=0, qwt=0.0005, iqopt=2
&end
1.0
Mol1
0    3
8    0
1    0
1    2

The lines contain the following information:
Title
Control keywords
Weight of the molecule
Name of the molecule
Total charge, number of atoms
Atom number  Fitting_number

Valid fitting_numbers are:
-n  fixed charge (to the one in file qin)
0  free charge
n  the charge is constrained to be the same as the one of atom #n.

5. Run resp:
resp -O -i resp.in -o resp.out -q qin -e resp.pot

6. Fix the charge of all atoms except carbons with more than one hydrogen (methyl and methylene groups).
Constrain hydrogens bound to the same carbon to have equal charges.
Change qwt=0.001.
Do this in resp.in1.
Copy qout to qin1

Example:

Methanol
&cntrl  ihfree=0, qwt=0.001, iqopt=2
&end
1.0
Mol1
0    6
6    0
1    0
1    2
1    2
8   -1
1   -1

7. Run resp again:
resp -O -i resp.in1 -o resp.out1 -q qin1 -e resp.pot

The result is found in file resp.out1

References
1. CI Bayly et al, J. Phys. Chem. 97(93)10269.
2. WD Cornell et al, J. Am. Chem. Soc. 115(93)9620.