Dear Jike Wang,
using vasp-6.4.2 I have been able to extract the dielectric function using your INCAR in combination with the script extract_optics.sh provided in the tutorial about improving the dielectric function.
Following figure was generated using a 4×4×1 k-point grid, leveraging the WAVECAR output from a prior PBE calculation performed with an 8×8×2 k-point grid.
Note, LDOWNSAMPLE was set to enable downsampling of the WAVECAR to this reduced k-point subset.
Si_dielectric.png
To produce this figure, I have started in a clean working directory using following INCAR settings:
Code: Select all
ALGO = NORMAL
SYSTEM = SiC TDHF
ISMEAR = 0 ! Gaussian smearing
SIGMA = 0.01 ! smearing in eV, small sigma is required to avoid partial occupancies
ENCUT = 500 ! energy cutoff
NBANDS = 288 ! use large number of bands
LOPTICS = .TRUE. ; CSHIFT = 0.100
NEDOS = 2000
In step two, I changed the KPOINTS file to
and used the WAVECAR from step 1 with following INCAR settings:
Code: Select all
LDOWNSAMPLE = T ! downsample k-point data
LWAVE = F ; LCHARG = F
SYSTEM = SiC TDHF
ISMEAR = 0 ! Gaussian smearing
SIGMA = 0.01 ! smearing in eV, small sigma is required to avoid partial occupancies
ENCUT = 500 ! energy cutoff
LMODELHF = .TRUE. ! range-separated hybrid functional
HFSCREEN = 1.47 ! the range-separation parameter
AEXX = 0.153 ! the fraction of exact exchange
LFXC = .TRUE. ! local fxc
NBANDS = 96 ! reduced number of bands for rough estimate
ALGO = TDHF ! use TDHF algorithm
ANTIRES = 0 ! Tamm-Dancoff approximation
NBANDSV = 30 ! number of conduction bands in BSE
NBANDSO = 10 ! number of valence bands in BSE
NBSEEIG = 100 ! number of BSE/TDHF eigenvectors
LOPTICS = .TRUE. ; CSHIFT = 0.100
NEDOS = 2000
Afterwards, I extracted the dielectric function with the script extract_optics.sh of the mentioned tutorial.
For completeness the content of the script is as follows:
Code: Select all
awk 'BEGIN{i=0} /<dielectricfunction>/,\
/<\/dielectricfunction>/ \
{if ($1=="<r>") {a[i]=$2 ; b[i]=($3+$4+$5)/3 ; c[i]=$4 ; d[i]=$5 ; i=i+1}} \
END{for (j=0;j<i/2;j++) print a[j],b[j],b[j+i/2]}' vasprun.xml > optics.dat
The newly generated file optics.dat contains the imaginary part of the dielectric function.
For users of recent VASP versions, I recommend utilizing data from the vaspout.h5 file.
Relevant tutorials demonstrating its application are available in the official tutorial section.
Specifically, the BSE section might be of interest to you.
You do not have the required permissions to view the files attached to this post.