Startseite |
Bei der SCF-Prozedur werden die AO-Koeffizienten im MO solange variiert bis sich die Energie bzw. Elektronendichte nicht mehr ändert.
-------------------
RHF SCF CALCULATION
-------------------
NUCLEAR ENERGY = 0.9165618819
MAXIT = 30 NPUNCH= 2
EXTRAP=T DAMP=F SHIFT=F RSTRCT=F DIIS=F DEM=F SOSCF=F
DENSITY CONV= 1.00E-05
MEMORY REQUIRED FOR RHF STEP= 7833 WORDS.
ITER EX DEM TOTAL ENERGY E CHANGE DENSITY CHANGE
DIIS ERROR
1 0 0 -1.025089173 -1.025089173
0.116921507 0.000000000
2 1 0 -1.095888724 -0.070799551
0.015036341 0.000000000
3 2 0 -1.097745036 -0.001856312
0.002376118 0.000000000
4 3 0 -1.097795740 -0.000050704
0.000390869 0.000000000
5 0 0 -1.097797134 -0.000001393
0.000077677 0.000000000
6 1 0 -1.097797173 -0.000000039
0.000000001 0.000000000
7 2 0 -1.097797173 0.000000000
0.000000000 0.000000000
-----------------
DENSITY CONVERGED
-----------------
TIME TO FORM FOCK OPERATORS= 0.0 SECONDS ( 0.0 SEC/ITER)
TIME TO SOLVE SCF EQUATIONS= 0.0 SECONDS ( 0.0 SEC/ITER)
FINAL ENERGY IS -1.0977971729 AFTER 7 ITERATIONS
In manchen Fällen gibt es aber Probleme. Obiger Ausschnitt stammt aus einer Berechnung des Singulett-Gundzustands von cyclischen H3+ mit dem 31G-Basissatz und GUESS=HUCKEL. Versucht man den Triplettzustand zu berechnen, so kommt man zu folgendem Resultat:
--------------------
ROHF SCF CALCULATION
--------------------
NUCLEAR ENERGY = 0.9165618819
MAXIT = 30 NPUNCH= 2 MULT= 3
EXTRAP=T DAMP=F SHIFT=F RSTRCT=F DIIS=F SOSCF=F
DENSITY CONV= 1.00E-05
ROHF CANONICALIZATION PARAMETERS
C-C O-O V-V
ALPHA -0.5000 0.5000 1.5000
BETA 1.5000 0.5000 -0.5000
MEMORY REQUIRED FOR UHF/ROHF STEP= 8387 WORDS.
ITER EX TOTAL ENERGY E CHANGE DENSITY CHANGE DIIS ERROR
1 0 -0.964277593 -0.964277593 0.312757224
0.000000000
2 1 -0.821482627 0.142794966
0.651973692 0.000000000
3 2 -0.957712836 -0.136230209 0.219902906
0.000000000
4 3 -0.961886846 -0.004174010 0.175665880
0.000000000
5 4 -0.983982568 -0.022095721 0.175549569
0.000000000
6 5 -0.986974146 -0.002991579 0.299179051
0.000000000
7 6 -0.837579484 0.149394662
0.651823093 0.000000000
8 7 -0.956943396 -0.119363912 0.206587478
0.000000000
9 8 -0.963997034 -0.007053637 0.152751620
0.000000000
10 9 -0.980191187 -0.016194153 0.140387777
0.000000000
11 10 -0.985672975 -0.005481788 0.078185234 0.000000000
12 11 -0.984908437 0.000764538 0.068724860
0.000000000
13 12 -0.970838553 0.014069883 0.291823026
0.000000000
14 13 -0.836765949 0.134072605 0.591898243
0.000000000
15 14 -0.936981029 -0.100215080 0.187202718 0.000000000
16 15 -0.929174986 0.007806043 0.169614419
0.000000000
17 16 -0.961153265 -0.031978279 0.166798282 0.000000000
18 17 -0.983584416 -0.022431151 0.138405140 0.000000000
19 18 -0.986056978 -0.002472562 0.295466240 0.000000000
20 19 -0.840653479 0.145403499 0.588084628
0.000000000
21 20 -0.933105809 -0.092452330 0.167760603 0.000000000
22 21 -0.922523197 0.010582612 0.182130115
0.000000000
23 22 -0.960712978 -0.038189781 0.161212461 0.000000000
24 23 -0.982006977 -0.021294000 0.122030899 0.000000000
25 24 -0.984721864 -0.002714887 0.054687975 0.000000000
26 0 -0.982196177 0.002525687 0.411167157
0.000000000
27 1 -0.807645385 0.174550792 0.519101967
0.000000000
28 2 -0.952223235 -0.144577850 0.187949778
0.000000000
29 3 -0.961253731 -0.009030496 0.154002846
0.000000000
30 0 -0.978575353 -0.017321622 0.687652499
0.000000000
SCF IS UNCONVERGED, TOO MANY ITERATIONS
FINAL ENERGY IS 0.0000000000 AFTER 30 ITERATIONS
Eine Erhöhung von MAXIT in $CONTRL bringt nichts.
Verwendet man aber die MO's aus der Berechnung des Singulettzustandes (GUESS=MOREAD),
erreicht man Konvergenz:
--------------------
ROHF SCF CALCULATION
--------------------
NUCLEAR ENERGY = 0.9165618819
MAXIT = 30 NPUNCH= 2 MULT= 3
EXTRAP=T DAMP=F SHIFT=F RSTRCT=F DIIS=F SOSCF=F
DENSITY CONV= 1.00E-05
ROHF CANONICALIZATION PARAMETERS
C-C O-O V-V
ALPHA -0.5000 0.5000 1.5000
BETA 1.5000 0.5000 -0.5000
MEMORY REQUIRED FOR UHF/ROHF STEP= 8387 WORDS.
ITER EX TOTAL ENERGY E CHANGE DENSITY CHANGE
DIIS ERROR
1 0 -0.829776548 -0.829776548
0.315494821 0.000000000
2 1 -0.789731924 0.040044623
0.392584143 0.000000000
3 2 -0.869064124 -0.079332200
0.258473239 0.000000000
4 3 -0.925100862 -0.056036738
0.203686704 0.000000000
5 4 -0.963581525 -0.038480663
0.132956890 0.000000000
6 0 -0.983334269 -0.019752744
0.412286245 0.000000000
7 1 -0.813432968 0.169901300
0.555303710 0.000000000
8 2 -0.958532473 -0.145099505
0.181969523 0.000000000
9 3 -0.955999166 0.002533307
0.164221026 0.000000000
10 4 -0.978868675 -0.022869509 0.155392028
0.000000000
11 5 -0.986403107 -0.007534432 0.109853820
0.000000000
12 6 -0.985072695 0.001330412
0.038074704 0.000000000
13 0 -0.983015226 0.002057469
0.028897417 0.000000000
14 1 -0.980470955 0.002544271
0.305942314 0.000000000
15 2 -0.834409721 0.146061233
0.643682302 0.000000000
16 3 -0.953775899 -0.119366178 0.218023544
0.000000000
17 4 -0.969017444 -0.015241545 0.171028068
0.000000000
18 0 -0.984277631 -0.015260187 0.608141095
0.000000000
19 1 -0.349106359 0.635171272
0.432862240 0.000000000
20 2 -0.765809089 -0.416702730 0.070858125
0.000000000
21 3 -0.786763112 -0.020954023 0.023119072
0.000000000
22 0 -0.787947135 -0.001184023 0.009115051
0.000000000
23 1 -0.788028017 -0.000080883 0.000151447
0.000000000
24 2 -0.788028107 -0.000000089 0.000042702
0.000000000
25 3 -0.788028111 -0.000000005 0.000012038
0.000000000
26 4 -0.788028111 0.000000000
0.000003393 0.000000000
27 5 -0.788028111 0.000000000
0.000000956 0.000000000
-----------------
DENSITY CONVERGED
-----------------
FINAL ENERGY IS -0.7880281115 AFTER 27 ITERATIONS
Man sollte immer versuchen, die Startwellenfunktion zu verbessern. In der Regel gelingt das dadurch, dass man Elektronen aus dem System entfernt und mit dem entsprechenden Kation rechnet und dann die berechneten MO's als Startorbitale benutzt (GUESS=MOREAD). Im obigen Fall führt das allerdings nicht zum Erfolg. Es ist wichtig, sich klar zu machen, dass die MO's (obwohl es Ein-Elektron-Funktionen sind) von der Elektron-Elektron-Wechselwirkung abhängen. Unten ist der Vergleich der MO's für cyclisches H32+ und H3+ (violett) wiedergegeben:
------------
EIGENVECTORS
------------
1 2
3 4
5
-1.2184
-0.7067 -0.7067 0.2886
0.2886
A' E'
E' E'
E'
1 H 1 S 0.239368 -0.200101 -0.346586
0.512453 0.887594
2 H 1 S 0.278307 -0.328106 -0.568297
-0.635428 -1.100594
3 H 2 S 0.239368 -0.200101 0.346586
0.512453 -0.887594
4 H 2 S 0.278307 -0.328106 0.568297
-0.635428 1.100594
5 H 3 S 0.239368 0.400203
0.000000 -1.024905 0.000000
6 H 3 S 0.278307 0.656213
0.000000 1.270857 0.000000
1 2
3 4
5
-0.7986
-0.3101 -0.3101 0.6649
0.6649
A' E'
E' E'
E'
1 H 1 S 0.203517 -0.155725 -0.269724
0.527634 0.913889
2 H 1 S 0.302903 -0.381038 -0.659977
-0.605172 -1.048189
3 H 2 S 0.203517 -0.155725 0.269724
0.527634 -0.913889
4 H 2 S 0.302903 -0.381038 0.659977
-0.605172 1.048189
5 H 3 S 0.203517 0.311450
0.000000 -1.055269 0.000000
6 H 3 S 0.302903 0.762076
0.000000 1.210344 0.000000
6
0.3496
A'
1 H 1 S 0.761845
2 H 1 S -0.533008
3 H 2 S 0.761845
4 H 2 S -0.533008
5 H 3 S 0.761845
6 H 3 S -0.533008
6
0.7516
A'
1 H 1 S 0.772195
2 H 1 S -0.519425
3 H 2 S 0.772195
4 H 2 S -0.519425
5 H 3 S 0.772195
6 H 3 S -0.519425
Eine Feinsteuerung der SCF-Prozedur kann man mit $SCF vornehmen.
* * * convergence accelerators * * *
Generally speaking, the simpler the HF function, the better its convergence.
Das stimmt nicht generell! Wenn das Molekül sehr klein
ist, z.B. H2-, kann man mit einer minimalen Basisfunktion
nicht viel variieren. Bei einer Bindungslänge von R = 2
Å konvergiert STO-6G nicht, wohl aber 31G.
In our experience, the majority of RHF, ROHF, and UHF runs will converge readily
from GUESS=HUCKEL.
GVB runs typically require GUESS=MOREAD, although the Huckel guess usually works
for NPAIR=0. RHF convergence is the best, closely followed by ROHF. In the
current implementation in GAMESS, ROHF is always better convergent than the
closely related unrestricted high spin UHF. For example, the radical cation of
diphosphine converges in 12 iterations for ROHF and 15 iterations for UHF,
starting from the neutral's closed shell orbitals.
GVB calculations require much more care, and cases with NPAIR greater than one
are particularly difficult.Unfortunately, not all HF runs converge readily. The
best way to improve your convergence is to provide better starting orbitals! In
many cases, this means to MOREAD orbitals from some simpler HF case. For example,
if you want to do a doublet ROHF, and the HUCKEL guess does not seem to converge,
do this: Do an RHF on the +1 cation. RHF is typically more stable than ROHF,
UHF, or GVB, and cations are usually readily convergent. Then MOREAD the
cation's orbitals into the neutral calculation which you wanted to do at first.
GUESS=HUCKEL does not always guess the correct electronic configuration. It may
be useful to use PRTMO in $GUESS during a CHECK run to examine the starting
orbitals, and then reorder them with NORDER if that seems appropriate.
Of course, by default GAMESS uses the convergence procedures which are usually
most effective. Still, there are cases which are difficult, so the $SCF group
permits you to select several alternative methods for improving convergence.
Briefly, these are
EXTRAP. This extrapolates the three previous Fock matrices, in an attempt
to jump ahead a bit faster. This is the most powerful of the old-fashioned
accelerators, and normally should be used at the beginning of any SCF run. When
an extrapolation occurs, the counter at the left of the SCF printout is set to
zero.
DAMP. This damps the oscillations between several successive Fock
matrices. It may help when the energy is seen to oscillate wildly. Thinking
about which orbitals should be occupied initially may be an even better way to
avoid oscillatory behavior.
SHIFT. This shifts the diagonal elements of the virtual part of the Fock
matrix up, in an attempt to uncouple the unoccupied orbitals from the occupied
ones. At convergence, this has no effect on the orbitals, just their orbital
energies, but will produce different (and hopefully better) orbitals during the
iterations.
RSTRCT. This limits mixing of the occupied orbitals with the empty ones,
especially the flipping of the HOMO and LUMO to produce undesired electronic
configurations or states. This should be used with caution, as it makes it very
easy to converge on incorrect electronic configurations, especially if DIIS is
also used. If you use this, be sure to check your final orbital energies to see
if they are sensible. A lower energy for an unoccupied orbital than for one of
the occupied ones is a sure sign of problems.
DIIS. Direct Inversion in the Iterative Subspace is a modern method, due
to Pulay, using stored error and Fock matrices from a large number of previous
iterations to interpolate an improved Fock matrix. This method was developed to
improve the convergence at the final stages of the SCF process, but turns out to
be quite
powerful at forcing convergence in the initial stages of SCF as well. By giving
ETHRSH as 10.0 in $SCF, you can practically guarantee that DIIS will be
in effect from the first iteration. The default is set up to do a few iterations
with
conventional methods (extrapolation) before engaging DIIS. This is because DIIS
can sometimes converge to solutions of the SCF equations that do not have the
lowest possible energy. For example, the 3-A-2 small angle state of SiLi2 (see
M.S.Gordon and M.W.Schmidt, Chem.Phys.Lett., 132, 294-8(1986 )) will readily
converge with DIIS to a solution with a reasonable S 2 , and an energy about 25
milliHartree above the correct answer. A SURE SIGN OF TROUBLE WITH DIIS IS WHEN
THE ENERGY RISES TO ITS FINAL VALUE. However, if you obtain orbitals at one
point on a PES without DIIS, the subsequent use of DIIS with MOREAD will
probably not introduce any problems. Because DIIS is quite powerful, EXTRAP,
DAMP, and SHIFT are all turned off once DIIS begins to work. DEM and RSTRCT will
still be in use, however.
SOSCF. Approximate second-order (quasi-Newton) SCF orbital optimization.
SOSCF will converge about as well as DIIS at the initial geometry, and slightly
better at subsequent geometries. There's a bit less work solving the SCF
equations, too. The method kicks in after the orbital gradient falls below
SOGTOL. Some systems, particularly transition metals with ECP basis sets, may
have Huckel orbitals for which the gradient is much larger than SOGTOL. In this
case it is probably better to use DIIS instead, with a large ETHRSH, rather than
increasing SOGTOL, since
you may well be outside the quadratic convergence region. SOSCF does not exhibit
true second order convergence since it uses an approximation to the inverse
hessian. SOSCF will work for MOPAC runs, but is slower in this case. SOSCF will
work for UHF, but the convergence is slower than DIIS. SOSCF will work for
non-Abelian ROHF cases, but may encounter problems if the open shell is
degenerate.
DEM. Direct energy minimization should be your last recourse. It explores
the "line" between the current orbitals and those generated by a conventional
change in the orbitals, looking for the minimum energy on that line. DEM should
always lower the energy on every iteration, but is very time consuming, since
each of the points considered on the line search requires evaluation of a Fock
operator. DEM will be skipped once the density change falls below DEMCUT, as the
other methods should then be able to affect final convergence. While DEM is
working, RSTRCT
is held to be true, regardless of the input choice for RSTRCT. Because of this,
it behooves you to be sure that the initial guess is occupying the desired
orbitals. DEM is available only for RHF. The implementation in GAMESS resembles
that of R.Seeger and J.A.Pople, J.Chem.Phys. 65, 265-271(1976 ). Simultaneous
use of DEM and DIIS resembles the ADEM-DIOS method of H.Sellers, Chem.Phys.Lett.
180, 461-465(1991 ). DEM does not work with direct SCF.
Weitere Problemfälle:
H2-, STO-6G, bei R > 2 Å,
NO3,
Seitenanfang |