QP corrections NaN in metal

Concerns issues with computing quasiparticle corrections to the DFT eigenvalues - i.e., the self-energy within the GW approximation (-g n), or considering the Hartree-Fock exchange only (-x)

Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano

Post Reply
S_Grillo
Posts: 5
Joined: Fri Jan 31, 2020 10:55 am

QP corrections NaN in metal

Post by S_Grillo » Tue Oct 03, 2023 11:59 am

Hello everyone,

This is my first time using Yambo for a metallic system and I think I'm missing something.
Here you find the QE nscf input and the Yambo -x -p p -g n QP calculation input.
Attached you find report, log and output of the Yambo calculation. Let me know if you need anything more.
Basically, I get NaN for the requested QP corrections.
At first I got

[WARNING] The system is a metal but Drude term not included.

Though I did not get the option to include it in the input (even with -V all) I tried to put it myself by hand ( DrudeWXd= ( 0.134000 , 0.005000 ) ) but doesn't seem to work.

####
&CONTROL
calculation = 'nscf'
restart_mode = 'from_scratch'
outdir = './tmp_bands_740'
prefix = 'sbte'
pseudo_dir = '/exports/work/sgrillo/pseudos'
verbosity = 'high'
wf_collect = .true.
/
&SYSTEM
degauss = 0.015
ecutwfc = 60
ibrav = 0
nat = 4
ntyp = 2
nbnd = 740
occupations = 'smearing'
smearing = 'cold'
lspinorb = .true.
noncolin = .true.
/
&ELECTRONS
!conv_thr = 1.D-8
mixing_beta = 0.7D0
diago_thr_init= 5.D-6,
diago_full_acc = .true.
/
ATOMIC_SPECIES
Sb 121.76 Sb.upf
Te 127.6 Te.upf
ATOMIC_POSITIONS {crystal}
Sb 0.4325866908 0.5296272998 0.0000000000
Te 0.4881635794 0.6105966855 0.5000000000
Sb 0.6394090555 0.5257728358 0.5000000000
Te 0.5838253742 0.4448117789 1.0000000000
K_POINTS {automatic}
1 1 30 0 0 0
CELL_PARAMETERS {angstrom}
20.0000000 0.00000000 0.0000000
0.0000000 20.00000000 0.0000000
0.0000000 0.00000000 3.9514800
####

#
HF_and_locXC # [R] Hartree-Fock
gw0 # [R] GW approximation
ppa # [R][Xp] Plasmon Pole Approximation for the Screened Interaction
dyson # [R] Dyson Equation solver
rim_cut # [R] Coulomb potential
em1d # [R][X] Dynamically Screened Interaction
Nelectro= 62.00000 # Electrons number
ElecTemp= 0.025852 eV # Electronic Temperature
BoseTemp=-1.000000 eV # Bosonic Temperature
OccTresh= 0.100000E-4 # Occupation treshold (metallic bands)
NLogCPUs=2 # [PARALLEL] Live-timing CPUs (0 for all)
FFTGvecs= 97051 RL # [FFT] Plane-waves
RandQpts= 1000000 # [RIM] Number of random q-points in the BZ
RandGvec= 100 RL # [RIM] Coulomb interaction RS components
#QpgFull # [F RIM] Coulomb interaction: Full matrix
% Em1Anys
0.000000 | 0.000000 | 0.000000 | # [RIM] X Y Z Static Inverse dielectric matrix
%
CUTGeo= "box XY" # [CUT] Coulomb Cutoff geometry: box/cylinder/sphere/ws X/Y/Z/XY..
% CUTBox
37.000000 | 37.000000 | 0.000000 | # [CUT] [au] Box sides
%
EXXRLvcs= 70 Ry # [XX] Exchange RL components
VXCRLvcs= 70 Ry # [XC] XCpotential RL components
#UseNLCC # [XC] If present, add NLCC contributions to the charge density
Chimod= "HARTREE" # [X] IP/Hartree/ALDA/LRC/PF/BSfxc
ChiLinAlgMod= "LIN_SYS" # [X] inversion/lin_sys,cpu/gpu
% QpntsRXp
1 | 1 | # [Xp] Transferred momenta
%
% BndsRnXp
1 | 78 | # [Xp] Polarization function bands
%
NGsBlkXp= 1500 mHa # [Xp] Response block size
CGrdSpXp= 100.0000 # [Xp] [o/o] Coarse grid controller
DrudeWXd= ( 0.134000 , 0.005000 )
####DrClassic
% LongDrXp
0.000000 | 0.000000 | 1.000000 | # [Xp] [cc] Electric Field
%
PPAPntXp= 27.21138 eV # [Xp] PPA imaginary energy
XTermKind= "none" # [X] X terminator ("none","BG" Bruneval-Gonze)
% GbndRnge
1 | 78 | # [GW] G[W] bands range
%
GTermKind= "BG" # [GW] GW terminator ("none","BG" Bruneval-Gonze,"BRS" Berger-Reining-Sottile)
GTermEn= 40.81708 eV # [GW] GW terminator energy (only for kind="BG")
DysSolver= "n" # [GW] Dyson Equation solver ("n","s","g")
%QPkrange # [GW] QP generalized Kpoint/Band indices
1|1|62|63|
16|16|62|63|
%
%QPerange # [GW] QP generalized Kpoint/Energy indices
1|1| 0.000000|-1.000000|
%


Sorry if it's a dumb matter or was already discusses elsewhere. Couldn't find it myself.

Best,

Simone
You do not have the required permissions to view the files attached to this post.

User avatar
claudio
Posts: 458
Joined: Tue Mar 31, 2009 11:33 pm
Location: Marseille
Contact:

Re: QP corrections NaN in metal

Post by claudio » Tue Oct 03, 2023 3:37 pm

Dear Simone

1) try to use the last yambo version and see if it solves the problem

2) try to remove the terminator

let us know
Claudio
Claudio Attaccalite
[CNRS/ Aix-Marseille Université/ CINaM laborarory / TSN department
Campus de Luminy – Case 913
13288 MARSEILLE Cedex 09
web site: http://www.attaccalite.com

User avatar
Daniele Varsano
Posts: 3816
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: QP corrections NaN in metal

Post by Daniele Varsano » Tue Oct 03, 2023 10:09 pm

Dear Simone,
I agree with Claudio, I do not think the issue is related with the terminator anyway try to avoid it and use the last release.
Moreover, I'm not sure that DrudeXd will be read in PP approximations (but I should properly check). In any case, PPA is not a good approximation for metals. Please have a look at this recent paper showing the performance of the Multipole approximation (MPA) for metals:
https://journals.aps.org/prb/abstract/1 ... 107.155130

The MPA is now available in the last release of the code and you can also think about using the constant approximation for intraband transitions at q=0, which is very easy to implement externally.

Here is a new tutorial on MPA prepared by Dario Leon:
https://www.yambo-code.eu/wiki/index.ph ... tion_(MPA)

Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

S_Grillo
Posts: 5
Joined: Fri Jan 31, 2020 10:55 am

Re: QP corrections NaN in metal

Post by S_Grillo » Wed Oct 04, 2023 10:17 am

Dear all,

Thank you very much for you replies.
Indeed I am aware of the new MPA implementation. Just wanted to start with PPA. Maybe bad, but I expect it to work at least!
Didn't have the newer version on the cluster I was using. Now I have it, I will try it out and let you know.
P.S.: switching off the terminator did not work.

Best

Simone

S_Grillo
Posts: 5
Joined: Fri Jan 31, 2020 10:55 am

Re: QP corrections NaN in metal

Post by S_Grillo » Wed Oct 04, 2023 12:21 pm

Dear all,

Now I tried with 5.2.0 but the calculations stop when starting the QP corrections.
Any ideas? Find the files attached.

Best

S
You do not have the required permissions to view the files attached to this post.

User avatar
claudio
Posts: 458
Joined: Tue Mar 31, 2009 11:33 pm
Location: Marseille
Contact:

Re: QP corrections NaN in metal

Post by claudio » Wed Oct 04, 2023 5:11 pm

Dear Simone

this can be a memory problem, try to reduce the number of plane waves, for example

FFTGvecs= 20000 mRy # [FFT] Plane-waves

and check if it works.
You can also compile Yambo with --enable-memory-profile
in such a way to check memory usage

Claudio
Claudio Attaccalite
[CNRS/ Aix-Marseille Université/ CINaM laborarory / TSN department
Campus de Luminy – Case 913
13288 MARSEILLE Cedex 09
web site: http://www.attaccalite.com

S_Grillo
Posts: 5
Joined: Fri Jan 31, 2020 10:55 am

Re: QP corrections NaN in metal

Post by S_Grillo » Fri Oct 06, 2023 4:32 pm

Dear all,

Changing version apparently did the job.
Now I don't get NaN anymore and I managed the memory problems.
Thanks!

S

Post Reply