Page 1 of 1

Convergence check w.r.t. to coarse mesh

Posted: Wed Aug 16, 2017 3:48 pm
by dinesh169
Hello Everyone,

I am trying to calculate e-ph scattering rates for 1L MoS2. I am checking the convergence of the calculations w.r.t. coarse k/q meshes. I could get correct wannier band structure in both the cases. Just to make sure everything works well I changed the coarse meshes keeping the fine meshes same (everything is labeled on graph). I have attached the results.

https://www.dropbox.com/s/ctsa4kjobcd1ao3/comp_new_old.pdf?dl=0

I see two major problems in it.

1. the magnitude of the scattering rates increases though the sum over.
2. after intepolation on coarser grid, there are eigen energies in bandgap region, which means interpolation goes wrong. I had made similar checks with graphene with similar meshes and it was consistent there. Is there any restriction on size of meshes while interpolation.


Here is the input file

-
&inputepw
prefix = 'mos2'
amass(1) = 32.065,
amass(2) = 95.94,
outdir = './'



iverbosity = 3

elph = .true.
epbwrite = .true.
epbread = .false.

epwwrite = .true.
epwread = .false.

nbndsub = 13
nbndskip = 0

wannierize = .true.
num_iter = 30000
iprint = 2
dis_win_max = 15
dis_win_min = -15
dis_froz_max= 7
dis_froz_min= -5
kmaps = .false.

proj(1)= 'f= 0.01, 0.36, 0.66 : s'
proj(2)= 'f= 0.56, 0.82, 0.04 : s'
proj(3)= 'f= 0.49, 0.34, 0.32 : s'
proj(4)= 'f= 0.88, 0.81, 0.32 : s'
proj(5)= 'f= 0.06, 0.82, 0.47 : s'
proj(6)= 'f= 0.82, 0.47, 0.45 : s'
proj(7)= 'f= 0.22, 0.14, 0.81 : s'
proj(8)= 'f= 0.61, 0.99, 0.93 : s'
proj(9)= 'f= 0.54, 0.87, 0.94 : s'
proj(10)= 'f= 0.33, 0.93, 0.04 : s'
proj(11)= 'f= 0.34, 0.89, 0.33 : s'
proj(12)= 'f= 0.79, 0.71, 0.26 : s'
proj(13)= 'f= 0.08, 0.22, 0.91 : s'


wdata(1) = 'bands_plot = true'
wdata(2) = 'begin kpoint_path'
wdata(3) = 'G 0.0000000 0.0000000 0.0000000 K 0.6666667 -0.3333333 0.000000'
wdata(4) = 'K 0.6666667 -0.3333333 0.0000000 M 0.5000000 -0.5000000 0.000000'
wdata(5) = 'M 0.5000000 -0.5000000 0.0000000 G 0.0000000 0.0000000 0.000000'
wdata(6) = 'end kpoint_path'
wdata(7) = 'conv_window = 2'
wdata(8) = 'num_print_cycles = 50'
wdata(9) = 'conv_tol = 1.0E-6'
wdata(10)= 'dis_conv_tol = 1.0E-10'
wdata(11)= 'dis_mix_ratio = 0.5'
wdata(12)= 'dis_num_iter = 8000'
wdata(13) = 'search_shells = 24'


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

parallel_k = .true.
parallel_q = .false.

fsthick = 5.0D10 ! eV
eptemp = 300 ! K (same as PRB 76, 165108)
degaussw = 0.025 ! eV

dvscf_dir = './save'
filukk = './mos2.ukk'

nkf1 = 300
nkf2 = 300
nkf3 = 1
nqf1 = 300
nqf2 = 300
nqf3 = 1

nk1 = 24 or 12
nk2 = 24 or 12
nk3 = 1

nq1 = 12 or 6
nq2 = 12 or 6
nq3 = 1
/
19 cartesian
0.0000000 0.0000000 0.0000000 0.0138889
0.0000000 0.0974577 0.0000000 0.0833333
0.0000000 0.1949153 0.0000000 0.0833333
0.0000000 0.2923730 0.0000000 0.0833333
0.0000000 0.3898307 0.0000000 0.0833333
0.0000000 0.4872884 0.0000000 0.0833333
0.0000000 -0.5847460 0.0000000 0.0416667
0.0844008 0.1461865 0.0000000 0.0833333
0.0844008 0.2436442 0.0000000 0.1666667
0.0844008 0.3411019 0.0000000 0.1666667
0.0844008 0.4385595 0.0000000 0.1666667
0.0844008 0.5360172 0.0000000 0.1666667
0.1688016 0.2923730 0.0000000 0.0833333


Thanks in advance for the help.

Best wishes,
Dinesh
University of Konstanz

Re: Convergence check w.r.t. to coarse mesh

Posted: Wed Aug 16, 2017 5:14 pm
by sponce
Dear dinesh169,

First a few remarks:
- num_iter = 30000 should be complete overkill. If it did not converge in ~2000 iterations, it will never converge
- On the figure you say the fine grids are 100. However on the input it seems 300. Are you sure you are comparing the same fine grids on the graph?
- degaussw = 0.025 seems a big large. I would use 0.01 or less (more difficult to converge).

You should definitely do the following tests:
- plot the electronic bandstructure interpolated using EPW (you need to put band_plot = .true. and provide filkf for the path (high symmetry point).
You need to do this for the 12x12x1 and 24x24x1 grids to make sure the interpolation is ok
- plot the phonon bandstructure interpolated using EPW (you need to put band_plot = .true. and provide filqf for the path (high symmetry point).
You need to do this for the 6x6x1 and 12x12x1 grids to make sure the interpolation is ok.
PS: you can do both in one run by providing filkf and filqf along the high sym. points.

The fact that you have states in the bandgap might indeed indicate an interpolation issue.

Best,
Samuel

Re: Convergence check w.r.t. to coarse mesh

Posted: Wed Aug 16, 2017 6:53 pm
by dinesh169
Dear Dr. Sponce,

First of all thank you very much for your super quick reply. I highly appreciate this.

I have been converging calculations w.r.t. to fine meshes as well, so in the input file pasted above is a copy paste error.
labels written on the picture are fine, its 100x100 k/q mesh there.

I will do the needful.
I wonder now, wannier orbitals give exactly the same bandstructure as that of DFT and then where does the interpolation goes wrong?


Best wishes,
Dinesh

Re: Convergence check w.r.t. to coarse mesh

Posted: Thu Aug 17, 2017 8:29 am
by sponce
Dear Dinesh,

The EPW implementation relies on an older version of the Wannier90 library. Therefore it might happen that Wannier produces a good interpolation but that something goes wrong in EPW (should not happen but its technically possible). I have personally noticed some very small difference in the results.

Therefore you should check with band_plot in EPW to be sure since that is the actual interpolation used (you can off course compare with nscf BS as well, should be the same).

Best,
Samuel

Re: Convergence check w.r.t. to coarse mesh

Posted: Tue Aug 29, 2017 12:42 pm
by dinesh169
Hello Everyone,

I am trying to resolve the above interpolation problem by increasing coarse k-mesh and I see this error in EPW code

"SVD found small singular value, Rejecting this shell and trying the next "

I also increased the search_shells from 12 to 24 but still same error occurs. I searched on this and found that it is because of elongated z-direction (I mean having vacuum in z-direction to form 2D structure). Is there any trick in wannier90 for sampling slabs/2D structures?

Thanks in advance.

Best wishes,
Dinesh

Re: Convergence check w.r.t. to coarse mesh

Posted: Thu Aug 31, 2017 1:55 pm
by carla.verdi
Dear Dinesh,

Do you get the same error if you run wannier90 separately?

Best,
Carla

Re: Convergence check w.r.t. to coarse mesh

Posted: Tue Sep 05, 2017 2:27 pm
by dinesh169
Hello Carla,

I increased "search_shells" rom 24 to 48 it worked.
But interpolated band structure is not very good.

Best wishes,

Re: Convergence check w.r.t. to coarse mesh

Posted: Mon Sep 11, 2017 1:22 pm
by dinesh169
Hello Everyone,

I want to inform that I have resolved the above interpolation error by increasing the coarse k-mesh to 36x36x1.

Best wishes,
Dinesh

Re: Convergence check w.r.t. to coarse mesh

Posted: Sat Sep 16, 2017 8:15 am
by carla.verdi
Hi Dinesh,

Thanks for letting us know!

Carla