Convergence Questions
The algorithms in Spartan will typically perform well on most systems when solving
quantum mechanical equations.
However, there are times when one may see "convergence problems".
What to do when this occurs? The following
covers the typical areas to examine when a calculation has
trouble converging.
The first question to ask is "Am I having problems converging
the geometry, or the wave-function?" The answer to this question
will lead to different sections of this FAQ below.
The first section "General Issues" covers some topics which are
relevant to both geometry and wave-function (SCF) convergence.
General Issues
Some common convergence issues:
- Geometry
Examine the molecule carefully. Try the same calculation at a simpler
theory level or with a smaller basis set. If the lower theories work,
they are likely good starting points for advanced theories. (For
quantum chemical calculations, theoretical approaches are listed in
order of increasing complexity: Semi-Empirical < Hartree-Fock <
Density Functional < Configuration Interaction and Moller Plesset
< Wave Function Based Correlated).
Examine the molecule's current geometry carefully; do the
bond distances and angles seem correct? (Or nearly correct?)
Molecular Mechanics can sometimes produce strange results when metals
are involved. Semi-Empirical is fast and often very good, but it
also may also suffer from poor approximations, and may not be good
enough for your molecule.
Another common problem is that the
current geometry may have a symmetry that is not
a reasonable energy minima in the theory you are attempting
to use. Turning "Symmetry" off is sometimes
appropriate; this can be done by using the
IGNORESYMMETRY keyword.
Sometimes it is also necessary to physically break symmetry
by slightly changing bond distances or angles. (Watch the
symmetry label in the bottom right of the screen to determine if
your changes are large enough.)
- Charge
Make sure to count electrons and look for radicals in your
molecule. The charge and number of unpaired electrons
specified in the
Calculation Dialog must be consistent with the
molecule.
- Unpaired Electrons
Are there unpaired
electrons? If so, you may want to choose an unrestricted
calculation by typing either SCF=UNRESTRICTED or
SCF=RESTRICTED
keyword in the options field in the Calculations dialog.
If your system includes a metal atom, ask yourself if the
metal is in a high or low spin state. Hemoglobin
complexing with Carbon-dioxide and molecular Oxygen are
common examples
where spin states need to be accounted for. Make sure
the multiplicity is consistent with the state you desire.
In questionable configurations one may need to try differing
number of unpaired electrons to see which one has the lowest
calculated energy. (i.e. 0,2,4... or
1,3,5... etc. depending on
whether there is an even or odd total number of electrons.)
- Symmetry
The use of symmetry can dramatically speed up calculations on
small symmetric molecules. However attempting to use symmetry
can sometimes cause difficulty in convergence. Use the
IGNORESYMMETRY keyword to disable the use of symmetry.
As mentioned in the
geometry section,
it is sometimes useful to physically break symmetry.
If you've made it this far, you have examined your molecule and
believe everything is correct in the calculation setup. Now it's
time to delve deeper
into the calculation. The first thing to do is determine whether
problems are related to the geometry optimization or the
self-consistent field calculation (SCF) of the wave function. If
you have one or more geometry cycles displayed in the output
dialog, the problem is likely related to geometry optimization.
(Of course, there may be exceptions, so examine the error
message carefully.)
The following section includes several references to "keywords". Keywords are
type-in options, to be entered in the "Options" field in
Spartan's Calculation dialog. Keywords are NOT case sensitive. Multiple keywords are separated
by spaces.
- Re-examine the geometry.
If the starting geometry is poor, some
new chemistry might be occurring that you do not anticipate.
For example, if a hydrogen is too close to a
nitrogen, a bond may form (that you don't want) Recall
that the bonds drawn on the screen mean absolutely nothing to
the quantum calculations.
At times the job may be converging normally, just slowly, and
one only needs to resubmit a job that has 'run out
of cycles'. But before you resubmit, examine the current
conformation of the molecule.
Jobs that run out of cycles do so because atoms have
moved a lot during the geometry optimization. Chances are
that some chemistry is occurring (a bond forming or breaking)
that you may not desire.. This could be due to poor
initial geometry (see above) or a poor initial Hessian
(discussed below).
Adding the GEOMETRYCYCLES=xxx or OPTCYCLE=xxx
(where xxx is some large number) keyword should keep the job
from terminating early.
It is also possible that the algorithm is seeking the minima
(or transition state) at a higher level of precision than
you need. You can change the precision criteria by
using the GRADIENTTOLERANCE=x or
DISTANCETOLERANCE=x. (TOLG=x or TOLD=x
are shorter versions of these keywords.)
- Check the Hessian
The most common problem with
geometry optimizations is that the default Hessian is poor.
Usually a molecular mechanics Hessian saves many geometry optimization
steps for standard systems, and semi-empirical Hessians are
good for transition searches. (These are the defaults). But
these defaults can sometimes be poor approximations for molecules
outside their range of parameterization.
You can choose a
conservative Hessian with the HESS=UNIT keyword. While
this will typically avoid bad modes in the Hessian, it does
slow the optimization procedures.
The best Hessian is one generated at the same theory level
as the one you are attempting use for optimization. Often this is too
expensive (from a time perspective) to calculate, but if you
are having trouble you may
want to generate this high quality Hessian. This can be
accomplished by doing an energy calculation with the
IR button checked. (This will generate a
Hessian.) When this completes you can resubmit the job as a
geometry optimization (or transition state optimization).
- Start simple
It is always good advice to start by using
a lower theory level. In general we suggest using the
Minimizer (the Minimize button in the Spartan interface uses
molecular mechanics to reduce strain energy and 'clean up'
molecules that have been constructed by hand), and then
(perhaps) doing a
quick geometry optimization at a simple level of theory such
as semi-empirical or Hartree-Fock with a small basis (3-21G*).
There are, however, instances when this might not be a good idea; for
example, one should NOT typically use the Minimizer before
submitting a Transition State Geometry optimization. There are
also cases where a lower level theory level may simply produce poor
results on your type of molecule. After some hands-on experience you
will know better than anyone else what works for your favorite
class of molecules.
Another approach is useful when building large
molecules:
- Start with a small core of your molecule and
optimize it at the theory you desire.
- Then add some atoms to the
core, (perhaps minimizing the new atoms with molecular
mechanics, while 'freezing' the original core)
- Optionally, you may want to freeze the core atoms and
minimize the new atoms at a lower theory level.
You can use molecular mechanics in the Spartan interface
(the Minimize button), or any other
theory from the Calculations dialog. (Make sure to
select the "Frozen Atoms" box
next to the words "Subject To:" in the
calculations dialog.)
- Then submit the entire molecule for a final
geometry optimization. Make sure to deselect "frozen
atoms" in the calculations dialog.
You can repeat this procedure until the full molecule
is complete. The above approach is often useful when
searching for transition states.
- A word about coordinates
While the simplest coordinate system for geometry optimization
is Cartesian, Spartan will commonly use an internal coordinate
system (sometimes referred to as "redundant internal
coordinates" [RIC] or "delocalized internal coordinates").
This takes into account the standard bonding of tetrahedral sp3
and planar-like sp2 systems.
This also speeds up geometry optimizations by more than a factor
of 2 for typical organic systems. There are cases where the internal
coordinate system can cause a problem, particularly when the
geometry changes significantly during the optimization or in
some high-coordination systems. In these cases you may want
to turn the default behavior off by using the
NOGEOMSYMMETRY keyword
(entered into the Options line of the Calculations dialog).
- The molecule doesn't have the exact symmetry I want.
It can be difficult int Spartan to maintain the exact symmetry.
Often there is not much you can do but the FORCESYMMETRY
keyword will try harder to maintain symmetry.
It is also required to start from "nearly exact" symmetry in order to
maintain symmetry. The best way to do this is by minimizing in the
builder by clicking the minimize button. If this method does not
produce the right starting symmetry (shown in the lower right of the
Spartan window) running higher end theories will likely never
find an exact symmetry.
Spartan symmetry algorithms require very high precision
to determine symmetry (more than 1 part per million). If the
molecule "looks" symmetric but Spartan doesn't report that it is
the symmetry you wanted, it is probably close enough for all
practical purposes (i.e. energy/frequencies etc.) but just not to
the very high tolerances required by Spartan to report. No harm is
done by being slightly numerically off in the geometry.
It is worth mentioning that it is likely that even given a starting
geometry that is perfectly symmetric the calculation can lose the
symmetry. While this can happen because the symmetric position is
in fact meta-stable, it can also happen because the math
(and mathmatical approximations used in Spartan)
will lose symmetry.
For example in DFT the the numerical grids used to calculate forces
may not have the same symmetry as the global molecule. There are
other similar approximations in calculating the math that can lead
to small errors in the forces that may eventually lead to the
geometry leaving the precise symmetry required by our symmetry
detecting logic.
Warning on symmetry use: Because (many) symmetry operators are
numerically approximate, when a certain operation (say rotation)
is right on border of being satisfied, some parts of the code might
think there is symmetry while another part might think there is
no symmetry. When this happens disasterous things can happen.
Usually (but not always) this has obvious affects such as forces
becoming unreasonable. So care needs to be taken when forcing
symmetry.
Spartan treats Transition State searches as a special case of geometry
optimizations. Because of the flat nature of the potential
energy surface
and other unique characteristics of transition states,
transition state geometry tasks can be
more difficult to perform than the typical ground state
geometry.
The above discussion on geometry optimizations holds for
transition state geometries. The strategy of starting small
and working up to larger molecules and methods applies to
transition state searching. However, for efficient transition
state searches the importance of a good starting geometry and a
good Hessian are especially critical.
A good starting geometry can be found using Spartan's
transition state builder/searching feature. A number of
examples of using this can be found in Chapter 11 of our
Spartan Tutorial and User's Guide. (Also see the sections
on Spartan Reaction Database and Transition States
in Chapter 23 for additional information on these features.)
Setting up an Energy Profile calculation is another way of getting a
good starting point for transition state geometry tasks.
Once a good starting point is found a good Hessian is
required. Often Spartan's default Hessian (a semi-empirical
guess) is good enough.
The best Hessian is obtained from an initial IR/frequency
calculation.
i.e. First do a single point energy calculation with the IR
property checked. When this completes, examine the
vibrations (Display Menu -> Spectra).
Ideally there is one negative frequency (noted with an "i" in
front of the frequency), and upon animating,
this should look like motion along the reaction coordinate
associated with the transition state.
If the largest imaginary
frequency is not what you expect, or if there are no imaginary
frequencies, the starting geometry was not close enough to the
transition state.
In very difficult cases I sometimes force
a complete analytical/exact Hessian every few cycles. For
example assuming the geometry is close to the actual transition
state would:
- Do a single point energy with IR selected.
- Check to make sure there is only 1 negative eigenvalue, and
that it looks right by animating it.
- Run a Transition State Geometry with the keyword OPTCYCLE=5 (or some small
number). This job will (most likely) run out of optimization
cycles.
- Go back to step 1 to get the real/exact hessian and repeat.
If at any point in step 2 you discover that there is no longer
a good negative eigenvalue you need to adjust the geometry.
One useful strategy is to do an Energy Profile calculation to
find a rough
TS. The SN2 Reaction of Bromide and Methyl Chloride
tutorial and the Thermodynamic vs. Kinetic Control
tutorial (from the
Chemical Reactions
Activity provide good examples of this strategy.