Page 1 of 1

MaxGvecs for PBE in initialization

Posted: Mon Nov 05, 2018 7:57 am
by sdwang
Dear users and developers,
I used PBE in scf and nscf of PW with cutoff 80 Ry. And I generate the SAVE directory then. The yambo -i -V all gives:

setup # [R INI] Initialization
StdoHash= 40 # [IO] Live-timing Hashes
Nelectro= 32.00000 # Electrons number
ElecTemp= 0.000000 eV # Electronic Temperature
BoseTemp=-1.000000 eV # Bosonic Temperature
OccTresh=0.1000E-4 # Occupation treshold (metallic bands)
NLogCPUs=0 # [PARALLEL] Live-timing CPU`s (0 for all)
DBsIOoff= "none" # [IO] Space-separated list of DB with NO I/O. DB=(DIP,X,HF,COLLs,J,GF,CARRIERs,W,SC,BS,ALL)
DBsFRAGpm= "none" # [IO] Space-separated list of +DB to FRAG and -DB to NOT FRAG. DB=(DIP,X,W,HF,COLLS,K,BS,QINDX,RT,ELP
MaxGvecs= 68681 RL # [INI] Max number of G-vectors planned to use
and then following >yambo, in the out put r_setup, it gives
-Input file : yambo.in
| setup # [R INI] Initialization
| BoseTemp= 0.000000 eV # Bosonic Temperature
| MaxGvecs= 675 RL # [INI] Max number of G-vectors planned to use
As we see the MaxGvecs reduced from 68681 RL to 675 RL without any revision of the input of yambo -i.
My pseudo is C.pbe-mt_fhi.UPF and I changed it to ONCVPSP PBE but the results are same.
What this problem could be?

Thanks!

Shudong

Re: MaxGvecs for PBE in initialization

Posted: Mon Nov 05, 2018 11:00 am
by Daniele Varsano
Dear Shudong,
can you tell us what version and release are you using?

Thanks,
Daniele

Re: MaxGvecs for PBE in initialization

Posted: Mon Nov 05, 2018 11:04 am
by sdwang
Dear Daniele,
I used 4.2.4 and 4.3.0, both give the same results. I compiled 4.2.4 with double-precision and in the output MaxGvecs increase but still less than
in the input.

Best

Shudong

Re: MaxGvecs for PBE in initialization

Posted: Mon Nov 05, 2018 11:11 am
by Davide Sangalli
Dear Shudong,
can you please attach the report and the log file of the run. (r-setup and l-setup)
Also the file "config/report" in the yambo source, generated after compilation.

Best,
D.

Re: MaxGvecs for PBE in initialization

Posted: Tue Nov 06, 2018 8:53 am
by sdwang
Dear Davide,
Attached is the file including r_setup, log_setup, yambo.in and config.log of version 4.2.2.
Note here the file is for LDA input of QE since I found it is the same situation for LDA and PBE.

Thanks!

Shudong

Re: MaxGvecs for PBE in initialization

Posted: Thu Nov 08, 2018 11:50 pm
by Davide Sangalli
Dear Shudong,
indeed from your report there are in total 114127 G-vectors, but yambo prints shells only up to [S2749]:53769(0.9691E+5).
i.e. 53769 G-vectors and ~97 Ha (instead of 160 Ha for the density).

In the output I read

Code: Select all

 .-Input file : yambo.in
 | setup                          # [R INI] Initialization
 | BoseTemp= 0.000000     eV      # Bosonic Temperature
 | MaxGvecs=  53769       RL      # [INI] Max number of G-vectors planned to use
which is consistent with the report.
Yambo uses only g-vectors up to the last closed shell.
I guess the difference from 114127 to 53769 could be a problem with precision.
Probably due to precision issues it recognizes only the shells up to 96 Ha as closed.

Did you try to compile yambo with the flag "--enable-dp" ?
You specified that in the previous message. If so, can you upload the result of the setup with yambo compiled in dp ?
Notice that you also need to compile p2y in dp and re-run p2y before doing the setup.
Also please do not use version 4.2.1 but the last patchlevel: 4.2.4

I expect that dp neither will fully solve the problem, since the real solution would be to re-write the g-vectors as integers in the code ...
At least in the part which computes the shells. This is particularly problematic in systems with hexagonal cells unfortunately.

Best,
D.