# Crystalline silicon
# Calculation of the GW corrections with Spectral method for chi0 and analytic continuation for Sigma
# Dataset 1: ground state calculation and of the WFK file for 16 k-points in IBZ.
# Dataset 2: calculation of the screening (epsilon^-1 matrix for W) with spectral method (gaussian approximant for the delta).
# Dataset 3: calculation of the Self-Energy matrix elements spectral function via analytic continuation.
ndtset 5
gwpara 2
fftgw 11 # Use the coarsest FFT mesh for oscillator (compatible with symmetries)
# Parameters for the calculation of the WFK file
nband1 30 # Number of (occ and empty) bands to be computed in the GS part.
nbdbuf1 5
# Calculation of the screening (epsilon^-1 matrix)
optdriver2 3 # Screening calculation
getwfk2 -1 # Obtain the WFK file from previous dataset
spmeth2 2 # Spectral method with gaussian approximant (efficient when several frequencies are needed)
spbroad2 1.0 eV # Gaussian broadening
nomegasf2 50 # No. of real frequencies sampled for the spectral function associated to chi0.
nband2 15 # Bands to be used in the chi0 calculation
ecuteps2 0.8 # Cut-off energy of the planewave set to represent the dielectric matrix
nfreqim2 10 # No. of points along the imaginary axis for chi0
inclvkb2 2 # Treat the non-analytic behaviour of heads and wings of chi0 for q->0
# Calculation of the Self-Energy matrix elements (GW corrections)
optdriver3 4 # Self-Energy calculation
#symsigma3 1 # At present, cannot use symmetries.
nomegasi3 10 # No. of points for \Sigma(i\omega) sampled along the imaginary axis
omegasimax3 10 eV # Max imaginary freq. As a rule of thumb, it shoud be at least twice the max
# real frequency where \Sigma(\omega) is extrapolated (Middle of the gap is taken as referece energy)
getwfk3 1 # Obtain the WFK file from dataset 1
getscr3 2 # Obtain the SCR file from previous dataset
nband3 25 # Bands to be used in the Self-Energy calculation
ecutsigx3 3.0 # Dimension of the G sum in Sigma_x (the dimension in Sigma_c is controlled by ecuteps)
# Setup for the spectral function.
nfreqsp3 500 # No. of frequencies for the spectral function.
freqspmax3 20 eV # Frequency interval for spectral function is [-50,50]
icutcoul3 3 # old deprecated value of icutcoul, only used for legacy
# Calculation of the Self-Energy matrix elements (test of freqspmin)
optdriver4 4 # Self-Energy calculation
#symsigma4 1 # At present, cannot use symmetries.
nomegasi4 10 # No. of points for \Sigma(i\omega) sampled along the imaginary axis
omegasimax4 10 eV # Max imaginary freq. As a rule of thumb, it shoud be at least twice the max
# real frequency where \Sigma(\omega) is extrapolated (Middle of the gap is taken as referece energy)
getwfk4 1 # Obtain the WFK file from dataset 1
getscr4 2 # Obtain the SCR file from previous dataset
nband4 25 # Bands to be used in the Self-Energy calculation
ecutsigx4 3.0 # Dimension of the G sum in Sigma_x (the dimension in Sigma_c is controlled by ecuteps)
# Setup for the spectral function.
nfreqsp4 50 # No. of frequencies for the spectral function.
freqspmin4 -8 eV # Frequency interval for spectral function is [-8,5]
freqspmax4 5 eV # Frequency interval for spectral function is [-8,5]
icutcoul4 3 # old deprecated value of icutcoul, only used for legacy
# Calculation of the Self-Energy matrix elements (test of freqspmin)
optdriver5 4 # Self-Energy calculation
#symsigma5 1 # At present, cannot use symmetries.
nomegasi5 10 # No. of points for \Sigma(i\omega) sampled along the imaginary axis
omegasimax5 10 eV # Max imaginary freq. As a rule of thumb, it shoud be at least twice the max
# real frequency where \Sigma(\omega) is extrapolated (Middle of the gap is taken as referece energy)
getwfk5 1 # Obtain the WFK file from dataset 1
getscr5 2 # Obtain the SCR file from previous dataset
nband5 25 # Bands to be used in the Self-Energy calculation
ecutsigx5 3.0 # Dimension of the G sum in Sigma_x (the dimension in Sigma_c is controlled by ecuteps)
# Setup for the spectral function.
nfreqsp5 8 # No. of frequencies for the spectral function.
gw_customnfreqsp5 8
gw_freqsp5 -0.3 -0.1 0.33 1.0 5.0 10.0 50.0 100.0 eV
# Note that these values are not reflective of a realistic calculation
# The analytic continuation is expected to be unstable for freqsp > 5.0 eV
# furthermore all other parameters are set very low
icutcoul5 3 # old deprecated value of icutcoul, only used for legacy
###############################################
# Data common to the three different datasets
###############################################
# Definition of the unit cell: fcc
acell 3*10.217 # This is equivalent to 10.217 10.217 10.217
rprim 0.0 0.5 0.5 # FCC primitive vectors (to be scaled by acell)
0.5 0.0 0.5
0.5 0.5 0.0
# Definition of the atom types
ntypat 1 # There is only one type of atom
znucl 14 # The keyword "znucl" refers to the atomic number of the
# possible type(s) of atom. The pseudopotential(s)
# mentioned in the "files" file must correspond
# to the type(s) of atom. Here, the only type is Silicon.
# Definition of the atoms
natom 2 # There are two atoms
typat 1 1 # They both are of type 1, that is, Silicon.
xred # Reduced coordinate of atoms
0.0 0.0 0.0
0.25 0.25 0.25
# Definition of the k-point grid
kptopt 1 # Option for the automatic generation of k points,
ngkpt 6 6 6
nshiftk 1
shiftk
0.0 0.0 0.0
istwfk *1 # This is mandatory in all the GW steps.
# Definition of the planewave basis set (at convergence 16 Rydberg 8 Hartree)
ecut 8.0 # Maximal kinetic energy cut-off, in Hartree
ecutwfn 8.0
# Definition of the SCF procedure
nstep 50 # Maximal number of SCF cycles
tolwfr 1.0d-10 # Will stop when this tolerance is achieved on total energy
diemac 12.0 # Although this is not mandatory, it is worth to
# precondition the SCF cycle. The model dielectric
# function used as the standard preconditioner
# is described in the "dielng" input variable section.
# Here, we follow the prescription for bulk silicon.
nkptgw 1
kptgw
0.00000000E+00 0.00000000E+00 0.00000000E+00
# 3.33333333E-01 0.00000000E+00 0.00000000E+00
# 5.00000000E-01 0.00000000E+00 0.00000000E+00
# 3.33333333E-01 3.33333333E-01 0.00000000E+00
# 5.00000000E-01 5.00000000E-01 0.00000000E+00
bdgw
2 6
# 1 8
# 1 8
# 1 8
# 1 8
# 1 8
## After modifying the following section, one might need to regenerate the pickle database with runtests.py -r
#%%
#%% [setup]
#%% executable = abinit
#%% [files]
#%% files_to_test =
#%% t02.out, tolnlines = 12, tolabs = 6.0e-3, tolrel = 6.0e-2, fld_options = -medium
#%% psp_files = 14si.pspnc
#%% [paral_info]
#%% max_nprocs = 16
#%% [extra_info]
#%% authors = M. Giantomassi
#%% keywords = NC, GW
#%% description =
#%% GW calculation in Si: Hilbert transform method for the irreducible polarizability (gaussian approximant)
#%% and analytic continuation of sigma from imaginary- to real-axis. The spectral function is also
#%% obtained via Pade extrapolation. The following variables are tested spmeth=2, spbroad,
#%% nomegasi, and omegasimax
#%%