Reference manual

Features of the main program of Superconducting-Toolkit, sctk.x, is as follows:

  • Compute the Coulomb interaction matrix \(K^{el}_{n {\bf k} n' {\bf k}'}\) as a preprocess. This program uses Kohn-Sham orbitals generated by QE.

  • Solve the gap equation and obtain the superconducting gap function \(\Delta_{n {\bf k}}\).

  • Solve the gap equation and obtain the superconducting transition temperature with the bisection method.

  • Perform non-SCF calculation for generating files readable by FermiSurfer.

  • Perform non-SCF calculation for obtaining quasi particle density of states.

  • Perform non-SCF calculation for obtaining ultrasonic attenuation coefficient(experimental).

Also, there is a script twingrid.x to generate the \({\bf k}\)-point grid where Kohn-Sham orbitals for the calculation of the Coulomb interaction are computed.

Usage

mpiexec options PATH/sctk.x -in input_file

Input-file format

The format of the input file is as follows:

&CONTROL
  prefix =
  outdir =
  calculation =
/
&KEL
  start_q =
  last_q =
  nci =
  laddxc =
  ecutfock =
  nq1 =
  nq2 =
  nq3 =
  lsf
/
&SCDFT
  temp =
  fbee =
  lbee =
  xic =
  nmf =
  nx =
  ne =
  emin =
  emax =
  electron_maxstep =
  conv_thr =
  fildyn =
  spin_fluc =
/

These parameter can be written in random order. If a parameter is omitted, the default value is used.

Namelist CONTROL

Parameter

Type

Default value

Description

prefix

String

“pwscf”

It must be the same as prefix in the input of pw.x.

outdir

String

“./”

It must be the same as outdir in the input of pw.x.

calculation

String

“kel”

Type of calculation

Namelist KEL

Parameters used for calculation = "kel".

Parameter

Type

Default value

Description

start_q

Positive integer

1

First \({\bf q}\) for computing screened Coulomb interaction and spin fluctuation

last_q

Positive integer

Number of \({\bf q}\) in Irreducible BZ

Last \({\bf q}\) for computing screened Coulomb interaction

laddxc

0 or 1

0

Specify the approximation used in the calculation of screened Coulomb interaction. 0 : RPA, 1: Adiabatic LDA.

lsf

0 or 1

0

Whether the spin-fluctuation is computed (1) or not (0)

ecutfock

Real

Same as pw.x

Cutoff of plane waves for the polarization function. [Ry].

nq1, nq2, nq3

Positive integer

Same as \({\bf k}\) mesh of a2Fsave

The \({\bf k}\) mesh of the Kohn-Sham orbitals. It must be the same as the twingrid.x input.

nci

Positive integer

5

The number of Matsubara frequencies of screened Coulomb interactions.

Namelist SCDFT

Parameters used when calculation = "scdft".

Parameter

Type

Default value

Description

temp

Positive real number

0.1

Temperature(Kelvin).

fbee

Positive integer

1

The first band in the gap equation.

lbee

Positive integer

nbnd in pw.x

The last band in the gap equation.

xic

Real number

-1.0

Parameter for gap-function extrapolation method. Ry unit. When this is lower than 0.0, gap function extrapolation is not used (in default this extrapolation is not used.)

nmf

Real number

10

The number of Matsubara frequencies in the calculation of the Coulomb kernel. When it is 0 static Coulomb kernel is used. When negative value is specified, Coulomb kernel becomes 0. (Only the phononic kernel is used).

nx

Positive integer

100

The number of auxiliary energy grid in the vicinity of the Fermi level.

ne

Positive integer

50

Used only in the calculation of quasi-particle DOS. The number of energy grid for quasi particle density of states.

emin

Positive real number

1.0e-7

Minimum energy scale parameter for auxiliary energy grid. Ry unit.

emax

Positive real number

5.0

Used only in the calculation of quasi-particle DOS. The maximum energy where QPDOS is computed. meV unit.

electron_maxstep

Positive integer

100

The maximum iteration number for solving gap equation.

conv_thr

Positive real number

1.0e-15

The convergence threshold for the gap equation. When the norm of the difference between the new- and the old- gap function becomes lower than it, the system is thought to be converged. Ry unit.

filedyn

String

“matdyn”

It must be the same as filedyn in ph.x.

spin_fluc

Logical

.False.

If .True., the spin-fluctuation [3] is included.

scdft_kernel

Positive integer

1

1: Lüders2005 [4], 2: Sanna2020 [5]

lz_coulomb

Logical

.False.

Coulomb renormalization [6]

Data files

The following files are read/written by sctk.x:

{prefix}.xml

It contains informations about lattice constant, etc. It is generated by pw.x.

{prefix}.a2Fsave

It contains the Kohn-Sham energy,information of \({\bf k}\) mesh, and symmetrical operations. It is generated by pw.x with la2f=.true.

{prefix}.save/wfc*.dat

It contains Kohn-Sham orbitals at each \({\bf k}\) point. * should be the index of \({\bf k}\) point. It is generated by pw.x.

vel*.dat

It contains coefficients of the Chebyshev interpolation of the screened Coulomb interaction at each \({\bf q}\) point. * should be the index of \({\bf q}\) point. It is generated by sctk.x with calculation=”kel”.

elph*.dat

It contains electron-phonon interactions and phonon frequencies at each \({\bf q}\) point. * should be the index of \({\bf q}\) point. It is generated by modified ph.x.

lambda.frmsf, mu.frmsf

Data files for FermiSurfer for displaying the mass-renormalization factor \(\lambda_{n {\bf k}}\) on the Fermi surface. It is generated by sctk.x with calculation=”lambda_mu_k”.

delta.dat

It contains the superconducting gap functions \(\Delta_{n {\bf k}}\), associated Kohn-Sham energy \(\xi_{n {\bf k}}\), integration weights, band indices, \({\bf k}\)-indices, and the renormalization \(Z_{n {\bf k}}\). It is generated by sctk.x with calculation=”scdft”.

qpdos.dat

First column: quasiparticle energy (meV unit), Second column: quasiparticle density of states (Ry\(^{-1}\) unit). It is generated by sctk.x with calculation=”qpdos”.

delta.frmsf, Z.frmsf

Data files for FermiSurfer for displaying the superconducting gaps \(\Delta_{n {\bf k}}\) and the renormalization \(Z_{n {\bf k}}\) on the Fermi surface. It is generated by sctk.x with calculation=”deltaf”.

Type of calculation

We can specify the type of calculation by inputting the following string into the parameter calculation.

kel : Screened Coulomb interaction / spin-fluctuation

The following files must be put on the directory where the program runs.

The following files are generated in the directory where program runs.

lambda_mu_k : Electron-phonon parameter at each orbital

The following files must be put on the directory where the program runs.

The following files are generated in the directory where program runs.

scdft : SCDFT calculation at specific temperature

The following files must be put on the directory where the program runs.

The following files are generated in the directory where program runs.

scdft_tc : Calculation of transition temperature with bisection method

The following files must be put on the directory where the program runs.

The following files are generated in the directory where program runs.

qpdos : Quasi-particle density of states

The following files must be put on the directory where the program runs.

The following files are generated in the directory where program runs.

deltaf : Output FermiSurfer file of gap function

The following files must be put on the directory where the program runs.

The following files are generated in the directory where program runs.

ultrasonic : Ultrasonic attenuation

twingrid.x

This script generates the double \({\bf k}\)-point grid for pw.x. The output orbitals of this pw.x-run is used by sctk.x with calculation = “kel”.

Usage

$ bash PATH/twingrid.x nk1 nk2 nk3 >> input_file_for_pw

nk1, nk2, nk3 indicate the number of \({\bf k}\) points along each reciprocal lattice vectors.

Standard output

K_POINTS crystal
Total_number_of_k
k_vector1 1.0
k_vector2 1.0
k_vector3 1.0
 :

It generates two \({\bf k}\) grids; the first one contains \(\Gamma\) point, and the other is translated with a half grid. In the above usage, the standard output of this utility is redirected to the end of the input file of pw.x.