[QE-users] Smearing or fixed occupations or something else proper for spin calculation

zhangkan3 at mail.sysu.edu.cn zhangkan3 at mail.sysu.edu.cn
Mon Jun 8 09:41:35 CEST 2020


Dear experts,

Focusing on spin-polarized system, I still have trouble on how to set variables for both scf and nscf calculations. And this trouble comes from BSE based calculation. Here my previous settings on my system:

 &system
  degauss =   7.3498618000d-03
  ibrav = 0
  nat = 4
  nspin = 2
  ntyp = 2
  ecutwfc =   8.0000000000d+01
  occupations = 'smearing'
  smearing = 'cold'
  starting_magnetization(1) =   1.0000000000d-01
  starting_magnetization(2) =   1.0000000000d-01
/
 &electrons
    conv_thr        =   1.0d-12
    diagonalization =  'cg'
diago_full_acc = .true.
/
ATOMIC_SPECIES
C  12.01  C_ONCV_PBE_fr.upf
N  14.01  N_ONCV_PBE_fr.upf
ATOMIC_POSITIONS crystal
N            0.0000000000       0.0000000000       0.5124828468
C            0.0000000000       0.0000000000       0.7579976664
C            0.0000000000       0.0000000000       0.0125047498
C            0.0000000000       0.0000000000       0.2670147420
CELL_PARAMETERS angstrom
      8.1142534611       0.0000000000       0.0000000000
     -4.0571267305       7.0271496300       0.0000000000
      0.0000000000       0.0000000000       5.0158372896
K_POINTS {automatic}
4 4 5 0 0 0

While I carried out BSE related calculation based on shifted k-grids (sigma,kernel and absorption), the warning occurs: WARNING: occupations outside of range [0,1] in wfn
The expert of BSE response like follow:

Note that the input you take from elsewhere (e.g. your QE input) may not be suitable for GW calculations, plus it happens sometimes that those online massive-calculation project will use a uniform set of parameters for many materials, and to give roughly more or less correct results.  But the accuracy in these calculations may not work for GW at all.




For example, your case is a semiconductor, then you do NOT need to use smearing at all.  You should use fixed occupation in this case.  Also, you use the cold smearing, that's why you get occupations larger than 1.0 (you may consult the original literature).  If you use Gaussian or Fermi-Dirac, this won't happen.  But again, to run BerkeleyGW correctly, if you are sure your case is a semiconductor, you should use fixed occupation.  (qeinputgenerator  for large-scale massive calculations use smearing and large smearing makes sense because the automatic code would not know if this material is metal or insulator or semiconductor beforehand.  But if you already know from your test runs, you should use the best setup for your production run.)

After this, I constrained the occupation like this:

 &system
  ibrav = 0
  nat = 4
  nspin = 2
  ntyp = 2
  ecutwfc =   80
  occupations = 'fixed'
  tot_magnetization         = 1
/
 &electrons
   conv_thr = 1.0d-10
   mixing_mode = 'plain'
   mixing_beta = 0.7
   mixing_ndim = 8
   diagonalization = 'david'
   diago_david_ndim = 4
   diago_full_acc = .true.
/
ATOMIC_SPECIES
C  12.01  C_ONCV_PBE_fr.upf
N  14.01  N_ONCV_PBE_fr.upf
ATOMIC_POSITIONS crystal
N            0.0000000000       0.0000000000       0.5124828468
C            0.0000000000       0.0000000000       0.7579976664
C            0.0000000000       0.0000000000       0.0125047498
C            0.0000000000       0.0000000000       0.2670147420
CELL_PARAMETERS angstrom
      8.1142534611       0.0000000000       0.0000000000
     -4.0571267305       7.0271496300       0.0000000000
      0.0000000000       0.0000000000       5.0158372896
K_POINTS {automatic}
4 4 5 0 0 0

But this time when I ran the first epsilon step, the error occurs:

Reading header of WFN
 Highest occupied band (unshifted grid) = 9
 Valence max    (unshifted grid) = .948300 eV
 Conduction min (unshifted grid) = -3.444951 eV
 Middle energy  (unshifted grid) = -1.248325 eV
 
 WFN ifmin/ifmax fields are inconsistent:
  - there is a valence state above the middle energy
  - there is a conduction state below the middle energy
 Possible causes are:
 (1) Your k-point sampling is too coarse and cannot resolve the Fermi energy. Try to carefully inspect your mean-field energies, and consider using a finer k-grid.
 (2) You are using eqp.dat and the QP corrections change the character of some states from valence<->conduction. In this case, you should use another mean-field theory that gives the same ground state as your GW calculation.
 (3) You are running inteqp, but you are either shifting the Fermi energy or using restricted transformation.
 ERROR: WFN ifmin/ifmax fields are inconsistent

It is very strange that v max is higher than middle energy and c min lower than it. The BSE expert suggested that I should check the qe outputs.

The error says your lowest conduction band has lower energy than your highest occupied band, which cannot be true. You should first check your DFT results to see whether it makes sense or not before proceeding with the GW calculations. Note that even if you have to use smearing for spin calculation, use nearly zero smearing in generating WFNs. This is required to get the correct Fermi level in BerkeleyGW.

All I could figure out is the setting is not corrected. For my system, What should I do? Thank you.

Sincerely,

Kan Zhang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20200608/c09af7a7/attachment.html>


More information about the users mailing list