Tutorial¶
The following tutorial should be done in SCTK/examples/Al/
.
SCF calculation of the charge density¶
Input file: scf.in
Program: pw.x (QuantumESPRESSO)
$ export OMP_NUM_THREADS=1
$ mpiexec -np 29 PATH/pw.x -nk 29 -in scf.in > scf.out
Important parameters
- calculation = “scf”
Self-consistent calculation is performed with pw.x.
Note
We can perform first whether Calculations of phonon and electron-phonon interaction or coulomb .
Calculations of phonon and electron-phonon interaction¶
Calculation of phonon frequency and deformation potential¶
Input file: ph.in
Program: ph.x (QuantumESPRESSO)
$ mpiexec -np 29 PATH/ph.x -nk 29 -in ph.in > ph.out
Important parameters
- fildvscf = ‘dv’
The file name for the deformation potential. It will be used in the next step.
- ldisp = .true.
We compute phonons on the uniform \({\bf q}\) grid.
- lshift_q = .true.
We shift the \({\bf q}\) grid for avoiding the singularity at \(\Gamma\) point.
- nq1, nq2, nq3
The \(q\) grid.
Calculation of electron-phonon interaction¶
Input file: elph.in
Program: ph.x (QuantumESPRESSO)
$ mpiexec -np 8 PATH/ph.x -nk 8 -in epmat.in > epmat.out
Important parameter
- electron_phonon = “scdft_input”
compute the electron-phonon vertex from the deformation potential and the dynamical matrix that are already computed.
- elph_nbnd_min, elph_nbnd_max
Since the electron-phonon interaction between the electronic states only in the vicinity of the Fermi surface affect the gap equation, we can reduce bands to decrease the numerical cost. The upper- and the lower limit of the bands that contain the Fermi level can be obtained by a program fermi_velocity.x in QuantumESPRESSO.
Calculation of screened Coulomb interaction/Spin-fluctuation¶
Non-SCF calculation with a dense k grid¶
Input file: nscf.in
Program: pw.x (QuantumESPRESSO)
$ mpiexec -np 32 PATH/pw.x -nk 32 -in nscf.in > nscf.out
Important parameter
- calculation = “nscf”
Perform non self-consistent calculation.
- la2f = .true.
Generate a file pwscf.a2Fsave which contains Kohn-Sham energy.
- nbnd
For the calculating of the polarization function, we have to compute some empty states. We do not have to include so many empty state as the calculation of the insulator. Typically, the number of empty states becomes the same as the number of occupied states.
Calculation of wave functions for the screened Coulomb interaction¶
Input file: twin.in
Program: pw.x (QuantumESPRESSO)
$ bash PATH/twingrid.x 4 4 4 >> twin.in
$ mpiexec -np 32 PATH/pw.x -nk 32 -in twin.in > twin.out
Important parameter
- calculation = “bands”
Generated \(k\) points by using twingrid.x and redirect it to the input file as above. This \(k\) mesh must be the same as nq1, nq2, and nq3 in the input of ph.x for Calculation of electron-phonon interaction. Then run pw.x with this input file.
Calculation of screened Coulomb interaction¶
Input file: sctk.in
Program: sctk.x
$ mpiexec -np 32 PATH/sctk.x -nk 32 -in sctk.in > kel.out
Important parameters
- calculation = “kel”
Calculation of screened Couplmb / spin-fluctuation interaction.
- nq1, nq2, nq3
They must be the same as the \({\bf k}\) in the previous step.
SCDFT SCF calculation¶
After all calculation in Calculations of phonon and electron-phonon interaction and Calculation of screened Coulomb interaction/Spin-fluctuation finished, we can start SCDFT calculation.
Input file: sctk.in (Should be modified)
Program: sctk.x
$ export OMP_NUM_THREADS=32
$ mpiexec -np 1 PATH/sctk.x < sctk.in > tc.out
Important parameters
- calculation = “scdft_tc”
By changing this part, we change the type of calculation. Here, we obtain \(T_c\) by the bisection method.
Further analysis¶
By changing this part, we can perform the following analysis.
Input file: sctk.in (Should be modified)
Program: sctk.x
$ mpiexec -np 1 PATH/sctk.x < sctk.in
Important parameters
Output data for FermiSurfer to plot \(\lambda_{n {\bf {\bf k}}}\).
- calculation = “scdft”
Perform SCDFT calculation at a temperature, then output a file delta.dat which is used by the following post-processes.
- temp
Temperature (Kelvin). If this is set to 0 or negative values, sctk.x employs the special algorithm for the exact zero Kelvein.
- calculation = “deltaf”
Output data for FermiSurfer to plot \(\Delta_{n {\bf k}}\).
- calculation = “qpdos”
Quasi particle DOS. It requires long computational time.
Note
There is another tutorial in SCTK/examples/MgB2/. Please note that in these tutorials, the number of \({\bf k}\) points and bands and the pseudopotentials are not sufficient for the production level.