Restarting EPW with finer kf/qf grids

Dear all,

I am currently trying to compute the electron-phonon coupling of some compounds.
now,I need a finer k/q mesh grids,but i am not sure that is right.
I set:
ep_coupling=.ture.
elph=.ture.
kmaps=.ture.
epbwrite=.false.
epbread=.ture.
epwwrite=.false.
epwread=.ture.
wannierize=.ture.
ephwrite=.ture.

and the other question is can i use it to restart with different degaussw and degaussq ?

Thank you, I am looking forward to your reply.

Regards

Dear YSW:

ep_coupling=.true.
elph=.true.
kmaps=.true.
epbwrite=.false.
epbread=.false.
epwwrite=.false.
epwread=.true.
wannierize=.false.
ephwrite=.true.

If you already have the “prefix.epmatwp” file, you can restart calculations with different fine k/q grids using the lines above.

and the other question is can i use it to restart with different degaussw and degaussq ?

In this case, you don’t need to repeat the evaluation of e-ph vertex on fine grids if your fine k/q grids are unchanged.
(I assume you are performing superconductivity calculations) If you already have ephwrite files, you can reuse them with different degaussw and degaussq .

Sincerely,

H. Lee

Dear H. Lee

Thank you,I am so happy to see your reply.
You are right,I am performing superconductivity calculations,and it is working.

but now, I have a new question, someone tell me “fsthick is not a convergence parameter”. Is it right?
In my case, I tried to set fsthick to ten times the highest phonon energy.


Sincerely,

YSW

Dear YSW:

but now, I have a new question, someone tell me “fsthick is not a convergence parameter”. Is it right?
In my case, I tried to set fsthick to ten times the highest phonon energy.

First, I would like to emphasize that I am not a right person who can give you a clear answer to this question since I am a software engineer.

From an implementation point of view, many expressions, for example for superconducting properties, contain the Dirac delta function, for example of the form of \delta(\varepsilon_{m,{\bf k}+{\bf q}}-\varepsilon_{\text F}) .
As you know, currently EPW simulates the Dirac delta functions as the Gaussian functions and as \varepsilon_{m,{\bf k}+{\bf q}} goes far away from the Fermi energy \varepsilon_{\text F}, the Dirac delta function of the form above (approximated as Gaussian functions) approaches zero.
This means that in superconducting calculations, it is not meaningful to consider the states at the energy far away from the Fermi level since the term including Dirac delta functions goes to zero in this case.

So by introducing fsthick, we can skip meaningless evaluations which eventually lead to the zero value.

Therefore, although I am not clear whether or not I can say it is a convergence parameter, the only thing I can say is that fsthick should be set so that beyond the range fsthick covers, the Dirac delta functions (approximated as Gaussian functions) should go to almost zero value and we can safely skip evaluations. Conversely, the range fsthick covers should not be too small since in this case we can exclude the non-zero contributions.

Sincerely,

H. Lee

Dear H. Lee

Thank you for your reply,I think I am understand,
fsthick is just a parameter to skip meaningless evaluations, help us to reduce computation for long simulations.

In my case, maybe I need to increase it,and see if lambda changes.Is it right?
If I want to change fsthick.Need I to repeat the evaluation of e-ph vertex on fine grids ?( my fine k/q grids are unchanged)


Sincerely,

YSW

Dear H. Lee:

In this case, you don’t need to repeat the evaluation of e-ph vertex on fine grids if your fine k/q grids are unchanged.
(I assume you are performing superconductivity calculations) If you already have ephwrite files, you can reuse them with different degaussw and degaussq .

In my case,I use restart.fmt calculation with different degaussw, but I get the same results of lambda. My kf/qf grids are unchanged.
If it means convergence, why I increase kf/qf grids ,lambda have a big changed (about 0.2).

I am so confused and looking forward to your reply.


Sincerely,

YSW

Dear H. Lee

For these questions, I test them with EXAMPLE(MgB2).
I must delet restart.fmt to restart calculation with different degaussw so that I can get different lambda.
I test MgB2’s lambda with kf/qf (40/10 ,50/10 ,60/10 ,70/10 ,60/20 ,60/30),respectly.
Can I through (40/10 ,50/10 ,60/10 ,70/10) to determine whether the kf grids converges?
and through (60/10 ,60/20 ,60/30) to determine whether the qf grids converges?

Anisotropic Migdal-Eliashberg theory using Wannier functions DOI: 10.1103/PhysRevB.87.024505

In this paper, MgB2 is converged with kf/qf (60/30)

my degaussw will set fsthick/4, and fsthick I will increase it until lambda is unchanged.
I am looking forward to your opinion.

Sincerely,

YSW

Dear YSW:

If I want to change fsthick.Need I to repeat the evaluation of e-ph vertex on fine grids ?( my fine k/q grids are unchanged)

Since the number of wavevectors within the Fermi window changes depending on the value of fsthick (for example, please find the line containing “We only need to compute … q-points” in epw.out) You have to recalculate e-ph vertex even if your k/q grids are unchanged.

Regarding the convergence, you need to converge quantities w.r.t both the broadening and the # of grids.

PS) Could you confirm that your lambda doesn’t change with any unrealistic degaussw (very large and very small degaussw)?

Sincerely,

H. Lee

Dear H. Lee

PS) Could you confirm that your lambda doesn’t change with any unrealistic degaussw (very large and very small degaussw)?

Lambda is changed, when I repeat the evaluation of e-ph vertex on fine grids.If I not repeat it, lambda is unchanged.
I use degaussw 0.1 and 0.2,respectively.


Sincerely,

YSW

Dear H. Lee

I realized a problem.

In this case, you don’t need to repeat the evaluation of e-ph vertex on fine grids if your fine k/q grids are unchanged.

the evaluation of e-ph vertex,does it mean restart the interpolation part ?
I just delete restart.fmt and restart with a new fsthick,but I have correct range of bands in prefix.lambda_FS.


Sincerely,

YSW

Dear H. Lee

There are epw.in that I used for two calculations.

First(include restart with different fsthick,and the lambda were different before and after the restart)

–
&inputepw
prefix = ‘MgB2’,
amass(1) = 24.305,
amass(2) = 10.811
outdir = ‘./’

ep_coupling = .true.
elph = .true.
kmaps = .false.
epbwrite = .true.
epbread = .false.

epwwrite = .true.
epwread = .false.

etf_mem = 1

nbndsub = 5,

wannierize = .true.
num_iter = 500
dis_froz_max= 8.8
proj(1) = ‘B:pz’
proj(2) = ‘f=0.5,1.0,0.5:s’
proj(3) = ‘f=0.0,0.5,0.5:s’
proj(4) = ‘f=0.5,0.5,0.5:s’

iverbosity = 2

eps_acustic = 2.0 ! Lowest boundary for the phonon frequency
ephwrite = .true. ! Writes .ephmat files used when Eliasberg = .true.

fsthick = 0.05 ! eV
degaussw = 0.01 ! eV
nsmear = 1
delta_smear = 0.04 ! eV

degaussq = 0.5 ! meV
nqstep = 500

eliashberg = .true.

laniso = .true.
limag = .true.
lpade = .true.

conv_thr_iaxis = 1.0d-4

wscut = 1.0 ! eV Upper limit over frequency integration/summation in the Elisashberg eq

nstemp = 1 ! Nr. of temps
temps = 15.00 ! K provide list of temperetures OR (nstemp and temps = tempsmin tempsmax for even space mode)

nsiter = 500

muc = 0.16

dvscf_dir = ‘../phonons/save’

nk1 = 6
nk2 = 6
nk3 = 6

nq1 = 6
nq2 = 6
nq3 = 6

mp_mesh_k = .true.
nkf1 = 20
nkf2 = 20
nkf3 = 20

nqf1 = 20
nqf2 = 20
nqf3 = 20
/


&inputepw
prefix = ‘MgB2’,
amass(1) = 24.305,
amass(2) = 10.811
outdir = ‘./’

ep_coupling = .true.
elph = .true.
kmaps = .true.
epbwrite = .false.
epbread = .false.

epwwrite = .false.
epwread = .true.

etf_mem = 1

nbndsub = 5,

wannierize = .false.
num_iter = 500
dis_froz_max= 8.8
proj(1) = ‘B:pz’
proj(2) = ‘f=0.5,1.0,0.5:s’
proj(3) = ‘f=0.0,0.5,0.5:s’
proj(4) = ‘f=0.5,0.5,0.5:s’

iverbosity = 2

eps_acustic = 2.0 ! Lowest boundary for the phonon frequency
ephwrite = .true. ! Writes .ephmat files used when Eliasberg = .true.

fsthick = 0.2 ! eV
degaussw = 0.05 ! eV
nsmear = 1
delta_smear = 0.04 ! eV

degaussq = 0.5 ! meV
nqstep = 500

eliashberg = .true.

laniso = .true.
limag = .true.
lpade = .true.

conv_thr_iaxis = 1.0d-4

wscut = 1.0 ! eV Upper limit over frequency integration/summation in the Elisashberg eq

nstemp = 1 ! Nr. of temps
temps = 15.00 ! K provide list of temperetures OR (nstemp and temps = tempsmin tempsmax for even space mode)

nsiter = 500

muc = 0.16

dvscf_dir = ‘../phonons/save’

nk1 = 6
nk2 = 6
nk3 = 6

nq1 = 6
nq2 = 6
nq3 = 6

mp_mesh_k = .true.
nkf1 = 20
nkf2 = 20
nkf3 = 20

nqf1 = 20
nqf2 = 20
nqf3 = 20
/

Secound

–
&inputepw
prefix = ‘MgB2’,
amass(1) = 24.305,
amass(2) = 10.811
outdir = ‘./’

ep_coupling = .true.
elph = .true.
kmaps = .false.
epbwrite = .true.
epbread = .false.

epwwrite = .true.
epwread = .false.

etf_mem = 1

nbndsub = 5,

wannierize = .true.
num_iter = 500
dis_froz_max= 8.8
proj(1) = ‘B:pz’
proj(2) = ‘f=0.5,1.0,0.5:s’
proj(3) = ‘f=0.0,0.5,0.5:s’
proj(4) = ‘f=0.5,0.5,0.5:s’

iverbosity = 2

eps_acustic = 2.0 ! Lowest boundary for the phonon frequency
ephwrite = .true. ! Writes .ephmat files used when Eliasberg = .true.

fsthick = 0.2 ! eV
degaussw = 0.05 ! eV
nsmear = 1
delta_smear = 0.04 ! eV

degaussq = 0.5 ! meV
nqstep = 500

eliashberg = .true.

laniso = .true.
limag = .true.
lpade = .true.

conv_thr_iaxis = 1.0d-4

wscut = 1.0 ! eV Upper limit over frequency integration/summation in the Elisashberg eq

nstemp = 1 ! Nr. of temps
temps = 15.00 ! K provide list of temperetures OR (nstemp and temps = tempsmin tempsmax for even space mode)

nsiter = 500

muc = 0.16

dvscf_dir = ‘../phonons/save’

nk1 = 6
nk2 = 6
nk3 = 6

nq1 = 6
nq2 = 6
nq3 = 6

mp_mesh_k = .true.
nkf1 = 20
nkf2 = 20
nkf3 = 20

nqf1 = 20
nqf2 = 20
nqf3 = 20
/

and I get the same results of two calculation in prefix.a2f

Integrated el-ph coupling

0.8962491 0.8962620 0.8962763 0.8962918 0.8963086 0.8963266 0.8963459 0.8963664 0.8963883 0.8964114

Phonon smearing (meV)

0.5000000 0.5500000 0.6000000 0.6500000 0.7000000 0.7500000 0.8000000 0.8500000 0.9000000 0.9500000

Electron smearing (eV) 0.0500000
Fermi window (eV) 0.2000000
Summed el-ph coupling 0.8961873

Sincerely,

YSW

Dear YSW:

Could you clarify your questions? It seems to me that your results are obvious; with different fsthick, different lambda, but with the same fsthick, same lambda.

Sincerely,

H. Lee

Dear H. Lee:

I just restart the interpolation part, I donot konw whether repeat the evaluation of e-ph vertex ?
but I get a good result.So, is it a successful calculation? even though it is no convergent.

Sincerely,

YSW

Dear YSW:

I donot konw whether repeat the evaluation of e-ph vertex ?

Could you provide the full output of epw.out for your restart calculation so that I can check whether or not the evaluation of e-ph vertex was repeated?

Sincerely,

H. Lee