Problems with a CCSD calculation (oscillations in convergence)

401 views
Skip to first unread message

Evgen Gr

unread,
Oct 11, 2018, 1:04:55 PM10/11/18
to molpro-user
Hello,

I have a CCSD calculation that exhibits oscillations in the energy and density during the CCSD iterations and cannot converge. I wonder what options are available to reach convergence in such a case? Can one get some improvement by changing the DIIS directive?

Best regards,
Evgeniy

Peterson, Kirk

unread,
Oct 11, 2018, 3:37:00 PM10/11/18
to Evgen Gr, molpro-user
Dear Evgeniy,

I’ve found that denominator shifts often are a big help in converging difficult ccsd calculations.  Try  shift,0.5,0.5  and go up from there.

best regards,

-Kirk

--
You received this message because you are subscribed to the Google Groups "molpro-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to molpro-user...@googlegroups.com.
To post to this group, send email to molpr...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/molpro-user/0f23e178-21e2-4740-9198-669954d58b7c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Evgen Gr

unread,
Oct 12, 2018, 8:32:33 AM10/12/18
to molpro-user
Dear Kirk,

Many thanks for your suggestion. Indeed, shifts and shiftp both with a value 0.9 have made CCSD converge!

Best regards,
Evgeniy

четверг, 11 октября 2018 г., 21:37:00 UTC+2 пользователь Kirk Peterson написал:

marc.ri...@gmail.com

unread,
Apr 11, 2021, 1:52:34 PM4/11/21
to molpro-user
Hello! I know this thread is a bit old, but maybe you can give me a hand. I have tried different values of shifts up to 3, and the calculation still does not seem to converge. It is a carbonate water system (CO3(2-)-H2O) at about 8 Angstrom of distance, with the total charge set to -2. Is there anything else that can be done to see if it converges? Otherwise I will take it as "impossible to converge". I have seen that for SCF one can change and tweak the DIIS, and it seems like those options are also there for CCSD. however, I am not sure what is safe to do and what is not.

Just in case, I will paste the input in here. The calculation is failing already for the avdz dimer calculation (run with MOLPRO 2020.2). Thanks!

------

memory,512,M

gthresh,zero=1.0e-16,twoint=3.0e-15,energy=1.0e-8,gradient=1.0e-6
gprint,orbitals


! Extrapolation from peterson's paper
! J. Chem. Phys. 131, 194105 (2009); http://dx.doi.org/10.1063/1.3265857
PROC EXTRAP
  A=(HF_HIGH - HF_LOW)/(EXP(-ALPHA*SQRT(X_HIGH)) - EXP(-ALPHA*SQRT(X_LOW)))
  E_HF_CBS=HF_LOW-A*EXP(-ALPHA*SQRT(X_LOW))
  B=(X_LOW/X_HIGH)^(-BETA)
  E_CCSD_CBS=(CCSD_LOW - B*CCSD_HIGH)/(1-B)
  C=(X_LOW/X_HIGH)^(-GAMMA)
  E_T_CBS=(T_LOW - C*T_HIGH)/(1-C)
ENDPROC

SYMMETRY,NOSYM
geomtyp=xyz
geometry={
O1 -7.14374406529000e-03 6.41852917239400e-02 -2.03334573306300e-02
H1 4.24679843748490e-01 -6.70494219029260e-01 -4.76448960656650e-01
H1 -3.11294167855020e-01 -3.48256259434400e-01 7.99182079538420e-01
C2 8.99609728114587e+00 4.36689428000000e-06 -4.49456827200000e-05
O2 8.89985735735297e+00 4.09640676830950e-01 1.23839531404131e+00
O2 9.29016482833988e+00 8.50545424950290e-01 -9.49292752277040e-01
O2 8.79807680807427e+00 -1.26018938015908e+00 -2.89068819493180e-01
}

basis={
default=avdz
}

CHARGE=-2,SPIN=0
{hf;start,atdens}
HF_LOW=ENERGY
{ccsd(t)-f12b,maxit=80,THRDEN=1.0e-9,THRVAR=1.0e-11;shift,1.0,1.0}
CCSD_LOW=ENERGC-ENERGR
T_LOW=ENERGY-ENERGC

e_AB_AB_t=energy

SYMMETRY,NOSYM
basis={
default=avtz
}

CHARGE=-2,SPIN=0
{hf;start,atdens}
HF_HIGH=ENERGY
{ccsd(t)-f12b,maxit=80,THRDEN=1.0e-9,THRVAR=1.0e-11;shift,1.0,1.0}
CCSD_HIGH=ENERGC-ENERGR
T_HIGH=ENERGY-ENERGC

e_AB_AB_q=energy

X_LOW=2
X_HIGH=3

ALPHA=4.30
BETA=2.483070
GAMMA=2.790300

! We run the extrapolation procedure

EXTRAP

! We obtain the Complete Basis Set energy

e_AB_AB_tq=E_HF_CBS+E_CCSD_CBS+E_T_CBS

geometry={
O1 -7.14374406529000e-03 6.41852917239400e-02 -2.03334573306300e-02
H1 4.24679843748490e-01 -6.70494219029260e-01 -4.76448960656650e-01
H1 -3.11294167855020e-01 -3.48256259434400e-01 7.99182079538420e-01
C2 8.99609728114587e+00 4.36689428000000e-06 -4.49456827200000e-05
O2 8.89985735735297e+00 4.09640676830950e-01 1.23839531404131e+00
O2 9.29016482833988e+00 8.50545424950290e-01 -9.49292752277040e-01
O2 8.79807680807427e+00 -1.26018938015908e+00 -2.89068819493180e-01
}

dummy,C2,O2
basis={
default=avdz
}

CHARGE=0,SPIN=0
{hf;start,atdens}
HF_LOW=ENERGY
{ccsd(t)-f12b,maxit=80,THRDEN=1.0e-9,THRVAR=1.0e-11;shift,1.0,1.0}
CCSD_LOW=ENERGC-ENERGR
T_LOW=ENERGY-ENERGC

e_A_A_t=energy

SYMMETRY,NOSYM
basis={
default=avtz
}

CHARGE=0,SPIN=0
{hf;start,atdens}
HF_HIGH=ENERGY
{ccsd(t)-f12b,maxit=80,THRDEN=1.0e-9,THRVAR=1.0e-11;shift,1.0,1.0}
CCSD_HIGH=ENERGC-ENERGR
T_HIGH=ENERGY-ENERGC

e_A_A_q=energy

X_LOW=2
X_HIGH=3

ALPHA=4.30
BETA=2.483070
GAMMA=2.790300

! We run the extrapolation procedure

EXTRAP

! We obtain the Complete Basis Set energy

e_A_A_tq=E_HF_CBS+E_CCSD_CBS+E_T_CBS

geometry={
O1 -7.14374406529000e-03 6.41852917239400e-02 -2.03334573306300e-02
H1 4.24679843748490e-01 -6.70494219029260e-01 -4.76448960656650e-01
H1 -3.11294167855020e-01 -3.48256259434400e-01 7.99182079538420e-01
C2 8.99609728114587e+00 4.36689428000000e-06 -4.49456827200000e-05
O2 8.89985735735297e+00 4.09640676830950e-01 1.23839531404131e+00
O2 9.29016482833988e+00 8.50545424950290e-01 -9.49292752277040e-01
O2 8.79807680807427e+00 -1.26018938015908e+00 -2.89068819493180e-01
}

dummy,O1,H1
basis={
default=avdz
}

CHARGE=-2,SPIN=0
{hf;start,atdens}
HF_LOW=ENERGY
{ccsd(t)-f12b,maxit=80,THRDEN=1.0e-9,THRVAR=1.0e-11;shift,1.0,1.0}
CCSD_LOW=ENERGC-ENERGR
T_LOW=ENERGY-ENERGC

e_B_B_t=energy

SYMMETRY,NOSYM
basis={
default=avtz
}

CHARGE=-2,SPIN=0
{hf;start,atdens}
HF_HIGH=ENERGY
{ccsd(t)-f12b,maxit=80,THRDEN=1.0e-9,THRVAR=1.0e-11;shift,1.0,1.0}
CCSD_HIGH=ENERGC-ENERGR
T_HIGH=ENERGY-ENERGC

e_B_B_q=energy

X_LOW=2
X_HIGH=3

ALPHA=4.30
BETA=2.483070
GAMMA=2.790300

! We run the extrapolation procedure

EXTRAP

! We obtain the Complete Basis Set energy

e_B_B_tq=E_HF_CBS+E_CCSD_CBS+E_T_CBS



IE_t=(e_AB_AB_t-e_A_A_t-e_B_B_t)*tokcal
IE_q=(e_AB_AB_q-e_A_A_q-e_B_B_q)*tokcal
IE_tq=(e_AB_AB_tq-e_A_A_tq-e_B_B_tq)*tokcal
~                                           

====

Peterson, Kirk

unread,
Apr 11, 2021, 2:48:52 PM4/11/21
to marc.ri...@gmail.com, molpro-user

Hi Marc,

 

I don't know what's going on, but I can get it to converge in about 250 iterations :^)

 

regards,  -Kirk

Marc Riera

unread,
Apr 11, 2021, 3:42:08 PM4/11/21
to Peterson, Kirk, molpro-user
Wow. I will increase the max it to 300 then. I did not do it earlier bc if something does jot converge in less than 80 means that usially something is odd. 
Thanks Kirk!

tibo...@gmail.com

unread,
Apr 12, 2021, 3:59:46 PM4/12/21
to molpro-user
I think I read a paper a while ago that studied CC convergence, and showed that for a given CC problem there is usually a critical threshold of level shifts, below which the CC iterations never converge and may start to oscillate, whereas for sufficiently large shifts convergence is possible, but may be very slow.
Reply all
Reply to author
Forward
0 new messages