by **jjhskang** » Fri Nov 18, 2016 6:31 am

We are now using vasp 5.3.5 for calculating the optical properties of one dimensional (1D) semiconducting polymers. To this aim, we tried to calculate the "frequency dependent dielectric functions through independent particle approximation. As you know, it needs to start with a standard SCF calculation using a proper DFT ( HSE06 hybrid or PBE functional) calculation.

In the next step, we ran a job for the optical calculation using INCAR file below:

SYSTEM =

PREC = Normal ! standard precision

ENCUT= 400

ISMEAR = 0 ; SIGMA = 0.01

NELM = 100

ALGO = Exact

NBANDS = 504

LOPTICS = .TRUE.

CSHIFT = 0.1 # this is the default

After a few minutes, the job crashed with the following message:

reading WAVECAR

random initialization beyond band 169

the WAVECAR file was read successfully

entering main loop

N E dE d eps ncg rms rms(c)

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

mpirun noticed that process rank 21 with PID 12040 on node jnode03 exited on signal 9 (Killed).

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

The tail of obtained OUTCAR file is also as follows:

First call to EWALD: gamma= 0.098

Maximum number of real-space cells 2x 3x 5

Maximum number of reciprocal cells 5x 3x 2

FEWALD executed in parallel

FEWALD: cpu time 0.00: real time 0.00

----------------------------------------- Iteration 1( 1) ---------------------------------------

POTLOK: cpu time 0.30: real time 0.30

SETDIJ: cpu time 0.01: real time 0.01

....................................................

Please note that we got similar messages for both PBE and HSE06 calculations.

In addition, a similar calculation for a 2D system does not encounter this kind of problem. [b][i] Namely, the problem occurs only for 1D system!!

[/i][/b]

It was a long time ago that I modified VASP source file to make it work for 1D system. I guess that it was version 5.3.3. At the moment, I do not keep the complete modification. However, you will find that two subroutines in “optics.F” was modified as an example.

(1) SUBROUTINE CALC_NABIJ was modified:

! loop over all (current) k-points, spin component and cartesian directions

DO NK=1,KPOINTS%NKPTS

DO ISP=1,INFO%ISPIN

! HSK

! DO IDIR=1,3 (I changed IDIR from 3 to 1)

DO IDIR=1,1

! get the matrix element of the nabla-operator in eV/Angstroem units

CALL NABIJ_SOFT(NABIJ,IDIR,NK,ISP,W,WDES,GRID_SOFT,LATT_CUR)

CALL NABIJ_AUG_ADD(NABIJ,IDIR,NK,ISP,W,WDES,P,T_INFO)

……………………………………………

(2) SUBROUTINE SET_NABIJ_AUG was modified:

! intel efc compiler workaround (required for 6.X versions)

! P(NT)%NABLA=0._q ! old command

! HSK

! DO IDIR=1,3 (I changed IDIR from 3 to 1)

DO IDIR=1,1

DO LL=1,P(NT)%LMMAX

DO MP=1,P(NT)%LMMAX

P(NT)%NABLA(IDIR,LL,MP)=0._q

ENDDO

ENDDO

ENDDO