q-point error in mobility calculation

General discussion around the EPW software

Moderator: stiwari

Post Reply
bhundaag
Posts: 5
Joined: Thu Jul 13, 2023 5:42 pm
Affiliation: NAU

q-point error in mobility calculation

Post by bhundaag »

Dear All,

In an EPW restart calculation in order to calculate the electronic mobility of a two-dimensional system I faced the following error-
Error in routine tau_read (1):
Error: The current total number of q-point is not the same as the read one.

Your help to find out the reason behind this error is highly solicited.
Please note that the wannierization part worked out smoothly without any error and the wannier interpolated band structure, both electronic and phononic, matches well with the dft and dfpt results.

Thank you

xiaozha
Posts: 8
Joined: Mon Jun 07, 2021 7:59 pm
Affiliation: The University of Michigan

Re: q-point error in mobility calculation

Post by xiaozha »

Hi,

From your description, it seems that the problem is a change of the size of the q-point grid when restart calculation is performed. Could you double check if the q-grid has been kept consistent?

An example is say you started the calculation with a 20*20*20 q-grid, but increased the grid to 30*30*30 when doing a restart with e.g. prefix.tau_restart file present in the same folder. If that is the case, please delete these restart files then try to run the calculation again.

Thanks!
Best!
Xiao Zhang

bhundaag
Posts: 5
Joined: Thu Jul 13, 2023 5:42 pm
Affiliation: NAU

Re: q-point error in mobility calculation

Post by bhundaag »

Thank you very much. It worked.

bhundaag
Posts: 5
Joined: Thu Jul 13, 2023 5:42 pm
Affiliation: NAU

Re: q-point error in mobility calculation

Post by bhundaag »

Hi,

Although the initial error has been overcome following your suggestion, a new error has emerged now. The error is the following-

forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
epw.x 00000000012EB099 Unknown Unknown Unknown
epw.x 00000000012E996E Unknown Unknown Unknown
epw.x 0000000001279E92 Unknown Unknown Unknown
epw.x 00000000012077B3 Unknown Unknown Unknown
epw.x 000000000120F97B Unknown Unknown Unknown
libpthread.so.0 000000344A80F7E0 Unknown Unknown Unknown
epw.x 000000000057711B transport_mp_scat 348 transport.f90
epw.x 000000000044A716 ephwann_shuffle_ 1556 ephwann_shuffle.f90
epw.x 000000000042E5EE elphon_shuffle_wr 994 elphon_shuffle_wrap.f90
epw.x 000000000040732E MAIN__ 145 epw.f90
epw.x 0000000000406536 Unknown Unknown Unknown
libc.so.6 000000344A01ED20 Unknown Unknown Unknown
epw.x 0000000000406409 Unknown Unknown Unknown

And the code stops abruptly. The last few lines written in the epw.out file is the following-

Fermi Surface thickness = 1.000000 eV
This is computed with respect to the fine Fermi level -1.411836 eV
Only states between -2.411836 eV and -0.411836 eV will be included

Please note that, no error message has been printed in the epw.ot file. Also, available memory is probably not the issue here, since the node that I am allocating for this job has sufficient memory to run this job.

Looking forward to our help.

Thanks.

xiaozha
Posts: 8
Joined: Mon Jun 07, 2021 7:59 pm
Affiliation: The University of Michigan

Re: q-point error in mobility calculation

Post by xiaozha »

Hi,

Could you please provide the input of this calculation, and maybe a more complete epw.out to see if everything looks OK? Meanwhile, it looks like you are using SERTA? Could you also give it a try using IBTE and see it that will work?

Best!
Xiao

bhundaag
Posts: 5
Joined: Thu Jul 13, 2023 5:42 pm
Affiliation: NAU

Re: q-point error in mobility calculation

Post by bhundaag »

Hi,

The epw.in file is in the following. Please note that this input file is for a restart run to calculate the mobility values. The first epw run for wannierization ran well and the interpolated band structures are satisfactory.

&inputepw
prefix = 'MoS2'
outdir = './'

elph = .true.
epbwrite = .false.
epbread = .false.
epwwrite = .false.
epwread = .true.
etf_mem = 1


scattering = .true.
scattering_serta = .true.
int_mob = .false.
carrier = .true.
ncarrier = 1E19

! scissor = 1.6
nstemp = 17
temps = 100 900
! tempsmax = 900

restart = .true.
restart_step = 500

nbndsub = 17
! bands_skipped = 'exclude_bands = 1:4'

lifc = .true.
asr_typ = 'crystal'

wannierize = .false.
num_iter = 1500
iprint = 2
! dis_win_max = 18
! dis_froz_max= 8.5
proj(1) = 'Mo : d,p,s'
proj(2) = 'S : p,s'
wdata(1) = 'bands_plot = .true.'
wdata(2) = 'begin kpoint_path'
wdata(3) = 'G 0.00 0.00 0.00 M 0.5 0.00 0.00'
wdata(4) = 'M 0.50 0.00 0.00 K 0.33 0.33 0.00'
wdata(5) = 'K 0.33 0.33 0.00 G 0.00 0.00 0.00'
wdata(6) = 'end kpoint_path'
wdata(7) = 'bands_plot_format = gnuplot'
wdata(8) = 'guiding_centres = .true.'
wdata(9) = 'dis_num_iter = 500'
wdata(10) = 'num_print_cycles = 10'
! wdata(11) = 'dis_mix_ratio = 1.0'
wdata(12) = 'use_ws_distance = T'
wdata(12) = 'kmesh_tol = 0.000001'

elecselfen = .false.
phonselfen = .false.
a2f = .false.


fsthick = 1.0 ! eV
degaussw = 0.005 ! eV

dvscf_dir = './save'

! filkf = './kpt.txt'
nkf1 = 101
nkf2 = 101
nkf3 = 1
nqf1 = 51
nqf2 = 51
nqf3 = 1

nk1 = 21
nk2 = 21
nk3 = 1
nq1 = 3
nq2 = 3
nq3 = 1
/
5 cartesian
0.000000000 0.000000000 0.000000000
0.000000000 0.384900179 0.000000000
0.333333333 0.192450090 0.000000000
0.333333333 0.577350269 0.000000000
0.333333333 -0.192450090 0.000000000


The last few lines printed in the epw.out file is in the following

===================================================================
Scattering rate
===================================================================


Fermi Surface thickness = 1.000000 eV
This is computed with respect to the fine Fermi level -1.411836 eV
Only states between -2.411836 eV and -0.411836 eV will be included

After this line the job stops and note again that no error is printed in the epw.out file.

xiaozha
Posts: 8
Joined: Mon Jun 07, 2021 7:59 pm
Affiliation: The University of Michigan

Re: q-point error in mobility calculation

Post by xiaozha »

Hi,

While I don't see an obvious error in your input, there are a few things I'd suggest to try:

1. Could you please check the Fermi level the code print out, and whether the energy window you see at the tail of your output does cover the conduction band states you want (looks like you are looking at electron mobility)? If not, you may want to considering setting efermi_read to true and set the Fermi level to e.g. the CBM just to ensure that all the states you needs will be included. Note that the when evaluating the mobility, the code will decide the Fermi level based on the carrier density so this input will not be a problem.

2. After making sure of the above, I'd probably also give it a try with using the IBTE option instead of SERTA.

3. Which version of EPW are you using? Unless you are using very old versions, these lines are not anymore necessary:
5 cartesian
0.000000000 0.000000000 0.000000000
0.000000000 0.384900179 0.000000000
0.333333333 0.192450090 0.000000000
0.333333333 0.577350269 0.000000000
0.333333333 -0.192450090 0.000000000

Please see if these help.
Thanks!
Xiao

Post Reply