I want to calculate the spectral function a2F with EPW and have a working setup for calculations without spin-orbit coupling (SOC). Sadly EPW crashes every time I try to include SOC with the following error message:
Code: Select all
...
Using random q-mesh: 50000
Size of q point mesh for interpolation: 50000
Using random k-mesh: 200000
Size of k point mesh for interpolation: 400000
Max number of k points per pool: 1390
Fermi energy coarse grid = 10.770282 eV
Skipping the first 40 bands:
The Fermi level will be determined with 0.02725 electrons
Fermi energy is calculated from the fine k-mesh: Ef = 10.747310 eV
===================================================================
ibndmin = 1 ebndmin = 0.776
ibndmax = 6 ebndmax = 1.114
Number of ep-matrix elements per pool : 375300 ~= 2.86 Mb (@ 8 bytes/ DP)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine cdiagh2 (14):
info =/= 0
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
stopping ...
Wannierization for both bands and phonons seems to work (use the new pp.py file from Gitlab after Nov 2018 for SOC calculations if you use QE 6.3 and EPW 5!), but here I am stuck. I already checked the source code at https://gitlab.com/QEF/q-e/blob/develop/PHonon/PH/rigid.f90, but that did not help as well.
My epw.in looks as follows:
Code: Select all
--
&inputepw
prefix = 'kto',
outdir = './'
elph = .true.
epwwrite = .true.
epwread = .false.
kmaps = .false.
nbndsub = 6
nbndskip = 40
wannierize = .true.
dis_win_max = 15.160
dis_froz_max = 14.946
dis_froz_min = 10.550
dis_win_min = 8.480
proj(1) = 'Ta:l=2,mr=2,3,5'
wdata(1) = 'bands_plot = .true.'
wdata(2) = 'begin kpoint_path'
wdata(3) = 'G 0.00 0.00 0.00 X 0.50 0.00 0.00'
wdata(4) = 'X 0.50 0.00 0.00 M 0.50 0.50 0.00'
wdata(5) = 'M 0.50 0.50 0.00 G 0.00 0.00 0.00'
wdata(6) = 'G 0.00 0.00 0.00 R 0.50 0.50 0.50'
wdata(7) = 'R 0.50 0.50 0.50 X 0.50 0.00 0.00'
wdata(8) = 'X 0.50 0.00 0.00 M 0.50 0.50 0.00'
wdata(9) = 'M 0.50 0.50 0.00 R 0.50 0.50 0.50'
wdata(10) = 'end kpoint_path'
wdata(11) = 'bands_plot_format = gnuplot'
iverbosity = 0
eptemp = 0.005 ! K (std: 300.d0)
degaussw = 0.025 ! eV (std: 0.025)
degaussq = 0.050 ! meV (std: 0.05)
a2f = .true.
phonselfen = .true.
! lifc = .true.
dvscf_dir = '../phonons/save'
rand_k = .true.
rand_nk = 200000
rand_q = .true.
rand_nq = 50000
nk1 = 12
nk2 = 12
nk3 = 12
nq1 = 4
nq2 = 4
nq3 = 4
/
10 cartesian
0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.250000000
0.000000000 0.000000000 -0.500000000
0.000000000 0.250000000 0.250000000
0.000000000 0.250000000 -0.500000000
0.000000000 -0.500000000 -0.500000000
0.250000000 0.250000000 0.250000000
0.250000000 0.250000000 -0.500000000
0.250000000 -0.500000000 -0.500000000
-0.500000000 -0.500000000 -0.500000000
Am I doing something wrong here or is this some bug in EPW? As a note, I was able to calculate SOC structures with QE 6.2.1, albeit with a probably slightly different input file some months ago...