My apologies: I forgot the Box link to the files. Here it is: 
https://baylor.box.com/s/wnq0qqlutj619bb2i7hifswqfnloiufv

From: Blair, Erik <enrique_bl...@baylor.edu>
Date: Thursday, March 23, 2023 at 6:26 PM
To: users@lists.quantum-espresso.org <users@lists.quantum-espresso.org>
Subject: Phonon dispersion - bad results around K point
I’m requesting help from all you QE wizards out there.

I’m trying to learn PHonon dispersion calculations, starting simply with 
diamond. My results look pretty good except for approaching the K point, were I 
get a bit of a cusp. I’ve tried lots of things: tightening convergences; 
increasing sampling in the BZ; using asr=’simple’ or asr=’crystal’, etc., but I 
can’t get rid of the cusping around K. It also makes the X-K path look bad. 
I’ve tried xc=’lda’ as well as xc=’pbe’.

I have optimized the structure using a PBE ultrasoft pseudo

I point out that I’m using ibrav=2, and I’m using letter notation to specify 
the high-symmetry points in the path through k-space, so I use q_in_band_form = 
.true..

Computer/QE version details: I’m using the QE 7.0 package on a Linux HPC 
cluster.

Relatively low-threshold calculations complete with a bash script and 
pseudopotentials are available here. I also have my *.out files, and a Python3 
script that can generate the plots.

Thanks in advance for your insights.

Enrique (Erik) Blair, Ph.D.
Associate Professor
Electrical and Computer Engineering
Baylor University
Website: http://web.ecs.baylor.edu/faculty/blair/

For your convenience, here’s the LDA work-flow:
# ===== diamond.in =====
&control
  calculation = 'scf',
  restart_mode = 'from_scratch',
  tstress = .true.,
  tprnfor = .true.,
  prefix = 'diamond',
  outdir = 'data',
  pseudo_dir = './',
/

&system
  ibrav = 2,
  nat = 2,
  ntyp = 1,
  a = 3.5689000000000006,
  ecutwfc = 90.0,
  ecutrho = 810.0,
  input_dft = 'lda',
  nbnd = 15,
/

&electrons
  conv_thr = 1.000000d-8,
  mixing_beta = 0.7,
/

ATOMIC_SPECIES
  C    12.011000  C.pz-n-rrkjus_psl.0.1.UPF

ATOMIC_POSITIONS {alat}
  C   0.00000000  0.00000000  0.00000000
  C   0.25000000  0.25000000  0.25000000

K_POINTS {automatic}
    9   9   9   0   0   0

# ===== diamond.ph.in =====
This is a PHonons (ph.x) input file.

&inputph
  tr2_ph = 1.000000d-14,
  ldisp = .true.,
  nq1 = 3,
  nq2 = 3,
  nq3 = 3,
  fildyn = 'diamond.dyn',
  outdir = 'data',
  prefix = 'diamond',
/

# ==== diamond.q2r.in =====
&input
  flfrc = 'diamond.fc',
  zasr = 'crystal',
  fildyn = 'diamond.dyn',
/

# ==== diamond.matdyn.in =====
&input
  asr = 'simple',
  q_in_band_form = .true.,
  flfrc = 'diamond.fc',
  flfrq = 'diamond.frq',
  flvec = 'diamond.modes',
/

  5
gG 40
X 20
K 30
gG 20
L 1

# ===== plot_phonon_dispersion.py =====
import numpy as np
import matplotlib.pyplot as plt

data = np.loadtxt( 'diamond.frq.gp', unpack=True)
fdata = np.delete(data, 0, 0) # delete first row - not needed

markerpos = [0, 40, 60, 90, 110, ]
marker_label = ['$\\Gamma$', 'X', 'K', '$\\Gamma$', 'L']

n_ph, n_qpts = fdata.shape

int_idx = range(0, n_qpts)
for freq in fdata:
   plt.plot(int_idx, freq)

plt.xticks(markerpos, marker_label)
plt.xlim((markerpos[0], markerpos[-1]))
plt.grid(True)

plt.xlabel('$q$')
plt.ylabel('Frequency (cm$^{-1}$)')

plt.tight_layout()

plt.savefig('phonon_dispersion.png')

plt.close('all')


# ===== run.sh =====
#!/bin/bash
mpiexec -n 8 pw.x < diamond.in > diamond.out
mpiexec -n 8 ph.x < diamond.ph.in > diamond.ph.out
mpiexec -n 8 q2r.x < diamond.q2r.in > diamond.q2r.out
mpiexec -n 8 matdyn.x < diamond.matdyn.in > diamond.matdyn.out
python3 < plot_phonon_dispersion.py
_______________________________________________
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
_______________________________________________
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users

Reply via email to