( 2 Jun 94)
General Atomic and Molecular Electronic Structure System
GAMESS User's Guide
as prepared at
Department of Chemistry
Iowa State University
Ames, IA 50011
GGG A M M EEEE SSSS SSSS
G A A MM MM E S S
G GG A A M M M EEE SSS SSS
G G AAAAA M M E S S
GGG A A M M EEEE SSSS SSSS
Original program assembled by the staff of the NRCC:
M. Dupuis, D. Spangler, and J. J. Wendoloski
National Resource for Computations in Chemistry
Software Catalog, University of California:
Berkeley, CA (1980), Program QG01
This version of GAMESS is described in
M.W.Schmidt, K.K.Baldridge, J.A.Boatz, S.T.Elbert,
M.S.Gordon, J.H.Jensen, S.Koseki, N.Matsunaga,
K.A.Nguyen, S.J.Su, T.L.Windus, M.Dupuis, J.A.Montgomery
J.Comput.Chem. 14, 1347-1363(1993)
Section 1 - INTRO.DOC - Overview
Section 2 - INPUT.DOC - Input Description
Section 3 - TESTS.DOC - Input Examples
Section 4 - REFS.DOC - Further Information
Section 5 - PROG.DOC - Programmer's Reference
Section 6 - IRON.DOC - Hardware Specifics
Questions about GAMESS may be addressed to:
Mike Schmidt = mike@si.fi.ameslab.gov = 515-294-9796
E-mail is much, much, much preferred to phone calls!
A wide range of quantum chemical computations are
possible using GAMESS, which
1. Calculates -RHF- SCF molecular wavefunctions.
2. Calculates -UHF- SCF molecular wavefunctions.
3. Calculates -ROHF- SCF molecular wavefunctions.
4. Calculates -GVB- SCF molecular wavefunctions.
5. Calculates -MCSCF- wavefunctions.
6. Calculates -CI- wavefunctions using the unitary
group method.
7. Calculates analytic energy gradients for all these
wavefunctions except -CI-.
8. Optimizes molecular geometries using the energy
gradient, in terms of Cartesian or internal coords.
9. Searches for potential energy surface saddle points.
10. Traces the intrinsic reaction path from a saddle
point to reactants or products.
11. Computes normal modes, vibrational frequencies, and
IR intensities.
12. Computes radiative transition probabilities, and
spin-orbit coupling constants.
13. Calculates the second order Moller-Plesset energy
correction for RHF, UHF, and ROHF wavefunctions.
14. Obtains localized orbitals by the Foster-Boys,
Edmiston-Ruedenberg, or Pipek-Mezey methods.
15. Calculates the following molecular properties:
a. dipole, quadrupole, and octupole moments
b. electrostatic potential
c. electric field and electric field gradients
d. electron density and spin density
e. Mulliken and Lowdin population analysis
f. virial theorem and energy components
g. Stone's distributed multipole analysis
16. Performs semi-empirical MNDO, AM1, or PM3
calculations for RHF, UHF, or ROHF wavefunctions.
17. Applies finite electric fields, extracting the
molecule's linear polarizability, and first and
second order hyperpolarizabilities.
A quick summary of the current program capabilities
is given below.
RHF ROHF UHF GVB MCSCF
--- ---- --- --- -----
Energy CDP CDP CDP CDP CDP
analytic
Gradient CDP CDP CDP CDP CDP
numerical
Hessian CDP CDP CDP CDP CDP
analytic
Hessian CDP CDP - CDP -
MP2 CDP CD CD - -
CI CDP CDP - CDP CDP
MOPAC yes yes yes
C= conventional storage of AO integrals on disk
D= direct evaluation of AO integrals
P= parallel execution
History of GAMESS
GAMESS was put together from several existing quantum
chemistry programs, particularly HONDO, by the staff of
the National Resources for Computations in Chemistry. The
NRCC (1 Oct 77 to 30 Sep 81) project was funded by DOE and
NSF, and was limited to the field of chemistry. The NRCC
staff added new capabilities to GAMESS as well. Besides
providing public access to the code on the CDC 7600 at the
site of the NRCC (the Lawrence Berkeley Laboratory), the
NRCC made copies of the program source code (for a VAX)
available to users at other sites.
This manual is a completely rewritten version of the
original documentation for GAMESS. Any errors found in
this documentation, or the program itself, should not be
attributed to the original NRCC authors.
The present version of the program has undergone many
changes since the NRCC days. This occured at North Dakota
State University prior to 1992, and now continues at Iowa
State University. A number of persons (some of whom have
now left the Gordon group) have made contributions:
Jerry Boatz, Kim Baldridge, and Shiro Koseki at NDSU;
Kiet Nguyen, Jan Jensen, Theresa Windus, Nikita Matsunaga,
Shujun Su, Brett Bode, and Simon Webb at ISU;
Frank Jensen at Odense U.,
Mariusz Klobukowski at U.Alberta,
Henry Kurtz at U.Memphis,
Brenda Lam at U.Ottawa,
John Montgomery at United Technologies,
Jeff Schubert at Abbott Labs.
It would be difficult to overestimate the contributions
Michel Dupuis has made to this program, both in its original
form, and since. This includes the donation of code from
HONDO 7, and numerous suggestions for other improvements.
The continued development of this program from 1982 on
can be directly attributed to the nurturing environment
provided by Professor Mark Gordon. Funding for much of the
development work on GAMESS is provided by the Air Force
Office of Scientific Research.
In late 1987, NDSU and IBM reached a Joint Study
Agreement. One goal of this JSA was the development of a
version of GAMESS which is vectorized for the IBM 3090's
Vector Facility, which was accomplished by the fall of
1988. This phase of the JSA led to a program which is
also considerably faster in scalar mode as well. The
second phase of the JSA, which ended in 1990, was to
enhance GAMESS' scientific capabilities. These additions
include analytic hessians, ECPs, MP2, spin-orbit coupling
and radiative transitions, and so on. Everyone who
uses the current version of GAMESS owes thanks to IBM in
general, and Michel Dupuis of IBM Kingston in particular,
for their sponsorship of the current version of GAMESS.
During the first six months of 1990, DEC awarded a
Innovators Program grant to NDSU. The purpose of this
grant was to ensure GAMESS would run on the DECstation,
and to develop graphical display programs. As a result,
the companion programs MOLPLT, PLTORB, DENDIF, and MEPMAP
were modernized for the X-windows environment, and
interfaced to GAMESS. These programs now run on VMS
VAXstations, Ultrix DECstations, and many other X-windows
environments as well. The ability to visualize the
molecular structures, orbitals, and electrostatic
potentials is a significant improvement.
As of July 1, 1992, the development of GAMESS moved
to Iowa State University at the Ames Laboratory.
The rest of this section gives more specific credit
to the sources of various parts of the program.
* * * *
GAMESS is a synthesis, with many major modifications,
of several programs. A large part of the program is from
HONDO 5. For sp basis functions, GAUSSIAN76 and GRADSCF
integrals have been adapted to the HONDO symmetry and
supermatrix procedure, both for the integral and gradient
integrals.
The Direct Inversion in the Iterative Subspace (DIIS)
convergence procedure was implemented by Brenda Lam (then
at the University of Houston), for RHF and UHF functions.
The UHF code was taught to do high spin ROHF by John
Montgomery at United Technologies, who extended DIIS use
to ROHF and the one pair GVB case.
The GVB part is a heavily modified version of GVBONE.
The CI module is based on Brooks and Schaefer's
unitary group program which was modified to run within
GAMESS, using a Davidson eigenvector method written by
S.T. Elbert.
The MCSCF part of the program was contributed by
Michel Dupuis of IBM from the HONDO 7 program.
Edmiston-Ruedenberg energy localization is done
with a version of the ALIS program "LOCL", modified
to run inside GAMESS at NDSU. Foster-Boys localization
is based on a highly modified version of QCPE program
354 by D.Boerth, J.A.Hasmall, and A.Streitweiser. John
Montgomery implemented the population localization.
The numerical force constant computation and normal
mode analysis was adapted from Komornicki's GRADSCF
program, with decomposition of normal modes in internal
coordinates written at NDSU by Jerry Boatz.
The code for the analytic computation of RHF Hessians
was contributed by Michel Dupuis of IBM from HONDO 7,
with open shell CPHF code written at NDSU. The TCSCF
CPHF code is the result of a collaboration between NDSU
and John Montgomery at United Technologies.
Jon Baker's Newton-Raphson geometry optimization and
transition state locator was adapted to GAMESS by Frank
Jensen of Odense University, who has also added the
restricted step methods of Helgaker and Culot, et al.
These methods are adapted to use GAMESS symmetry, and
Cartesian or internal coordinates. The non-gradient
optimization so aptly described as "trudge" was adapted
from HONDO 7 by Mariusz Klobukowski at U.Alberta, who
added the capability of CI optimizations to TRUDGE.
The intrinsic reaction coordinate pathfinder was
written at North Dakota State University, and modified
later for new integration methods by Kim Baldridge.
The Gonzales-Schelegel IRC stepper was incorporated by
Shujun Su at Iowa State, based on a pilot code from Frank
Jensen.
The radiative transition moment and spin-orbit
coupling modules were written by Shiro Koseki at North
Dakota State University.
The ECP code goes back to Louis Kahn, with gradient
modifications from IMS in Japan. The code was adapted to
HONDO by Stevens, Basch, and Krauss, from whence Kiet
Nguyen adapted it to GAMESS at NDSU.
Changes in the manner of entering the basis set, and
the atomic coordinates (including Z-matrix forms) are
due to Jan Jensen at North Dakota State University.
Extension of the 1e- and 2e- integral routines to
handle spdfg basis sets was done by Theresa Windus at
North Dakota State University.
The direct SCF implementation was done at NDSU,
guided by a pilot code for the RHF case by Frank Jensen.
The MP2 code for was adapted from HONDO by Nikita
Matsunaga at Iowa State, who also added the ROHF-MP2
option.
Incorporation of enough MOPAC version 6 routines to
run PM3, AM1, and MNDO calculations from within GAMESS
was done by Jan Jensen at North Dakota State University.
Implementation of parallel SCF energy and gradient
calculations by means of the TCGMSG toolkit was done by
Theresa Windus at North Dakota State University.
The polarizability calculation by means of finite
applied fields was implemented by Henry Kurtz of Memphis
State University.
The ability to find SCF wavefunctions which exactly
satisfy the virial theorem was implemented by Frank
Jensen at Odense University.
"Point determined charges" were implemented by Mark
Spackman at the University of New England, Australia.
The SCRF solvent model was implemented by Dave Garmer
at CARB, and was adapted to GAMESS by Jan Jensen and
Simon Webb at Iowa State University.
Distribution Policy
Copies of GAMESS will be provided at no charge, to
anyone who can reach Mike Schmidt by E-mail, and is not
working in a country such as People's Republic of China,
North Korea, Cuba, and so on. Your country need not be
particularly democratic, but it should at least not have
a governmental policy of driving tanks over students.
To get a copy, send E-mail to Mike at the following
E-mail address:
mike@si.fi.ameslab.gov
and tell what kind of computer you have. If it happens
to be an IBM mainframe, be sure to specify whether it
runs VM, MVS, or AIX. You will receive GAMESS by E-mail
as a series of files. Please be sure that your mailer's
spool directory contains 10 MB of free disk space *before*
you ask for GAMESS, so that your incoming mail arrives
safely.
* * *
Persons receiving copies of GAMESS are requested to
acknowledge that they will not make copies of GAMESS for
use at other sites, or incorporate any portion of GAMESS
into any other program, without receiving permission to
do so from ISU. This is done by signing and returning
a straightforward copyright letter. If you know anyone
who wants a copy of GAMESS, please refer them to us for
the most up to date version available.
No large program can ever be guaranteed to be free of
bugs, and GAMESS is no exception. If you would like to
receive an updated version (fewer bugs, and with new
capabilities) contact Mike over the net. You should
probably allow a year or so to pass for enough significant
changes to accumulate.
Input Philosophy
Input to GAMESS may be in upper or lower case. There
are three types of input groups in GAMESS:
1. A pseudo-namelist, free format, keyword driven
group. Almost all input groups fall into this first
category.
2. A free format group which does not use keywords.
The only examples of this category are $DATA, $ECP,
$POINTS, and $STONE.
3. Formatted data. This data is never typed by the
user, but rather is generated in the correct format by
some earlier GAMESS run.
All input groups begin with a $ sign in column 2,
followed by a name identifying that group. The group name
should be the only item appearing on the input line for
any group in category 2 or 3.
All input groups terminate with a $END. For any group
in category 2 and 3, the $END must appear beginning in
column 2, and thus is the only item on that input line.
Type 1 groups may have keyword input on the same line
as the group name, and the $END may appear anywhere.
Because each group has a unique name, the groups may
be given in any order desired. In fact, multiple
occurences of category 1 groups are permissible.
* * *
Most of the groups can be omitted if the program
defaults are adequate. An exception is $DATA, which is
always required. A typical free format $DATA group is
$DATA
STO-3G test case for water
CNV 2
OXYGEN 8.0
STO 3
HYDROGEN 1.0 -0.758 0.0 0.545
STO 3
$END
Here, position is important. For example, the atom
name must be followed by the nuclear charge and then the
x,y,z coordinates. Note that missing values will be read
as zero, so that the oxygen is placed at the origin.
The zero Y coordinate must be given for the hydrogen,
so that the final number is taken as Z.
The free format scanner code used to read $DATA is
adapted from the ALIS program, and is described in the
documentation for the graphics programs which accompany
GAMESS. Note that the characters ;>! mean something
special to the free format scanner, and so use of these
characters in $DATA and $ECP should probably be avoided.
Because the default type of calculation is a single
point (geometry) closed shell SCF, the $DATA group shown
is the only input required to do a RHF/STO-3G water
calculation.
* * *
As mentioned, the most common type of input is a
namelist-like, keyword driven, free format group. These
groups must begin with the $ sign in column 2, but have no
further format restrictions. You are not allowed to
abbreviate the keywords, or any string value they might
expect. They are terminated by a $END string, appearing
anywhere. The groups may extend over more than one
physical card. In fact, you can give a particular group
more than once, as multiple occurences will be found and
processed. We can rewrite the STO-3G water calculation
using the keyword groups $CONTRL and $BASIS as
$CONTRL SCFTYP=RHF RUNTYP=ENERGY $END
$BASIS GBASIS=STO NGAUSS=3 $END
$DATA
STO-3G TEST CASE FOR WATER
Cnv 2
Oxygen 8.0 0.0 0.0 0.0
Hydrogen 1.0 -0.758 0.0 0.545
$END
Keywords may expect logical, integer, floating point,
or string values. Group names and keywords never exceed 6
characters. String values assigned to keywords never
exceed 8 characters. Spaces or commas may be used to
separate items:
$CONTRL MULT=3 SCFTYP=UHF,TIMLIM=30.0 $END
Floating point numbers need not include the decimal,
and may be given in exponential form, i.e. TIMLIM=30,
TIMLIM=3.E1, and TIMLIM=3.0D+01 are all equivalent.
Numerical values follow the FORTRAN variable name
convention. All keywords which expect an integer value
begin with the letters I-N, and all keywords which expect
a floating point value begin with A-H or O-Z. String or
logical keywords may begin with any letter.
Some keyword variables are actually arrays. Array
elements are entered by specifying the desired subscript:
$SCF NO(1)=1 NO(2)=1 $END
When contiguous array elements are given this may be
given in a shorter form:
$SCF NO(1)=1,1 $END
When just one value is given to the first element of
an array, the subscript may be omitted:
$SCF NO=1 NO(2)=1 $END
Logical variables can be .TRUE. or .FALSE. or .T.
or .F. The periods are required.
The program rewinds the input file before searching
for the namelist group it needs. This means that the
order in which the namelist groups are given is
immaterial, and that comment cards may be placed between
namelist groups.
Furthermore, the input file is read all the way
through for each free-form namelist so multiple occurances
will be processed, although only the LAST occurance of a
variable will be accepted. Comment fields within a
free-form namelist group are turned on and off by an
exclamation point (!). Comments may also be placed after
the $END's of free format namelist groups. Usually,
comments are placed in between groups,
$CONTRL SCFTYP=RHF RUNTYP=GRADIENT $END
--$CONTRL EXETYP=CHECK $END
$DATA
molecule goes here...
The second $CONTRL is not read, because it does not
have a blank and a $ in the first two columns. Here a
careful user has executed a CHECK job, and is now running
the real calculation. The CHECK card is now just a
comment line.
* * *
The final form of input is the fixed format group.
These groups must be given IN CAPITAL LETTERS only! This
includes the beginning $NAME and closing $END cards, as
well as the group contents. The formatted groups are
$VEC, $HESS, $GRAD, $DIPDR, and $VIB. Each of these is
produced by some earlier GAMESS run, in exactly the
correct format for reuse. Thus, the format by which they
are read is not documented in section 2 of this manual.
* * *
Each group is described in the Input Description
section. Fixed format groups are indicated as such, and
the conditions for which each group is required and/or
relevant are stated.
There are a number of examples of GAMESS input given
in the Input Examples section of this manual.
* * *
Input Checking
Because some of the data in the input file may not be
processed until well into a lengthy run, a facility to
check the validity of the input has been provided. If
EXETYP=CHECK is specified in the $CONTRL group, GAMESS
will run without doing much real work so that all the
input sections can be executed and the data checked for
correct syntax and validity to the extent possible. The
one-electron integrals are evaluated and the distinct row
table is generated. Problems involving insufficient
memory can be identified at this stage. To help avoid the
inadvertent absence of data, which may result in the
inappropriate use of default values, GAMESS will report
the absence of any control group it tries to read in CHECK
mode. This is of some value in determining which control
groups are applicable to a particular problem.
The use of EXETYP=CHECK is HIGHLY recommended for the
initial execution of a new problem.
Program limitations
GAMESS can use an arbitrary Gaussian basis of spdfg
type for RUNTYP=ENERGY. At present, all other RUNTYPs
are limited to spd basis sets.
This program is limited to a total of 500 atoms. The
total number of symmetry unique shells cannot exceed 1000,
containing no more than 5000 symmetry unique Gaussian
primitives. The total number of contracted basis
functions (AOs) cannot exceed 2047. Each contraction can
contain at most 30 gaussians. The CI/MCSCF package can
use at most 255 orbitals. In practice, you will probably
run out of CPU or disk before you encounter any of these
limitations.
On 32 bit machines such as IBM, VAX, or UNIX the
number of AOs is limited by the byte packing to just 255,
rather than the 2047 mentioned above. An exception is SCF
runs, using a PK or P integral file, where 361 AOs can be
used on 32 bit machines. If your molecule exceeds this
packing limit, or if you do not have disk space to hold
the integrals, you can avoid this limit by using the
direct SCF option.
Except for these limits, the program is basically
dimension limitation free. Memory allocations other
than these limits are dynamic.
Restart Capability
The program checks for CPU time, and will stop if time
is running short. Restart data are printed and punched
out automatically, so the run can be restarted where it
left off.
At present all SCF modules will place the current
orbitals on the punch file if the maximum number of
iterations is reached. These orbitals may be used in
conjunction with the GUESS=MOREAD option to restart the
iterations where they quit. Also, if the TIMLIM option is
used to specify a time limit just slighlty less than the
job's batch time limit, GAMESS will halt if there is
insufficient time to complete another full iteration, and
the current orbitals will be punched.
When searching for equilibrium geometries or saddle
points, if time runs short, or the maximum number of steps
is exceeded, the updated hessian matrix is punched for
restart. Optimization runs can also be restarted with the
dictionary file. See $STATPT for details.
Force constant matrix runs can be restarted from
cards. See the $VIB group for details.
The two electron integrals may be reused. The
Newton-Raphson formula tape for MCSCF runs can be saved
and reused.
* * * *
The binary file restart options are rarely used, and
so may not work well (or at all). Restarts which change
the card input (adding a partially converged $VEC, or
updating the coordinates in $DATA, etc.) are far more
likely to be sucessful than restarts from the DAF file.