While working with a student who is learning to calculate dielectric tensors (static, not frequency dependent) to use in eventual defect calculations, I found an odd behavior in VASP version 6.2 vs 5.4.4 and was able to reproduce it on two different computing centers.

We are calculating the dielectric tensor of the primitive cell of diamond with the PBE potential on an 8x8x8 Gamma centered k-point grid. The plane-wave cutoff is 450 eV and ISMEAR = 0 with SIGMA = 0.005.

In VASP 5.4.4, if I use LCALCEPS I get 5.711869 and if I use LEPSILON I get 5.886591 which is pretty good agreement (especially given that these two methods can have different convergence criterion in terms of k-points, etc).

However, if I use VASP 6.2 then for LCALCEPS I get 3.29291 and with LEPSILON I get 5.886592.

So with the two different version, I get essentially no difference between the LEPSILON calculations, but I get a rather significant different with LCALCEPS.

Did something change in the implementation of LCALCEPS between VASP 5.4.4 and VASP 6.x? Is there something else that I'm missing that would cause this?

Thanks for any insight that can be provided.

Below, I provide the text of my INCAR, POSCAR, and KPOINTS files:

-------------------------------------------------------------------------------------------------

INCAR:

-------------------------------------------------------------------------------------------------

Code: Select all

```
SYSTEM = Diamond
! Initialization flags
ISTART = 0 ! 0=new, 1=continue
ICHARG = 2 ! 1=file, 2=atomic, 11=fixed from file (nscf)
INIWAV = 1 ! Needed for fresh starts, random initial wave function
! Electronic Loop Controls
ENCUT = 450 ! Plane-wave cutoff
EDIFF = 1E-5 ! stopping-criterion
ALGO = Normal ! Controls diagonalization algorithm
NELMIN = 2 ! Minimum number of steps
NELM = 80 ! Maximum number of steps
LREAL = .FALSE. ! Real space project yes/no
ISPIN = 1 ! 1 = non-spin-polarized, 2 = spin-polarized
LCALCEPS = .TRUE.
! Hybrid functional
!LHFCALC = .TRUE.
!LFOCKACE = .TRUE.
!HFSCREEN = 0.2
!AEXX = 0.25
!PRECFOCK = Normal
! Ionic Relaxation Controls
!NSW = 0 ! Number of ionic steps
IBRION = 6 ! Controls ionic algorithm: -1 = off, 2 = conj. grad., 1 = quasinewton
!ISIF = 2 ! Controls how relaxation occurs: 2 = ions only, 3 = ions plus lattice vectors
!EDIFFG = -1E-2 ! Ionic convergence criterion. Positive is energy (eV), negative is force (eV/A)
! Density of States and Integration Flags
ISMEAR = 0 ! Method for determining partial occupancies/integration
! -5 is the tetrahedron method, 0 is Gaussian (we'll mostly use these
SIGMA = 0.005 ! Broadening ("smearing") width for Gaussian
!LORBIT = 11 ! DOSCAR and lm decomposed PROCAR file
! EMIN/EMAX defualt to sensible values (min/max value for DOS)
NEDOS = 5000 ! Number of grid points in DOSCAR (density of states)
! For certain plots, make these densor
! Parallelization flags: important on large calculations
NCORE = 1
KPAR = 6
! Output related flags
LWAVE = .TRUE. ! write WAVECAR
LCHARG = .TRUE. ! write CHGCAR, CHG
LVTOT = .FALSE. ! write LOCPOT (full potential)
LVHAR = .FALSE. ! write LOCPOT (Hartree only)
```

POSCAR:

-------------------------------------------------------------------------------------------------

Code: Select all

```
Diamond
3.574131
0.0000000000 0.5000000000 0.5000000000
0.5000000000 0.0000000000 0.5000000000
0.5000000000 0.5000000000 0.0000000000
C
2
Direct
0.000000000 0.000000000 0.000000000
0.250000000 0.250000000 0.250000000
```

KPOINTS:

-------------------------------------------------------------------------------------------------

Code: Select all

```
Automatic mesh
0
Gamma
8 8 8
0 0 0
```