Author Topic: evGW issues  (Read 248 times)

martijn

  • Full Member
  • ***
  • Posts: 35
  • Karma: +0/-0
evGW issues
« on: August 13, 2020, 05:18:15 pm »
Hi,

When running eigenvalue self-consistent GW calculations using 7.5 (a quick check suggests it's similar in 7.4.1) I observe the following:

1) The e(qp, HOMO) and e(qp,LUMO) values printed as part of the evgw loop are consistently slightly different to those printed in the table of all quasiparticle energies, e.g. -6.097 and -0.303 v.s. -6.099 and -0.302 in the example below

  10b1      -4.745    -6.099   -17.865   -19.164     1.299   -16.511     0.861     -0.161   
 ------------------------------------------------------------------------------------------
  16a1      -1.795    -0.302    -2.999    -2.064    -0.936    -4.492     0.942     -0.616E-01
  10b2      -1.418     0.155    -3.664    -2.538    -1.127    -5.237     0.932     -0.731E-01
  17a1      -1.296     0.446    -4.470    -3.455    -1.015    -6.212     0.926     -0.801E-01
  11b1      -1.004     0.703    -4.139    -3.201    -0.938    -5.846     0.928     -0.777E-01
   5a2      -0.536     1.282    -4.992    -3.823    -1.168    -6.809     0.929     -0.766E-01
 ------------------------------------------------------------------------------------------
 
 
 time elapsed for calculating density matrices :   0.008 sec
 all orbitals will be active in the correlation treatment
 ----- the HOMO/LUMO energies converged -----

 dRPA correlation energy:      -1.57556772
 calculation converged or iteration limited exceeded
 doing one final iteration and output
    ------------------------------------------------------------------------
                      QP-SCF iterations have converged                       
    ------------------------------------------------------------------------
    << evGW iteration       6 >>
    e(qp,HOMO) =                      -6.097075 eV
    e(qp,LUMO) =                      -0.302984 eV
    Correlation energy        =     -1.57556772
    ------------------------------------------------------------------------

And I might be seeing things but it appears that these slight differences only occur after the 1st evGW cycle.

2) When using contour integration using the highest occupied and lowest unoccupied orbitals rather than full GW I see, that for some system at least, qpeiter loop does not converge after 10 or even 30 iterations with the quasiparticle energies and what I assume to be the correlation part of the self energy oscillating:

gw: finished qpe microiteration          30 Sigma_c(HOMO) =    1.3750 eV
  10b1      -4.745    -6.119   -17.885   -19.164     1.279   -16.511     1.000       0.00   
 ------------------------------------------------------------------------------------------
  16a1      -1.795    -0.291    -2.988    -2.064    -0.924    -4.492     1.000       0.00   

gw: finished qpe microiteration          29 Sigma_c(HOMO) =    1.4254 eV
  10b1      -4.745    -6.114   -17.880   -19.164     1.284   -16.511     1.000       0.00   
 ------------------------------------------------------------------------------------------
  16a1      -1.795    -0.291    -2.988    -2.064    -0.924    -4.492     1.000       0.00

gw: finished qpe microiteration          28 Sigma_c(HOMO) =    1.1216 eV
  10b1      -4.745    -6.119   -17.885   -19.164     1.279   -16.511     1.000       0.00   
 ------------------------------------------------------------------------------------------
  16a1      -1.795    -0.291    -2.988    -2.064    -0.924    -4.492     1.000       0.00

 gw: finished qpe microiteration          27 Sigma_c(HOMO) =    1.3888 eV
  10b1      -4.745    -6.114   -17.880   -19.164     1.284   -16.511     1.000       0.00   
 ------------------------------------------------------------------------------------------
  16a1      -1.795    -0.291    -2.988    -2.064    -0.924    -4.492     1.000       0.00 

etc. etc.

While for the same structure the qpeiter loop in the case of a single-shot G0W0 calculation converges fine, so the qpeiter non-convergence must be somehow linked to the evGW loop.

Best,

Martijn 

chris.hol

  • Newbie
  • *
  • Posts: 8
  • Karma: +1/-0
Re: evGW issues
« Reply #1 on: August 18, 2020, 05:14:46 pm »
Dear Martijn,

to 1) The values reported in the "QP-SCF iteration" section are already estimated by a DIIS procedure and therefore slightly different than those reported by initial full list (which reports the unmodified outcome of the current iteration). But the differences are usually very low and should not matter too much.

to 2) convergence for evGW is not always easy to obtain, but we found DIIS to be rather effective. Setting the number of DIIS vectors to 8-15 (8 is the default in TM 7.5, in TM 7.4 it was 2) usually helps a lot in non-converging situations:
$rigw
 rpa
 evgw
 mxdiis 8

A lot of cases which diverged for me in 7.4 worked out using more DIIS vectors, though most of my molecules had C1 symmetry up to now, so for symmetric ones things may vary. But I would definitely give it a try : ). However note that the quasiparticle equation usually have more than one valid solution and therefore the final outcome may be influenced by the parameters of the calculation especially when more than HOMO/LUMO is corrected.

All the best,
Christof

martijn

  • Full Member
  • ***
  • Posts: 35
  • Karma: +0/-0
Re: evGW issues
« Reply #2 on: September 03, 2020, 12:58:22 am »
Thank you very much Christof. The combination of 7.5 and mxdiis 8 does the trick in all the problematic cases, except for one that now stops after 5 evGW cycles with the following error message:

========================
 internal module stack:
------------------------
    escf
    gworbitals
========================

 ZERO PIVOT - MATRIX SINGULAR
 escf ended abnormally


What could be the reason for this singularity? Looking at the quasiparticle energies at the end of each of the cycle, it appears that the calculation was converging fine:

e(qp,HOMO) =                      -6.356712 eV
 e(qp,LUMO) =                      -2.021820 eV
--
 e(qp,HOMO) =                      -6.579821 eV
 e(qp,LUMO) =                      -1.993222 eV
--
 e(qp,HOMO) =                      -6.593815 eV
 e(qp,LUMO) =                      -1.990465 eV
--
 e(qp,HOMO) =                      -6.594240 eV
 e(qp,LUMO) =                      -1.990462 eV


Thanks,

Martijn

chris.hol

  • Newbie
  • *
  • Posts: 8
  • Karma: +1/-0
Re: evGW issues
« Reply #3 on: September 04, 2020, 11:34:23 am »
Good to hear that it worked out in most cases!
Hm, in that one failed case this looks like the DIIS procedure failed to update (with specifically the LU decomposition of the DIIS matrix failing, and it may be a bug, I have to investigate this closer). You could try to set mxdiis to a different value in this case (try 4 or 12), it may run through for the moment - but indeed this should not happen. Also, make sure to delete any qpenergies file from previous runs before restarting (or rename them if you want to keep them for safety). Unfortunately I did not encounter this error yet  :(.

All the best
Christof

martijn

  • Full Member
  • ***
  • Posts: 35
  • Karma: +0/-0
Re: evGW issues
« Reply #4 on: September 25, 2020, 12:05:11 pm »
Thanks Christof! Changing mxdiis to 12 did the job.

Best,

Martijn