quantum-espresso/PHonon/examples/example19
Jae-Mo Lihm c833a1e0d9 AHC: Rename skip_upperfan to skip_upper 2024-11-01 15:01:44 +01:00
..
reference AHC: Rename skip_upperfan to skip_upper 2024-11-01 15:01:44 +01:00
README Small documentation fixes 2022-05-27 22:03:23 +02:00
run_example AHC: Rename skip_upperfan to skip_upper 2024-11-01 15:01:44 +01:00

README

This example illustrates how to calculate the electron-phonon
renormalization of the valence band maximum (VBM) and conduction band
minimum (CBM) energy of diamond.
Also, this example demonstrates how to use Fourier interpolation of
the phonon potential.

Note that the parameters used in this example, especially the size of
the q-point grids in ph.x and the broadening eta in postahc.x, are far
from reaching convergence.

The calculation proceeds as follows (for the meaning of the cited input
variables see the appropriate INPUT_* file).

1) make a self-consistent calculation (input=diam.scf.in,
   output=diam.scf.out)

2) make a phonon calculation for a uniform grid of q-points. We chose
   a 333 Monkhorst-Pack grid, not translated (note the variables
   nq, nq2, nq3). All dynamical matrices are saved with
   a different name ("fildyn" + 1-4), while "fildyn" + 0 contains the
   information on the q-point grid (type of grid and number of points)

3) call program q2r.x to calculate IFC's in real space.
   All dynamical matrices are read and Fourier-transformed.
   The output file containing the force constants in a format suitable
   for program matdyn.x is diam.ifc.

4) call program dvscf_q2r.x to transform phonon potential (dvscf) from coarse
   q grid to real space. The induced part of the phonon potential is read from
   the diam.dvscf (or diam.dvscf1 in case of parallel compilation) files
   (note the fildvscf variable) inside the $TMP_DIR/_ph0 folder. The bare part
   of the potential is calculated inside the dvscf_q2r.x program.
   Since diamond is a non-polar material, we set do_long_range to false. For
   polar materials, one should set do_long_range to true to ensure a correct
   treatment of the long-range dipole potential.

5) make a self-consistent calculation again for the next non-self-consistent
   (nscf) calculation.

6) make a nscf calculation. The calculated k points include the VBM and CBM
   states.
   We disable the use of symmetry (note the nosym = .true. and noinv = .true.
   variables) to sample the whole Brillouin zone, not the irreducible wedge,
   in the subsequent ph.x runs for the e-ph matrix elements. This keyword
   does not affect the performance of the nscf band energy calculation.
   The number of bands in this nscf calculation is the number of bands in the
   "lower" subspace. High-energy bands which are not explicitly calculated
   consist the "upper" subspace. The contribution of the high-energy bands
   to the Fan self-energy ("upper Fan self-energy") is approximated using
   the solution of the Sternheimer equation.

7) make a electron-phonon matrix element calculation by calling ph.x with
   the flag electron_phonon='ahc'. A coarse 333 Monkhorst-Pack grid is
   used. The electron self-energy is to be calculated for 8 bands in total,
   starting from the lowest band (note the ahc_nbnd variable).

8) call program matdyn.x to calculate phonon frequency and eigenmodes
   The list of q points in the input must be identical to the q points
   of the previous ph.x run. One can copy the q points from the dyn0 output
   of ph.x.

9) call program postahc.x to calculate electron self-energy. This run reads
   the output of previous ph.x and matdyn.x runs (step 7 and 8).

10) Repeat step 7 with a fine q-point grid. A 666 Monkhorst-Pack grid is
   used. Here, we use the "double-grid" technique, where only the slowly
   convergent lower Fan self-energy is calculated on a finer q-grid,
   while the rapidly convegent upper Fan and Debye-Waller self-energy is
   calculated on a coarse q-grid (note the skip_upperfan variable).
   By doing so, the computational cost is reduced because the calculation of
   the upper Fan self-energy takes the longest time in a electron_phonon='ahc'
   calculation.

11) Repeat step 8 with a fine q-point grid.

12) Repeat step 9 with a fine q-point grid. This run reads the output of
   previous ph.x and matdyn.x runs (step 10 and 11).
   Note that the skip_upperfan and skip_dw variable is set to true because
   we are using the double-grid technique. Hence, the upper Fan and
   Debye-Waller self-energies are set to zero in the output.