Judging insulating when using HSE06 functional

Problems running VASP: crashes, internal errors, "wrong" results.


Moderators: Global Moderator, Moderator

Post Reply
Message
Author
ynwu

Judging insulating when using HSE06 functional

#1 Post by ynwu » Thu Aug 12, 2010 9:23 pm

Hello, all,

I am trying to do berry phase calculation (LCALCPOL=.TRUE.) combined with HSE06 functional. I got a gap in DOS and a gap, but the program complains it is not insulating.

In source code, the way it judges if the system is insulating or not is checking the order number of highest occupied eigenvalue. But if we do hybrid functional calculation, the eigenvalues are not listed in the order of from lower energy to high energy. For example,

97 5.6463 1.00000
98 5.9726 1.00000
99 7.2118 1.00000
100 9.6729 0.00000
101 7.4302 1.00000
102 9.3828 0.00000
103 10.4377 0.00000

highest occupied eigenvalue is supposed to be 100, however, VASP will take 99 because 100th eigenvalue is not occupied. I think it will work if we sort the order of eigenvalues, but I do not know how to do it right now. Any suggestions? Thanks.
Last edited by ynwu on Thu Aug 12, 2010 9:23 pm, edited 1 time in total.

admin
Administrator
Administrator
Posts: 2921
Joined: Tue Aug 03, 2004 8:18 am
License Nr.: 458

Judging insulating when using HSE06 functional

#2 Post by admin » Fri Oct 29, 2010 11:31 am

the reason of this behaviour is that the band indices are not changed during one electronic scf run. the occupancies, the levels are correct
Last edited by admin on Fri Oct 29, 2010 11:31 am, edited 1 time in total.

ynwu

Judging insulating when using HSE06 functional

#3 Post by ynwu » Wed Nov 03, 2010 7:29 pm

Yes, energy levels are the right, but vasp refuses to do the polarization calculation (LCALCPOL=.TRUE.) because it judges the system as metal.
Last edited by ynwu on Wed Nov 03, 2010 7:29 pm, edited 1 time in total.

Post Reply