Page 1 of 1

Seeking Assistance with Imaginary Frequency Issues in EPW Calculations

Posted: Sat Oct 25, 2025 2:24 pm
by guodonglin
Dear

When I use EPW to read force constants, the generated phonon spectrum consistently exhibits imaginary frequencies, regardless of whether I set asr_typ to "simple" or "crystal." However, when EPW directly reads the dynamical matrix file (dyn file), the phonon spectrum does not show any imaginary frequencies.

I would greatly appreciate your advice on how to resolve this issue with imaginary frequencies when reading force constants. Could you please suggest any potential solutions or adjustments to the input parameters that might help mitigate this problem?




--
&inputepw
prefix = 'SnSe'
amass(1) = 118.7
amass(2) = 78.96
outdir = './output'

elph = .true.
epbwrite = .true.
epbread = .false.
epwwrite = .true.
epwread = .false.
wannierize = .true.

etf_mem = 0
mp_mesh_k = .false.

lpolar = .true.
vme = 'wannier'

epw_memdist = .true.

use_ws = .false.
lifc = .true.


nbndsub = 32
!bands_skipped = 'exclude_bands = 1:10'
num_iter = 500000
iprint = 2
dis_win_max = 30
dis_win_min = -30
dis_froz_max = 6
dis_froz_min = -10

! proj(1) = 'random'

proj(1) = 'Sn:s;p'
proj(2) = 'Se:s;p'


wdata(1) = 'bands_plot = .true.'
wdata(2) = 'begin kpoint_path'
wdata(3) = 'G 0.00000000 0.00000000 0.00000000 X 0.50000000 0.00000000 0.00000000'
wdata(4) = 'X 0.50000000 0.00000000 0.00000000 S 0.50000000 0.50000000 0.00000000'
wdata(5) = 'S 0.50000000 0.50000000 0.00000000 Y 0.00000000 0.50000000 0.00000000'
wdata(6) = 'Y 0.00000000 0.50000000 0.00000000 G 0.00000000 0.00000000 0.00000000'
wdata(7) = 'G 0.00000000 0.00000000 0.00000000 Z 0.00000000 0.00000000 0.50000000'
wdata(8) = 'Z 0.00000000 0.00000000 0.50000000 U 0.50000000 0.00000000 0.50000000'
wdata(9) = 'U 0.50000000 0.00000000 0.50000000 R 0.50000000 0.50000000 0.50000000'
wdata(10) = 'R 0.50000000 0.50000000 0.50000000 G 0.00000000 0.00000000 0.00000000'
wdata(11) = 'end kpoint_path'
wdata(12) = 'bands_plot_format = gnuplot'
wdata(13) = 'dis_num_iter = 5000'
wdata(14) = 'num_print_cycles = 10'
wdata(15) = 'dis_mix_ratio = 1.0'
wdata(16) = 'conv_tol = 1E-12'
wdata(17) = 'conv_window = 4'
wdata(18) = 'guiding_centres = .true.'
wdata(19) = 'dis_conv_tol = 1e-12'
iverbosity = 3 ! epw.out

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

fsthick = 20 ! eV
nstemp = 1
temps = 300
degaussw = 0.01 ! eV

dvscf_dir = './save'

band_plot = .true.
prtgkk = .false.

filkf = './GMKG.txt'
filqf = './GMKG.txt'

nk1 = 6
nk2 = 6
nk3 = 6
nq1 = 3
nq2 = 3
nq3 = 3
/

Re: Seeking Assistance with Imaginary Frequency Issues in EPW Calculations

Posted: Sun Oct 26, 2025 10:05 am
by guodonglin
I referred to the webpage viewtopic.php?p=5064&hilit=imaginary#p5064, modified the EPW code, and set asr_typ = 'no', but the phonon spectrum output by EPW still has imaginary frequencies.

Re: Seeking Assistance with Imaginary Frequency Issues in EPW Calculations

Posted: Wed Oct 29, 2025 10:10 pm
by Shashi
Hi Guodonglin,

Have you checked phonon dispersion using QE by reading the IFC file? Is your phonon dispersion from EPW by reading the IFC file closer to your QE results?

Also, can you please share some plots with asr_type "no", "crystal", and "simple" ?

One note, during wannierization num_iter = 500000 seems very large. You can reduce it to 5000.

Regards,
Shashi

Re: Seeking Assistance with Imaginary Frequency Issues in EPW Calculations

Posted: Thu Oct 30, 2025 5:34 am
by guodonglin
Hi Shashi

I am certain that the phonon dispersion exhibits no imaginary frequencies when using Quantum ESPRESSO (QE) to read the IFC file. However, when I set asr_type to "no", "crystal", or "simple" in EPW, the phonon dispersion shows imaginary frequencies. Could it be that QE and EPW read the force constants differently—for instance, in terms of coordinate systems, such as crystal coordinates versus Cartesian coordinates?



Regards,
Donglin

Re: Seeking Assistance with Imaginary Frequency Issues in EPW Calculations

Posted: Thu Oct 30, 2025 5:35 am
by guodonglin
asr-type=no