Gen Keyword
Last Update:
6/26/2001
DESCRIPTION
A set of "standard" basis sets is stored internally in Gaussian
98 (see Basis Sets); these basis sets may
be specified by including the appropriate keyword within the route section for
the calculation. The Gen keyword allows a user-specified basis set to be
used in a Gaussian 98 calculation. It is used in the place of a basis
set keyword. In this case, the basis set description must be provided as input
(in a separate basis set input section).
The GFPrint keyword may be used to include the gaussian
function table within the output file. The GFInput keyword may be used
to have the table printed in a form which is suitable for input to Gen.
The ExtraBasis keyword, new with Gaussian 98, may be used to make
additions to standard basis sets.
BASIS FUNCTION OVERVIEW
A single basis function is composed of one or more
primitive gaussian functions. For example, an s-type basis function
fµ(r) is:
N is the number of primitive functions composing the basis
function, and it is called the degree-of-contraction of
the basis function. The coefficients diµ are
called contraction coefficients. The quantities aiµ are the
exponents, and f is the scale factor for the basis
function. The maximum degree-of-contraction permitted in Gaussian 98 is
100.
A shell is a set of basis functions {fµ} with shared exponents. Gaussian
98 supports shells of arbitrary angular momentum: s, p, d, f, g, h, and so
on. An s-shell contains a single s-type basis function. A p-shell contains the
three basis functions pX, pY, and pZ. An
sp-shell contains four basis functions with common gaussian exponents: one
s-type function and the three p-functions pX, pY and
pZ.
A d-shell may be defined to contain either the six second-order
functions (dX2, dY2,
dZ2, dXY, dXZ, dYZ), or
the five "pure d" basis functions (d
Z2R2,
dX2Y2, dXY,
dXZ, dYZ). Likewise, an f-shell may contain either the 10
third-order gaussians or the 7 "pure f" functions. Higher order shells function
similarly. Note that the contraction coefficients in a shell must be the same
for all functions of a given angular momentum, but that s and p contraction
coefficients can be different in an sp-shell. A scale factor is also defined
for each shell. It is used to scale all the exponents of primitives in the
shell. The program has the ability to convert between the two types of
functions []{Schlegel, 1995 #436}.
Consider the series of basis sets STO-3G, 6-31G, and 6-311G(d) for
the carbon atom. With the STO-3G, basis there are two shells on a carbon atom.
One is an s-shell composed of 3 primitive gaussian functions (which are
least-squares fit to a Slater 1s orbital). The other sp-shell is a
least-squares fit of 3 gaussians to Slater 2s and 2p orbitals with the
constraint that the s and p functions have equal exponents. These expansions
are the same for all atoms. Only the scale factors for each shell differ from
atom to atom. For carbon atom the 1s- and 2sp-shells have scale factors of 5.67
and 1.72, respectively. The 6-31G basis on a first row atom has three shells.
One shell is a contraction of six primitive s-type gaussians. The second shell
is a combination of three primitive sp-shells. The third shell consists of a
single sp-function. These functions were optimized for the atom. Scale factors
of 1.00, 1.00, and 1.04, respectively, for each shell for carbon were then
determined by molecular calculations. As its name implies, the 6-311G(d) basis
has 5 shells: an s-shell with 6 primitives, 3 sp-shells with 3, 1, and 1
primitives, and an uncontracted d-shell. All shells are unscaled
(have unit scale factor).
BASIS SET INPUT FORMAT
External basis sets are read into Gaussian 98 by specifying
Gen (for general basis) in the route section. The keywords 5D,
6D, 7F, and 10F are used to specify use of Cartesian or
pure d and f (and higher) functions; the defaults are 5D and 7F.
All d-shells in a calculation must have the same number of functions.
Similarly, f- and higher shells must either be all Cartesian or all pure.
Defining a shell. External basis input is handled by the
routine GenBas in Link 301. The basic unit of information that it reads from
the basis set input section is the shell definition block. A shell
definition block, together with the global specification of pure vs. Cartesian
functions, contains all necessary information to define a shell of functions.
It consists of a shell descriptor line, and one or more primitive
gaussian lines:
IType NGauss Sc -- Shell descriptor line: shell type, #
primitive gaussians, and scale factor. a1d1µ --
Primitive gaussian specification: exponent and contraction coefficient.
a2d2µ
... aN
dNµ -- There are a total of NGauss primitive
gaussian lines.
IType defines the shell type and shell constraint and may
be S, P, D, SP, F, G, ..., for an
s-shell, p-shell, d-shell, sp-shell, f-shell, g-shell, and so on. NGauss
specifies the number of primitive gaussian shells (the degree of contraction)
for the shell being defined. The shell scale factor is given by Sc
(i.e., all primitive exponents are scaled by Sc2).
The subsequent NGauss primitive gaussian lines define the
exponents ak and contraction
coefficients,
dkµ.
Each line provides the exponent for one primitive, followed by its contraction
coefficient (or s and p coefficients for an sp-shell).
A second format also exists to specify a shell as a least-squares
gaussian expansion of a Slater orbital. This is requested by a shell descriptor
line of the form STO, IOrb, NGauss, Sc. IOrb
is one of 1S, 2S, 2P, 2SP, 3S, 3P,
3SP, 3D, 4SP, and specifies which expansion is requested.
Note that 2SP requests the best least-squares fit simultaneously to S
and P slater orbitals and is not equivalent to separately specifying the best S
and the best P expansions. NGauss is the same as above. Gaussian
expansions of Slater functions having from 1 to 6 primitives are available.
Sc is the scale factor and hence the exponent of the slater function
being expanded. No primitive gaussian lines are required after a shell
descriptor line requesting an STO expansion.
Defining the basis for an atom or atom type. One
customarily places at least one, and often several, shells on any given nuclear
center (atom), via a center definition block. A center
definition block consists of a center identifier line, and one shell
definition block for each shell desired on the center(s) specified. It is
terminated by a line with either asterisks or plus signs in columns 1 through
4:
c1 c2 ... 0
--Center identifier line: specifies applicability for these shell.
IType NGauss Sc -- First shell definition block. a2d2µ
... aN
dNµ ... -- Additional shell definition blocks. IType
NGauss Sc -- Final shell definition block. a2d2µ
... aN
dNµ **** -- Separator: terminates the center
definition block.
The center identifier line specifies a list of centers on which to
place the basis functions in the center definition block, terminated by a 0. It
can contain one or more integers, which are used to indicate the corresponding
atom(s) in the molecule specification; more commonly, it contains a list of
atomic symbols to refer to all atoms of a specific type. Center numbers and
atomic symbols may be freely intermixed within a single center identifier line.
To help detect input mistakes, if a center definition block
specifies an atom that is not present in the molecule, the run is aborted. If
the center is preceded by a minus sign (e.g. H), the basis set
information is simply skipped if no atom of that type is present in the
molecule specification (the terminal zero may also be omitted in this case).
The latter syntax is intended for creating basis set include files specifying a
standard basis set for many atoms which can be included in its entirety in the
input stream when the basis set is desired, via the include (@) function (as
described earlier in this chapter).
A center or atom type may be specified in more than one center
definition block. For example, in the Gaussian 98 basis set
directory--$g98root/g98/basis on UNIX systems--there is one file which
specifies 6-31G as a general basis set (631.gbs), and another file containing d
exponents which would be included as well to specify 6-31G* (631s.gbs). Every
atom from H through Cl is specified in both files, and in practice both of them
would be included (most often along with additional basis set specifications
for those atoms in the molecule for which the 6-31G basis set is not
available).
Drawing on Pre-Defined Basis Sets in Gen Input. Gaussian
98 adds flexibility to general basis set input by allowing them to include
pre-defined basis sets within them. Within a center definition block for an
atom type (or types), an entire shell definition block may be replaced by a
line containing the standard keyword for a pre-defined basis set. In this case,
all of the functions within the specified basis set corresponding to the
specified atom type(s) will be used for all such atoms within the molecule.
EXAMPLES
Here is a portion of the Gen input corresponding to the
6-31+G(d) basis set:
H 0 Applies to all hydrogen atoms.
S 3 1.00
0.1873113696D+02 0.3349460434D-01
0.2825394365D+01 0.2347269535D+00
0.6401216923D+00 0.8137573262D+00
S 1 1.00
0.1612777588D+00 0.1000000000D+01
****
C 0 Applies to all carbons.
S 6 1.00 6-31G functions.
0.3047524880D+04 0.1834737130D-02
0.4573695180D+03 0.1403732280D-01
0.1039486850D+03 0.6884262220D-01
0.2921015530D+02 0.2321844430D+00
0.9286662960D+01 0.4679413480D+00
0.3163926960D+01 0.3623119850D+00
SP 3 1.00
0.7868272350D+01 -0.1193324200D+00 0.6899906660D-01
0.1881288540D+01 -0.1608541520D+00 0.3164239610D+00
0.5442492580D+00 0.1143456440D+01 0.7443082910D+00
SP 1 1.00
0.1687144782D+00 0.1000000000D+01 0.1000000000D+01
D 1 1.00 Polarization function.
0.8000000000D+00 0.1000000000D+01
++++
C 0 Applies to all carbons.
SP 1 1.00 Diffuse function.
0.4380000000D-01 0.1000000000D+01 0.1000000000D+01
****
The following Gen input uses the 6-31G(d,p) basis set for
the carbon and hydrogen atoms and the 6-31G basis set for the
fluorine atoms in molecule, and places an extra function only on center number
1 (which happens to be the first carbon atom in the molecule specification for
1,1-difluoroethylene):
C H 0
6-31G(d,p)
****
F 0
6-31G(d',p')
****
1 0 Place a diffuse function on just one carbon atom.
SP 1 1.00
0.4380000000D-01 0.1000000000D+01 0.1000000000D+01
****
The following job uses the Gaussian 98 include file
mechanism to specify the basis functions for chromium:
# Becke3LYP/Gen Opt Test
HF/6-31G(*) Opt of Cr(CO)6
molecule specification
C O 0
6-31G(d)
****
@/home/gwtrucks/basis/chrome.gbs/N
Note that .gbs is the conventional extension for basis set files
(for gaussian basis set).
RELATED KEYWORDS
ExtraBasis,
GFInput, GFPrint; see
also the Basis Sets section earlier in this
chapter.
Return to TOC |