[molpro-user] bad casscf convergence with cpmcscf directive

Sve N goretoffel at hotmail.de
Wed Feb 5 09:56:26 GMT 2014


Dear molpro users and developers,
the convergence of the scf of a casscf calculation seemingly depends on whether a cpmcscf directive is present in the multi block, or not. Mostly this happens at some point in an optimization and often is solvable by doing a singlepoint and energy only calculation for the structure, and then, with the converged wfu, resuming the optimization. For the input I write below even with the converged wfu from the first multi block, the second one, with the cpmcscf directive reaches the maximum number of iterations:

***
memory,100,m

BASIS
DEFAULT=6-31+G*
END;

symmetry,nosym
orient,noorient
Angstrom
geomtyp=xyz
geometry={
    4
 
 N     0.000000     0.000000     0.000000
 F     0.000000     0.000000     1.434600
 H     0.000000     1.007860    -0.191804
 H     0.961099    -0.303437    -0.191795
}

{hf; save,2140.2}

{multi
occ,12
closed,2
wf,18,1,0; state,4
wf,18,1,2; state,4
}

{multi
maxit,40
occ,12
closed,2
wf,18,1,0; state,4
wf,18,1,2; state,4
cpmcscf,grad,1.1,ms2=0,accu=1.d-5,record=5101.1
}

{multi
maxit,40
occ,12
closed,2
wf,18,1,0; state,4
wf,18,1,2; state,4
}

---

____________________________________________________
This results in
first multi scf:
 ITER. MIC  NCI  NEG     ENERGY(VAR)     ENERGY(PROJ)   ENERGY CHANGE     GRAD(0)  GRAD(ORB)   GRAD(CI)     STEP       TIME

   1   80   49    0    -154.63964739    -154.77949122   -0.13984384    0.33212873 0.00026478 0.08669871  0.10D+01      2.87
   2   79   92    0    -153.52558790    -151.72624807    1.79933983    0.29115246 0.00012134 2.69402663  0.58D+00      8.25
   3   77   73    0    -154.61598831    -154.75143209   -0.13544378    0.62374711 0.00004076 0.38421223  0.78D+00     12.89
   4   41   72    0    -154.76451568    -154.76861142   -0.00409574    0.08876653 0.00000005 0.00234610  0.21D+00     17.38
   5   40   59    0    -154.76866112    -154.76866326   -0.00000214    0.00195771 0.00000001 0.00020957  0.46D-02     21.18
   6   38   30    0    -154.76866326    -154.76866326   -0.00000000    0.00000833 0.00000002 0.00026626  0.24D-03     23.03

 ** WVFN ****  CONVERGENCE REACHED, FINAL GRADIENT:  0.77D-05

second multi scf:
 ITER. MIC  NCI  NEG     ENERGY(VAR)     ENERGY(PROJ)   ENERGY CHANGE     GRAD(0)  GRAD(ORB)   GRAD(CI)     STEP       TIME

   1   42   76    0    -154.76866326    -154.76866327   -0.00000001    0.00000766 0.00000000 0.00012848  0.10D-02      4.29
   2   42   57    0    -154.76866327    -154.76866328   -0.00000001    0.00000819 0.00000000 0.00022740  0.10D-02      8.16
   3   43   56    0    -154.76866329    -154.76866329   -0.00000001    0.00000809 0.00000000 0.00020411  0.71D-03     12.09
   4   42   57    0    -154.76866329    -154.76866331   -0.00000001    0.00000731 0.00000000 0.00020463  0.13D-02     15.93
   5   42   55    0    -154.76866331    -154.76866332   -0.00000001    0.00000882 0.00000000 0.00024510  0.95D-03     19.65
[...]
  36   42   53    0    -154.76866356    -154.76866356   -0.00000000    0.00000396 0.00000000 0.00011080  0.54D-03    136.25
  37   42   53    0    -154.76866356    -154.76866356   -0.00000000    0.00000372 0.00000000 0.00010402  0.51D-03    139.95
  38   42   53    0    -154.76866356    -154.76866357   -0.00000000    0.00000349 0.00000000 0.00009744  0.48D-03    143.59
  39   42   58    0    -154.76866357    -154.76866357   -0.00000000    0.00000327 0.00000000 0.00009110  0.45D-03    147.64

 ** WVFN ****  MAXIMUM NUMBER OF ITERATIONS REACHED

third multi scf:
 ITER. MIC  NCI  NEG     ENERGY(VAR)     ENERGY(PROJ)   ENERGY CHANGE     GRAD(0)  GRAD(ORB)   GRAD(CI)     STEP       TIME

   1   30   43    0    -154.76866357    -154.76866357   -0.00000000    0.00000305 0.00000252 0.00003671  0.11D-03      2.30

 ** WVFN ****  CONVERGENCE REACHED, FINAL GRADIENT:  0.30D-05
____________________________________________________


This was tested with the molpro2012 binary version patchlvl 3, as well as my self compiled one, patchlvl 6, and some molpro2010 p24 version. All Linux x86_64, different intel processors, independent of single- or multicore usage. I'm quite sure it is not a problem of the triplet states, the input is just a random example, where it happens reproducible at a certain structure.
Is this a bug, or for some reason (like determinants vs. csfs, or so) not avoidable?
Sven

(On a side note, for this reason in multi optimizations it would be helpful to be able to do something like:
text,begin; multi; {multi;cpmcscf}; optg,startcmd=text;
But if you try this, the program dies in the first multi block, telling you, that you need a cpmcscf directive in multi, for optg. Procedures don't help either.)
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.molpro.net/pipermail/molpro-user/attachments/20140205/8efe3280/attachment.html>


More information about the Molpro-user mailing list