Hi everyone,
Before my actual calculations with EPW, I’m trying to check my band structure after wannierization.
I’ve been able to reproduce the electronic band structure with a good match between pw.x and EPW after wannierization. However my phonon dispersion has not matched accurately and also have some negative frequencies. I used course k grid as 888 and q-grid as 444. I’ve attached my plots.
I could do the ph.x calculation on 888 grid but they are computationally very expensive.
Can anyone suggest what can be done to accurately reproduce phonon band structure?
Thanks!
Prachi
Dear Prachi:
Could you provide all inputs and outputs for the generation of phonon dispersions with ph.x (+q2r.x, matdyn.x, etc.) and EPW?
Sincerely,
H. Lee
Dear Hyungjun,
Please find the attached zip folder with all the files.
Thanks a lot.
Best regards,
Prachi.
Hi Prachi,
Could you double-check your “path.dat” and use “crystal” coordinates if you have not? Maybe this discussion is helpful https://forum.epw-code.org/t/different-energy-range-of-band-structure-in-epw-and-quantum-espresso/828/1
Best,
Hari Paudyal
Dear Hari,
Yes, the path file is correct and it is in crystal coordinates. It is same for both electronic and phonon band structure.
Best regards,
Prachi.
Hi Prachi,
One more important thing you can check is “asr_typ”; https://docs.epw-code.org/doc/Inputs.html#asr-typ
You can try;
- By default, EPW uses the ‘simple’ rule. Could you double-check which rule you have used in QE? and make it ‘simple’ in QE run (if you have used another) and compare?
- If you want to apply ‘crystal’ rule in EPW, you need to set “lifc = .true.” and "asr_typ = ‘crystal’ " and provide ifc.q2r file in “dvdcf_fir = ../phonons/save” directory (in your case, ifc.q2r file is "flfrc = ‘PdCoO2.k444.fc’ " obtained from q2r run). See https://docs.epw-code.org/doc/Inputs.html#lifc for detail.
Best,
Hari
Hi Hari,
I have use zasr = ‘simple’ in my q2r input file. So, the default value of EPW should work in my case.
Best regards,
Prachi.
Dear Prachi:
Even if you used the default value for the acoustic sum rule, you can calculate the phonon dispersion with EPW starting from the interatomic force constants obtained by q2r.x ; please check the post above by Hari.
This is the same as done in matdyn.x and I would like to suggest you to check whether you can reproduce the results from matdyn.x by following this approach.
Sincerely,
H. Lee
Dear H. Lee and Hari,
As per your suggestion, I performed epw with lifc=.True. with asr = “simple”. I’m able to reproduce the phonon dispersion of matdyn correctly.
To understand it correctly, now my dynamically matrices are evaluated using ifc.q2r file and not with wannierization, right?
Please kindly suggest what I can do now to get correct wannierization to proceed further.
Thanks!
Best regards,
Prachi.
Hi Prachi,
If you look at your output file (calculated with lifc = .true.), it is explicitly written “Dyn mat calculated from ifcs” from the following line of the code; https://gitlab.com/QEF/q-e/-/blob/develop/EPW/src/dynmat_asr.f90#L531
Maybe I did not understand what you mean by “what I can do now to get correct wannierization to proceed further”? As far as you can reproduce your band structure and phonon dispersion, it looks correct to me.
Best,
Hari
Hi Hari,
Thanks a lot for your reply. I’m sorry for the vague question.
My question was based on my result that if I take “default” value lifc = False, I got incorrect phonon dispersion but a correct dispersion with it being true.
So, I don’t quite fully understand that how the phonon wannierization is done without reading the force constants from q2r output (isn’t it calculated using eigenvectors of the dyn matrices for the transform?) and why was I getting incorrect result with default value.
Thank you so much for your time and help.
Best,
Prachi.
Hello,
In the “Calculations of superconducting Tc” tutorial of 2024 EPW School, in the exercise of Pb, we have in epw1.in :
wdata(1) = ‘bands_plot = .true.’
wdata(2) = ‘begin kpoint_path’
wdata(3) = ‘G 0.00 0.00 0.00 X 0.00 0.50 0.50’
wdata(4) = ‘X 0.00 0.50 0.50 W 0.25 0.50 0.75’
wdata(5) = ‘W 0.25 0.50 0.75 L 0.50 0.50 0.50’
wdata(6) = ‘L 0.50 0.50 0.50 K 0.375 0.375 0.75’
wdata(7) = ‘K 0.375 0.375 0.75 G 0.00 0.00 0.00’
wdata(8) = ‘G 0.00 0.00 0.00 L 0.50 0.50 0.50’
wdata(9) = ‘end kpoint_path’
wdata(10) = ‘bands_plot_format = gnuplot’
To get the phonon band structure can you please let me know, how to modify, the inputs for bands_plot, begin kpoint_path and end kpoint_path ?
Thank you,
Krishnendu
Hi Krishnendu,
You need to add a input tag called “band_plot = .true” and supply k-path and q-path in a file whose location you provide using “filkf” and “filqf” tags.
Best regards,
Sabya.
Hi Krishnendu,
As Sabya mentioned, add band_plot = .true.
The snippet you pasted
wdata(1) = ‘bands_plot = .true.’
is to generate wannier90 interpolated electronic band structure.
Best,
Shashi