Related Reading
VASP the GUIDE: HartreeFock (HF) type and hybrid functional calculations
VASPwiki: Tutorial on hybrid functionals
Related discussion: How can I calculate the DOS by using HSE06 in vasp?
These instructions are taken from the Vasp forum
Band structures using hybrid functionals have to be calculated the following way:
First perform a selfconsistent HartreeFock/HSE calculation using a conventional KPOINTS file.
Copy the IBZKPT file to KPOINTS, and explicitely add all desired kpoints along highsymmetry lines of the BZ that are needed for the bandstructure plot. Add the points at the end of the KPOINTS file, but set the weights of these added kpoints to 0.
Do not forget to set the number of kpoints in KPOINTS correctly (to the number of the kpoints used in the standard mesh PLUS the number of the kpoints along the lines), such that all kpoints are used for the calculations.
NKRED can not be used.
Perform a second VASP run:
It is recommended to use the Davidson algorithm, since it converges that eigen energies at the new kpoints fastest. Since VASP terminates when the total energy is converged to a certain threshold, it is important to force VASP to do a minimum number of steps, so that the orbitals at the new kpoints are fully converged (note: since their weight is zero, they do not contribute to the total energy). This can be done using e.g.12ALGO = N ; NELMIN = 5 ! Davidson, minimum 5 scfstepsIMIX = 1 ! Use simple charge mixer, sincePulay might blow up
The KSeigenvalues of the states along the highsymmetry lines are written in OUTCAR, EIGENVAL, vasprun.xml; please cut the kpoints required for the bandstructure from one of these files and proceed as usual (using p4vasp or any other graphics tool you usually use to produce bandstructureplots)
Note: A HarteeFock calculation can NOT be continued from an existing CHGCAR file, since the nonlocal exchange is not determined by the charge density but by the density matrix and/or the KSorbitals.
HSE06 calculated records
1. Gammascf
After structural optimization opt
[1]


INCAR


KPOINTS


POSCAR


2. 1hsescf


INCAR


3. 2hsescf


INCAR


4. Hseband


INCAR


KPOINTS
 Use script
gk.x
and filesyml
to output fileinp.kpt
. If the file has a few lines of zero, then delete.  Add the contents of
inp.kpt
at the end of the IBZKPT file, set the weights of these added kpoints to 0.  Set the number of kpoints correctly. For this example, the number is 1 + rows of file
ink.kpt
.  Copy the IBZKPT file to KPOINTS.


Submit the job, then the EIGENVAL file will generate after the calculation. Modify the contents of the EIGENVAL: Remove high symmetry points whose weights are not zero and set the number of kpoints correctly.


Use script pbnf.x
to output file bnd.dat
and highk.dat
. Import the data into origin and plot band structure.
NOTE: There is a problem. In the step Hseband, the ICHARG parameter in the INCAR file needs to be set to 11 or 2? This needs to be tested.
Related discussion: http://muchong.com/t37235681 http://muchong.com/t42327871