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