hefan1414的个人博客分享 http://blog.sciencenet.cn/u/hefan1414

博文

[转载]HSE06 杂化泛函

已有 1170 次阅读 2015-11-17 02:32 |系统分类:科研笔记|文章来源:转载

HSE hybrid functional:Hartree-Fock (HF) type and hybrid functional calculations


Available only in VASP.5.X.


http://cms.mpi.univie.ac.at/vasp/vasp/Hartree_Fock_HF_type_hybrid_functional_calculations.html



INCAR FOR HSE


# output options

LWAVE  = .FALSE. # write or don't write WAVECAR

LCHARG = .FALSE. # write or don't write CHG and CHGCAR

LELF   = .FALSE. # write ELF


# ionic relaxation

NSW = 100        # number of ionic steps

IBRION = 1       # 2=conjucate gradient, 1=Newton like

ISIF = 3         # 3=relax everything, 2=relax ions only, 4=keep volume fixed


# precision parameters

EDIFF = 1E-7     # 1E-3 very low precision for pre-relaxation, use 1E-5 next

EDIFFG = -1E-3    # usually: 10 * EDIFF

PREC = high      # precision low, med, high, accurate


# electronic relaxation

ISMEAR = 0       # -5 = tetraedon, 1..N = Methfessel

SIGMA = 0.1

ENCUT = 600      # cutoff energy

PSTRESS = 0

#ISYM=0


# Choose DFT functional - HSE06

ISTART = 1

LHFCALC = .TRUE. ; HFSCREEN = 0.2

NBANDS = 16

ALGO = All ; TIME = 0.4

PRECFOCK = Fast  ! used PRECFOCK = Normal for high quality calculations

#NKRED     = 2     ! omit flag for high quality calculations



HSE hybrid functional:Hartree-Fock (HF) type and hybrid functional calculations

Available only in VASP.5.X.


http://cms.mpi.univie.ac.at/vasp/vasp/Hartree_Fock_HF_type_hybrid_functional_calculations.html


Subsections

(1) Typical hybrid functional and Hartree-Fock calculations


It is strongly recommended to perform standard DFT calculations first, and to start Hartree-Fock type calculations from a preconverged WAVECAR file.

 (a)    A typical INCAR file for a Hartree-Fock or hybrid HF/DFT calculation for an insulator or semiconductor has the following input lines:

ISTART = 1

LHFCALC = .TRUE. ;

HFSCREEN = 0.2

NBANDS = number of occupied bands 

ALGO = All ;

TIME = 0.4

PRECFOCK  = Fast  #! used PRECFOCK = Normal for high quality calculations

NKRED     = 2     #! omit flag for high quality calculationsFor



 (b) For metals and small gap semiconductors it is recommended to use.

  ISTART = 1

  LHFCALC = .TRUE. ;

  HFSCREEN = 0.2

 ALGO = Damped ; 

 TIME = 0.4

  PRECFOCK  = Fast  ! used PRECFOCK = Normal for high quality calculations

  NKRED     = 2     ! omit flag for high quality calculations


  These input files select the HSE06 functional, which tends to yield very similar thermochemistry as the PBE0 functional, but converges more rapidly with respect to the number of k-points [99]. We thus recommend to apply and use this functional instead of the more demanding PBE0 functional.

    The NKRED flag is applicable, if and only if the number of k-points is dividable by NKRED (see Sec. 6.71.9).

  PRECFOCK= fast selects a smaller FFT grid for the fast-Fourier-transforms (see Sec. 6.71.5).

    For high accuracy NKRED and in particular PRECFOCK= fast should be ommited, but we recommend to do this only after preconverging the orbitals and atomic positions with the flags specified above.

   Mind, that the parameter TIME defaults to 0.4, and for the present algorithm this hardly ever needs to be changed.

  If divergence is observed, simply decrease TIME until the damped or conjugate gradient algorithm become stable (see Sec. 6.47 and 6.51).

Standard Hartree-Fock type calculations require one to set the flag AEXX = 1.0 to switch on full non-local exchange (local exchange and correlation are automatically switched off):

ISTART = 1 LHFCALC = .TRUE. ; AEXX = 1.0 ;  NBANDS = number of occupied bands ALGO = All ; TIME = 0.4 PRECFOCK  = Fast  ! used PRECFOCK = Normal for high quality calculations NKRED     = 2     ! omit flag for high quality calculations

Concerning NKRED and PRECFOCK the same considerations as above apply. Matter of fact, it is also possible to try to converge using the ``metallic'' setup given above.


(2)Notes

(1)LHFCALC-tag

LHFCALC= .TRUE. | .FALSE.

Default: LHFCALC=.FALSE.

The flag specifies, whether Hartree-Fock type calculations are performed.

   At the moment, it is recommended to select an all bands simultaneous algorithm, i.e. ALGO=Damped (IALGO=53) or ALGO=All (IALGO=58) in the INCAR file (see Sec. 6.466.47).

   The blocked Davidson algorithm ALGO=Normal is, with certain caveat, also supported, whereas calculations for the other algorithms (ALGO=Fast) are not currently supported (note: no warning is printed).

   The blocked Davidson algorithm ALGO=Normal is generally rather slow, and in many cases the Pulay mixer will be unable to determine the proper ground-state.

   We hence recommend to select the blocked Davidson algorithm only in combination with straight mixing or a Kerker like mixing. The following combination have been successfully applied for small and medium sized systems

LHFCALC = .TRUE. ; ALGO = Normal ; IMIX = 1 ; AMIX = aDecrease the parameter a until convergence is reached.

In most cases, however, it is recommended to use the damped algorithm with suitably chosen timestep. The following setup for the electronic optimization works reliably in most cases:

LHFCALC = .TRUE. ; ALGO = Damped ; TIME = 0.4If convergence is not obtained, it is recommended to reduce the timestep TIME. 


(2)HFSCREEN


HFSCREEN determines the range separation parameter in range separated hybrid functionals. In combination with PBE potentials, attributing a value to HFSCREEN will switch from the PBE0 functional (in case LHFCALC=.TRUE.) to the closely related HSE03 or HSE06 functional [93,94,95].


Note: A comprehensive study of the performance of the HSE03/HSE06 functional compared to the PBE and PBE0 functionals can be found in Ref. [99]. The B3LYP functional was investigated in Ref. [100]. Further applications of hybrid functionals to selected materials can be found in the following references: Ceria (Ref. [101]), lead chalcogenides (Ref. [102]), CO adsorption on metals (Refs. [103,104]), defects in ZnO (Ref. [105]), excitonic properties (Ref. [106]), SrTiO$ _3$and BaTiO$ _3$ (Ref. [107]).

LTHOMAS= .TRUE. | .FALSE.

Default: LTHOMAS=.FALSE.


If the flag LTHOMAS is set, a similar decomposition of the exchange functional into a long range and a short range part is used. This time, it is more convenient to write the decomposition in reciprocal space:


$.displaystyle .frac{4 .pi e^2}{.vert{.bf G}.vert^2}=S_{.mu}(.vert{.bf G}.vert)+...
...{.vert{.bf G}.vert^2} -.frac{4 .pi e^2}{.vert{.bf G}.vert^2 +k_{TF}^2} .right),$(6.69)



where $ k_{TF}$ is the Thomas-Fermi screening length. HFSCREEN is used to specify the parameter $ k_{TF}$. For typicalsemi-conductors, the Thomas-Fermi screening length is about 1.8 Å$ ^{-1}$, and setting HFSCREEN to this value yields reasonable band gaps for most materials.

   In principle, however, the Thomas-Fermi screening length depends on the valence electron density; VASP determines this parameter from the number of valence electrons (POTCAR) and the volume and writes the corresponding value to the OUTCAR file:

Thomas-Fermi vector in A             =   2.00000Since, VASP counts the semi-core states and $ d$-states as valence electrons, although these states do not contribute to the screening, the values reported by VASP are, however, often incorrect. Details can be found in literature [96,97,98]. Another important detail concerns that implementation of the density functional part in the screened exchange case. Literature suggests that a global enhancement factor $ z$ (see Equ. (3.15) in Ref. [98]) should be used, whereas VASP implements a local density dependent enhancement factor $ z= k_{TF}/.bar k$, where $ .bar k$ is the Fermi wave vector corresponding to the local density (and not the average density as suggested in Ref. [98]). The VASP implementation is in the spirit of the local density approximation.


(3) ALGO


ALGO-tag ALGO = Normal | VeryFast | Fast | Conjugate | All | Damped | Subrot | Eigenval | None | Nothing | Exact | Diag


Default

ALGO=Normal


The ALGO tag is a convenient option to specify the electronic minimisation algorithm in VASP.4.5 and later versions. Except for ``None'' and ``Nothing'', ``Exact'' and ``Diag'' (which must be spelled out), the first letter determines the applied algorithm. Conjugate, Subrot, Eigenval, Exact, None and Nothing are only supported by VASP.5.2.12 and newer versions.

ALGO = Normal selects IALGO = 38 (blocked Davidson iteration scheme), whereas ALGO = Very_Fast selects IALGO = 48 (RMM-DIIS). A faily robust mixture of both algorithm is selected for ALGO = Fast. In this case, Davidson (IALGO = 38) is used for the initial phase, and then VASP switches to RMM-DIIS (IALGO = 48). Subsequencly, for each ionic update, one IALGO = 38 sweep is performed for each ionic step (except the first one).

The ``all band simultaneous update of orbitals'' can be selected using ALGO = Conjugate or ALGO = All (IALGO = 58, in both cases the same conjugate gradient algorithm is used). A damped velocity friction algorithm is selected using ALGO = Damped (IALGO = 53). ALGO = Subrot selects subspace rotation or diagonalization in the sub-space spanned by the calculated NBANDS orbitals (IALGO = 4). ALGO = Exact or ALGO = Diag performs an exact diagonalization (IALGO = 90), and we recommend to use this if more than 30-50 % of the states are calculated (e.g. for $ GW$ or RPA calculations). ALGO = Eigenval allows to recalculate one electron energies, density of state and perform selected postprocessing using the current orbitals (IALGO = 3) e.g. read from WAVECAR. ALGO = None or ALGO = Nothing allows to recalculate the density of states (eigenvalues from WAVECAR, e.g. using different smearing or tetrahedron method) or perform other selected postprocessing using the current orbitals and one electron energies (IALGO = 2) e.g. read from WAVECAR.


(4)PRECFOCK

PRECFOCK: FFT grid in the Hartree-Fock and GW related routines

PRECFOCK= Low | Medium | Fast | Normal | Accurate

Default: PRECFOCK=Normal

The PRECFOCK parameter controls the FFT grid for the exact exchange (Hartree-Fock) routines, i.e. it is possible to chose a different grid for the exact exchange part, and for the local Hartree and DFT potentials. In fact, the exchange is rather insensitive to the FFT grids, and in many cases a rather coarse grid can be used to calculate the overlap density and the potentials. Since the exact exchange requires the evaluation of an overlap density (compare 6.59)


$.displaystyle .phi_{{.bf k}n}^{*}({.bf r}).phi_{{.bf q}m}^{*}({.bf r})
$


errors in the convolution (aliasing errors) are only avoided, if the FFT grid contains all Fourier components up to twice the plane wave with the largest wave vector ($ 2 .vert G_{.rm cut}.vert$).

For Low and Fast, however, the smallest possible FFT grid, which just encloses the cutoff sphere ($ .vert G_{.rm cut}.vert$) determined by the plane wave cutoff (ENCUT), is used. This accelerates the calculations by roughly a factor two to three, but causes slight changes in the total energies and some noise in the calculated forces. The corresponding FFT grid that is used in the Hartree Fock routines is written to the OUTCAR file after the lines

FFT grid for exact exchange (Hartree Fock)For PRECFOCK=Normal, the FFT grid for the exact exchange is identical to the FFT grid used for the orbitals for PREC=Normal in the DFT part. For PRECFOCK=Accurate, the FFT grid for the exact exchange is identical to the FFT grid used for the orbitals for PREC=Accurate in the DFT part (any combination of PREC and PRECFOCK is allowed).

For PRECFOCK=Fast, Normal and Accurate, the augmentation charges--which are required to restore the norm and dipoles of the overlap density on the plane wave grid --are made soft, such that an accurate presentation on the plane wave grid is possible even for relatively coarse FFT grids. The sphere size is printed out after

Radii for the augmentation spheres in the non-local exchangeThe following table summarises the possible setting:


PRECFOCKFFT gridaugmentation chargeadvantage/disatvantage
VASP.5.2.2 compatible, not recommended
Low$ G_{.rm cut}^a$identical to standard DFTlarge noise in forces/energy errors
Mediumidentical to std. FFTidentical to standard DFTsome noise in forces/good energy
VASP.5.2.4 and newer, recommended
Fast$ G_{.rm cut}^a$very soft augmentation charge$ ^c$some noise in forces/good energy
Normal3/2$ G_{.rm cut}^a$soft augmentation charge$ ^b$accurate forces and energy
Accurate2 $ G_{.rm cut}^a$soft augmentation charge$ ^b$very accurate forces and energy

$ ^a .quad .frac{ .hbar^2}{2 m_e} .vert G_{.rm cut}.vert^2 = {.tt ENCUT} $
$ ^b$ soft augmentation charge: radius for augmentation sphere is increased by factor 1.25 compared to default
$ ^c$ very soft augmentation charge: radius is increased by factor 1.35 compared to default except for $ s$ like charge, for the $ s$ channel the radius of the augmentation sphere is increased by a factor 1.25

Even PRECFOCK=Fast yields fairly low noise in the forces and virtually no egg-box effects (aliasing errors). In the forces, the noise is usually below 0.01 eV/Å. For PRECFOCK=N and PRECFOCK=A, noise is usually not an issue, and the accuracy is sufficient even for phonon calculations in large supercells.


[转载]Band Structure Calculation With HSE06
band structures using hybrid functionals have to be calculated the following way:
1-) First perform a selfconsistent Hartree-Fock/HSE calculation using a conventional KPOINTS file.
2-) Copy the IBZKPT file to KPOINTS, and explicitely add all desired k-points along high-symmetry 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 k-points to 0.
3-) Do not forget to set the number of k-points in KPOINTS correctly (to the number of the k-points used in the standard mesh PLUS the number of the k-points along the lines), such that all k-points are used for the calculations.
4-) NKRED can not be used.
5-) Perform a second VASP run:
It is recommended to use the Davidson algorithm, since it converges that eigen energies at the new k-points 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 k-points are fully converged (note: since their weight is zero, they do not contribute to the total energy).
This can be done using e.g.
ALGO = N ; NELMIN = 5 ! Davidson, minimum 5 scf-steps
IMIX = 1 ! Use simple charge mixer, since
Pulay might blow up
6-) The KS-eigenvalues of the states along the high-symmetry lines are written in OUTCAR, EIGENVAL, vasprun.xml; please cut the k-points 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 bandstructure-plots)
Note: A Hartee-Fock calculation can NOT be continued from an existing CHGCAR file, since the non-local exchange is not determined by the charge density but by the density matrix and/or the KS-orbitals.

补记:
My example:
1: do a regular scf calculation of fcc cubic crystal with kmesh:
4 4 4
0
Gamma
4 4 4
0.0 0.0 0.0
At the same time, I saved the WAVECAR, which will be used for band calculation.
2:do scf calculation for band
INCAR:
System = fcc-cubic
ISPIN   = 2
MAGMOM = 1*3 1*-3 8*0
ICHARG = 0  
#charge density calculated from WAVECAR.
#At the same time, read WAVECAR from previous calculation.
LORBIT = 12
#ISMEAR = -5
ISMEAR = 1
SIGMA = 0.02
#tetragonal method can not be used in band calculation, because the kmesh selected is not regular.
IMIX = 1
PREC = High
EDIFF = 1E-6
LHFCALC = .TRUE.
HFSCREEN = 0.2
#ALGO = All
TIME = 0.4
PRECFOCK = N
ALGO = N
NELMIN = 5
#NKRED = 2 ! omit flag for high quality calculations
#NKRED can not be used, because I want get all eigenvalues of  kpoints listed in KPOINTS file.
KPOINTS from Gamma to X:
FCC-band
     16
Reciprocal lattice
   0.00000000000000    0.00000000000000    0.00000000000000             1
   0.25000000000000    0.00000000000000    0.00000000000000             8
   0.50000000000000    0.00000000000000    0.00000000000000             4
   0.25000000000000    0.25000000000000    0.00000000000000             6
   0.50000000000000    0.25000000000000    0.00000000000000            24
  -0.25000000000000    0.25000000000000    0.00000000000000            12
   0.50000000000000    0.50000000000000    0.00000000000000             3
  -0.25000000000000    0.50000000000000    0.25000000000000             6
   0.05000000000000    0.05000000000000    0.00000000                   0
   0.10000000000000    0.10000000000000    0.00000000                   0
   0.15000000000000    0.15000000000000    0.00000000                   0
   0.20000000000000    0.20000000000000    0.00000000                   0
   0.30000000000000    0.30000000000000    0.00000000                   0
   0.35000000000000    0.35000000000000    0.00000000                   0
   0.40000000000000    0.40000000000000    0.00000000                   0
   0.45000000000000    0.45000000000000    0.00000000                   0
3: run vasp. Read EIGENVALUE file and get eigenvalues of kpoints:
   0.00000000000000    0.00000000000000    0.00000000000000    
   0.25000000000000    0.25000000000000    0.00000000000000
   0.50000000000000    0.50000000000000    0.00000000000000
   0.05000000000000    0.05000000000000    0.00000000      
   0.10000000000000    0.10000000000000    0.00000000      
   0.15000000000000    0.15000000000000    0.00000000      
   0.20000000000000    0.20000000000000    0.00000000      
   0.30000000000000    0.30000000000000    0.00000000      
   0.35000000000000    0.35000000000000    0.00000000      
   0.40000000000000    0.40000000000000    0.00000000      
   0.45000000000000    0.45000000000000    0.00000000      
4: Copy WAVECAR obtained from 4*4*4 kpoints to this file. For band from Gamma to L, change KPOINTS to:
FCC-band
     18
Reciprocal lattice
   0.00000000000000    0.00000000000000    0.00000000000000             1
   0.25000000000000    0.00000000000000    0.00000000000000             8
   0.50000000000000    0.00000000000000    0.00000000000000             4
   0.25000000000000    0.25000000000000    0.00000000000000             6
   0.50000000000000    0.25000000000000    0.00000000000000            24
  -0.25000000000000    0.25000000000000    0.00000000000000            12
   0.50000000000000    0.50000000000000    0.00000000000000             3
  -0.25000000000000    0.50000000000000    0.25000000000000             6
   0.05000000000000    0.05000000000000    0.05000000                   0
   0.10000000000000    0.10000000000000    0.10000000                   0
   0.15000000000000    0.15000000000000    0.15000000                   0
   0.20000000000000    0.20000000000000    0.20000000                   0
   0.25000000000000    0.25000000000000    0.25000000                   0
   0.30000000000000    0.30000000000000    0.30000000                   0
   0.35000000000000    0.35000000000000    0.35000000                   0
   0.40000000000000    0.40000000000000    0.40000000                   0
   0.45000000000000    0.45000000000000    0.45000000                   0
   0.50000000000000    0.50000000000000    0.50000000                   0
Then, run vasp again. And repeat step 3.
 
                             (2011-12-21)

1.来自Andreas 的信件



I have also attached two INCARfiles for a HSE hybrid-DFT calculation, INCAR.energy and INCAR.relax_hse.

Use INCAR.energy first to create DFT wave functions, then use themas starting guess for the HSE part. The VASP manual online explains this procedure as well.


(1)INCAR.energy


# output options

LWAVE  = .TRUE.  # write or don't write WAVECAR

LCHARG = .TRUE.  # write or don't write CHG and CHGCAR

LELF   = .FALSE. # write ELF


# precision parameters

EDIFF = 1E-7     # 1E-3 very low precision for pre-relaxation, use 1E-5 next

EDIFFG = -1E-4    # usually: 10 * EDIFF

PREC = high      # precision low, med, high, accurate


# electronic relaxation

ISMEAR = -5      # -5 = tetraedon, 1..N = Methfessel

ENCUT = 800      # cutoff energy

PSTRESS = 0





(2)INCAR.relax_hse



# output options

LWAVE  = .FALSE. # write or don't write WAVECAR

LCHARG = .FALSE. # write or don't write CHG and CHGCAR

LELF   = .FALSE. # write ELF


# ionic relaxation

NSW = 100        # number of ionic steps

IBRION = 1       # 2=conjucate gradient, 1=Newton like

ISIF = 3         # 3=relax everything, 2=relax ions only, 4=keep volume fixed


# precision parameters

EDIFF = 1E-7     # 1E-3 very low precision for pre-relaxation, use 1E-5 next

EDIFFG = -1E-3    # usually: 10 * EDIFF

PREC = high      # precision low, med, high, accurate


# electronic relaxation

ISMEAR = 0       # -5 = tetraedon, 1..N = Methfessel

SIGMA = 0.1

ENCUT = 600      # cutoff energy

PSTRESS = 0

#ISYM=0


# Choose DFT functional - HSE06

ISTART = 1

LHFCALC = .TRUE. ; HFSCREEN = 0.2

NBANDS = 16

ALGO = All ; TIME = 0.4

PRECFOCK = Fast  ! used PRECFOCK = Normal for high quality calculations

#NKRED     = 2     ! omit flag for high quality calculations



2. HSE 校正:Hartree-Fock (HF) type and hybrid functional calculations

Hartree-Fock (HF) type and hybrid functional calculations

Available only in VASP.5.X.


http://cms.mpi.univie.ac.at/vasp/vasp/Hartree_Fock_HF_type_hybrid_functional_calculations.html


Subsections

(1) .典型的Typical hybrid functional and Hartree-Fock calculations


It is strongly recommended to perform standard DFT calculations first, and to start Hartree-Fock type calculations from a preconverged WAVECAR file.

 (a)    A typical INCAR file for a Hartree-Fock or hybrid HF/DFT calculation for an insulator or semiconductor has the following input lines:

ISTART = 1

LHFCALC = .TRUE. ;

HFSCREEN = 0.2

NBANDS = number of occupied bands 

ALGO = All ;

TIME = 0.4

PRECFOCK  = Fast  #! used PRECFOCK = Normal for high quality calculations

NKRED     = 2     #! omit flag for high quality calculationsFor



 (b) For metals and small gap semiconductors it is recommended to use.

  ISTART = 1

  LHFCALC = .TRUE. ;

  HFSCREEN = 0.2

 ALGO = Damped ; 

 TIME = 0.4

  PRECFOCK  = Fast  ! used PRECFOCK = Normal for high quality calculations

  NKRED     = 2     ! omit flag for high quality calculations


  These input files select the HSE06 functional, which tends to yield very similar thermochemistry as the PBE0 functional, but converges more rapidly with respect to the number of k-points [99]. We thus recommend to apply and use this functional instead of the more demanding PBE0 functional.

    The NKRED flag is applicable【可适用的, 可应用的】, if and only if the number of k-points is dividable by NKRED (see Sec. 6.71.9).

  PRECFOCK= fast selects a smaller FFT grid for the fast-Fourier-transforms (see Sec. 6.71.5).

    For high accuracy NKRED and in particular PRECFOCK= fast should be ommited, but we recommend to do this only after preconverging the orbitals and atomic positions with the flags specified above.

   Mind, that the parameter TIME defaults to 0.4, and for the present algorithm this hardly ever needs to be changed.

  If divergence is observed, simply decrease TIME until the damped or conjugate gradient algorithm become stable (see Sec. 6.47 and 6.51).

Standard Hartree-Fock type calculations require one to set the flag AEXX = 1.0 to switch on full non-local exchange (local exchange and correlation are automatically switched off):

ISTART = 1 LHFCALC = .TRUE. ; AEXX = 1.0 ;  NBANDS = number of occupied bands ALGO = All ; TIME = 0.4 PRECFOCK  = Fast  ! used PRECFOCK = Normal for high quality calculations NKRED     = 2     ! omit flag for high quality calculations

Concerning NKRED and PRECFOCK the same considerations as above apply. Matter of fact, it is also possible to try to converge using the ``metallic'' setup given above.


(2)参数注释

(1)LHFCALC-tag

LHFCALC= .TRUE. | .FALSE.

Default: LHFCALC=.FALSE.

The flag specifies, whether Hartree-Fock type calculations are performed.

   At the moment, it is recommended to select an all bands simultaneous algorithm, i.e. ALGO=Damped (IALGO=53) or ALGO=All (IALGO=58) in the INCAR file (see Sec. 6.466.47).

   The blocked Davidson algorithm ALGO=Normal is, with certain caveat【资格证明】, also supported,whereas calculations for the other algorithms (ALGO=Fast) are not currently supported (note: no warning is printed).

   The blocked Davidson algorithm ALGO=Normal is generally rather slow, and in many cases the Pulay mixer will be unable to determine the proper ground-state.

   We hence recommend to select the blocked Davidson algorithm only in combination with straight mixing or a Kerker like mixing. The following combination have been successfully applied for small and medium sized systems

LHFCALC = .TRUE. ; ALGO = Normal ; IMIX = 1 ; AMIX = aDecrease the parameter a until convergence is reached.

In most cases, however, it is recommended to use the damped algorithm with suitably chosen timestep. The following setup for the electronic optimization works reliably in most cases:

LHFCALC = .TRUE. ; ALGO = Damped ; TIME = 0.4If convergence is not obtained, it is recommended to reduce the timestep TIME. 


(2)HFSCREEN


HFSCREEN determines the range separation parameter in range separated hybrid functionals. In combination with PBE potentials, attributing a value to HFSCREEN will switch from the PBE0 functional (in case LHFCALC=.TRUE.) to the closely related HSE03 or HSE06 functional [93,94,95].


Note: A comprehensive study of the performance of the HSE03/HSE06 functional compared to the PBE and PBE0 functionals can be found in Ref. [99]. The B3LYP functional was investigated in Ref. [100]. Further applications of hybrid functionals to selected materials can be found in the following references: Ceria (Ref. [101]), lead chalcogenides (Ref. [102]), CO adsorption on metals (Refs. [103,104]), defects in ZnO (Ref. [105]), excitonic properties (Ref. [106]), SrTiO$ _3$ and BaTiO$ _3$ (Ref. [107]).

LTHOMAS= .TRUE. | .FALSE.

Default: LTHOMAS=.FALSE.


If the flag LTHOMAS is set, a similar decomposition of the exchange functional into a long range and a short range part is used. This time, it is more convenient to write the decomposition in reciprocal space:


$.displaystyle .frac{4 .pi e^2}{.vert{.bf G}.vert^2}=S_{.mu}(.vert{.bf G}.vert)+...
...{.vert{.bf G}.vert^2} -.frac{4 .pi e^2}{.vert{.bf G}.vert^2 +k_{TF}^2} .right),$(6.69)



where $ k_{TF}$ is the Thomas-Fermi screening length. HFSCREEN is used to specify the parameter $ k_{TF}$. For typicalsemi-conductors, the Thomas-Fermi screening length is about 1.8 Å$ ^{-1}$, and setting HFSCREEN to this value yields reasonable band gaps for most materials.

   In principle, however, the Thomas-Fermi screening length depends on the valence electron density; VASP determines this parameter from the number of valence electrons (POTCAR) and the volume and writes the corresponding value to the OUTCAR file:

Thomas-Fermi vector in A             =   2.00000Since, VASP counts the semi-core states and $ d$-states as valence electrons, although these states do not contribute to the screening, the values reported by VASP are, however, often incorrect. Details can be found in literature [96,97,98]. Another important detail concerns that implementation of the density functional part in the screened exchange case. Literature suggests that a global enhancement factor $ z$ (see Equ. (3.15) in Ref. [98]) should be used, whereas VASP implements a local density dependent enhancement factor $ z= k_{TF}/.bar k$, where $ .bar k$ is the Fermi wave vector corresponding to the local density (and not the average density as suggested in Ref. [98]). The VASP implementation is in the spirit of the local density approximation.



(3) ALGO参数


ALGO-tag ALGO = Normal | VeryFast | Fast | Conjugate | All | Damped | Subrot | Eigenval | None | Nothing | Exact | Diag


Default

ALGO=Normal



The ALGO tag is a convenient option to specify the electronic minimisation algorithm in VASP.4.5 and later versions. Except for ``None'' and ``Nothing'', ``Exact'' and ``Diag'' (which must be spelled out), the first letter determines the applied algorithm. Conjugate, Subrot, Eigenval, Exact, None and Nothing are only supported by VASP.5.2.12 and newer versions.

ALGO = Normal selects IALGO = 38 (blocked Davidson iteration scheme), whereas ALGO = Very_Fast selects IALGO = 48 (RMM-DIIS). A faily robust mixture of both algorithm is selected for ALGO = Fast. In this case, Davidson (IALGO = 38) is used for the initial phase, and then VASP switches to RMM-DIIS (IALGO = 48). Subsequencly, for each ionic update, one IALGO = 38 sweep is performed for each ionic step (except the first one).

The ``all band simultaneous update of orbitals'' can be selected using ALGO = Conjugate or ALGO = All (IALGO = 58, in both cases the same conjugate gradient algorithm is used). A damped velocity friction algorithm is selected using ALGO = Damped (IALGO = 53). ALGO = Subrot selects subspace rotation or diagonalization in the sub-space spanned by the calculated NBANDS orbitals (IALGO = 4). ALGO = Exact or ALGO = Diag performs an exact diagonalization (IALGO = 90), and we recommend to use this if more than 30-50 % of the states are calculated (e.g. for $ GW$ or RPA calculations). ALGO = Eigenval allows to recalculate one electron energies, density of state and perform selected postprocessing using the current orbitals (IALGO = 3) e.g. read from WAVECAR. ALGO = None or ALGO = Nothing allows to recalculate the density of states (eigenvalues from WAVECAR, e.g. using different smearing or tetrahedron method) or perform other selected postprocessing using the current orbitals and one electron energies (IALGO = 2) e.g. read from WAVECAR.



(4)PRECFOCK参数

PRECFOCK: FFT grid in the Hartree-Fock and GW related routines

PRECFOCK= Low | Medium | Fast | Normal | Accurate

Default: PRECFOCK=Normal

The PRECFOCK parameter controls the FFT grid for the exact exchange (Hartree-Fock) routines, i.e. it is possible to chose a different grid for the exact exchange part, and for the local Hartree and DFT potentials. In fact, the exchange is rather insensitive to the FFT grids, and in many cases a rather coarse grid can be used to calculate the overlap density and the potentials. Since the exact exchange requires the evaluation of an overlap density (compare 6.59)


$.displaystyle .phi_{{.bf k}n}^{*}({.bf r}).phi_{{.bf q}m}^{*}({.bf r})
$


errors in the convolution (aliasing errors) are only avoided, if the FFT grid contains all Fourier components up to twice the plane wave with the largest wave vector ($ 2 .vert G_{.rm cut}.vert$).

For Low and Fast, however, the smallest possible FFT grid, which just encloses the cutoff sphere ($ .vert G_{.rm cut}.vert$) determined by the plane wave cutoff (ENCUT), is used. This accelerates the calculations by roughly a factor two to three, but causes slight changes in the total energies and some noise in the calculated forces. The corresponding FFT grid that is used in the Hartree Fock routines is written to the OUTCAR file after the lines

FFT grid for exact exchange (Hartree Fock)For PRECFOCK=Normal, the FFT grid for the exact exchange is identical to the FFT grid used for the orbitals for PREC=Normal in the DFT part. For PRECFOCK=Accurate, the FFT grid for the exact exchange is identical to the FFT grid used for the orbitals for PREC=Accurate in the DFT part (any combination of PREC and PRECFOCK is allowed).

For PRECFOCK=Fast, Normal and Accurate, the augmentation charges--which are required to restore the norm and dipoles of the overlap density on the plane wave grid --are made soft, such that an accurate presentation on the plane wave grid is possible even for relatively coarse FFT grids. The sphere size is printed out after

Radii for the augmentation spheres in the non-local exchangeThe following table summarises the possible setting:


PRECFOCKFFT gridaugmentation chargeadvantage/disatvantage
VASP.5.2.2 compatible, not recommended
Low$ G_{.rm cut}^a$identical to standard DFTlarge noise in forces/energy errors
Mediumidentical to std. FFTidentical to standard DFTsome noise in forces/good energy
VASP.5.2.4 and newer, recommended
Fast$ G_{.rm cut}^a$very soft augmentation charge$ ^c$some noise in forces/good energy
Normal3/2$ G_{.rm cut}^a$soft augmentation charge$ ^b$accurate forces and energy
Accurate2 $ G_{.rm cut}^a$soft augmentation charge$ ^b$very accurate forces and energy

$ ^a .quad .frac{ .hbar^2}{2 m_e} .vert G_{.rm cut}.vert^2 = {.tt ENCUT} $
$ ^b$ soft augmentation charge: radius for augmentation sphere is increased by factor 1.25 compared to default
$ ^c$ very soft augmentation charge: radius is increased by factor 1.35 compared to default except for $ s$ like charge, for the $ s$ channel the radius of the augmentation sphere is increased by a factor 1.25

Even PRECFOCK=Fast yields fairly low noise in the forces and virtually no egg-box effects (aliasing errors). In the forces, the noise is usually below 0.01 eV/Å. For PRECFOCK=N and PRECFOCK=A, noise is usually not an issue, and the accuracy is sufficient even for phonon calculations in large supercells.




(5) NKRED参数



NKRED, NKREDX, NKREDY, NKREDZ and EVENONLY, ODDONLY

NKRED= [integer]

NKREDX= [integer] $ .qquad$NKREDY= [integer] $ .qquad$NKREDZ= [integer]

EVENONLY= [logical] $ .qquad$ODDONLY= [logical]

NKRED, or alternatively, NKREDX, NKREDY, and NKREDZ are the grid reduction factors that may be used to evaluate the Hartree-Fock kernel (see Eq. 6.59) at a subgrid of $ q$-points. Under certain circumstances this is possible without much loss of accuracy (see Ref. [99]). Whether the errors remain small, depends on the range of the exchange interactions in the compound of choice. This can be understood along the following lines:

Consider the description of a certain bulk system, using a supercell made up of $ N$ primitive cells, in such a way that, $ .{{.bf A}_i'.}$, the lattice vectors of the supercell are given by $ {.bf A}_i'=n_i{.bf A}_i$ ($ i=1,2,3$), where $ .{{.bf A}_i.}$ are the lattice vectors of the primitive cell. Let $ R_{.rm max}=2/.mu$ be the distance for which


<!-- MATH
erfc(μ|rr|)|rr|0,for|rr|>Rmax
-->
$.displaystyle .frac{{.rm erfc}(.mu.vert{.bf r}-{.bf r}'.vert)}{.vert{.bf r}-{.b...
...ox 0, .hspace{3mm}{.rm for}.hspace{2mm}{.vert{.bf r}-{.bf r}'.vert}>R_{.rm max}$(6.70)



When the nearest neighbour distance between the periodically repeated images of the supercell <!-- MATH RNN>2Rmax -->$ R_{.rm NN}>2R_{.rm max}$ (i.e. <!-- MATH RNN>4/μ -->$ R_{.rm NN}>4/.mu$), the short-ranged Fock potential, $ V^{.rm SR}_x [.mu]$, can be represented exactly, sampling the BZ at the $ .Gamma $-point only, i.e.,


$.displaystyle V_x[.mu].left({.bf r},{.bf r}'.right)= -.frac{e^2}{2}.sum_m f_{{....
....frac{{.rm erfc}(.mu.vert{.bf r}-{.bf r}'.vert)} {.vert {.bf r}-{.bf r}' .vert}$(6.71)



This is equivalent to a representation of the bulk system using the primitive cell and a $ n_1.times n_2.times n_3$ sampling of the BZ,


$.displaystyle V_x[.mu].left({.bf r},{.bf r}'.right)= -.frac{e^2}{2}.sum_{{.bf q...
....frac{{.rm erfc}(.mu.vert{.bf r}-{.bf r}'.vert)} {.vert {.bf r}-{.bf r}' .vert}$(6.72)



where the set of $ .bf q$ vectors is given by


$.displaystyle .{{.bf q}.}=.{i{.bf G}_1+j{.bf G}_2+k{.bf G}_3.},$(6.73)



for $ i=1,..,n_1$, $ j=1,..,n_2$, and $ k=1,..,n_3$, with $ {.bf G}_{1,2,3}$ being the reciprocal lattice vectors of the supercell.

In light of the above it is clear that the number of $ q$-points needed to represent the short-ranged Fock potential decreases with decreasing $ R_{.rm max}$ (i.e., with increasing $ .mu$). Furthermore, one should realize that the maximal range of the exchange interactions is not only limited by the $ {.rm erfc}(.mu.vert{.bf r}-{.bf r}'.vert)/.vert{.bf r}-{.bf r}'.vert$ kernel, but depends on the extend of the spatial overlap of the orbitals as well [this can easily be shown for the Fock exchange energy when one adopts a Wannier representation of the orbitals in Eqs. (6.59) or (6.67)]; $ R_{.rm max}$, as defined in Eq. (6.70), therefore, provides an upper limit for the range of the exchange interactions, consistent with maximal spatial overlap of the orbitals.

It is thus well conceivable that the situation arises where the short-ranged Fock potential may be represented on a considerably coarser mesh of points in the BZ than the other contributions to the Hamiltonian. To take advantage of this situation one may, for instance, restrict the sum over $ {.bf q}$ in Eq. (6.68) to a subset, $ .{{.bf q_k}.}$, of the full ($ N_{1}.times N_{2}.times N_{3}$) $ k$-point set, $ .{{.bf k}.}$, for which the following holds


$.displaystyle {.bf q_k} = {.bf b}_1 .frac{n_1 C_1}{N_1} + {.bf b}_2 .frac{n_2 C_2}{N_2} + {.bf b}_3 .frac{n_3 C_3}{N_3}, .hspace{3mm}(n_i=0,..,N_i-1)$(6.74)



where $ {.bf b}_{1,2,3}$ are the reciprocal lattice vectors of the primitive cell, and $ C_i$ is the integer grid reduction factor along reciprocal lattice direction $ {.bf b}_i$. This leads to a reduction in the computational workload to:


$.displaystyle .frac{1}{C_1 C_2 C_3}$(6.75)



The integer grid reduction factor are either set separately through $ C_1$=NKREDX, $ C_2$=NKREDY, and $ C_3$=NKREDZ, or simultaneously through $ C_1=C_2=C_3$=NKRED. The flag EVENONLY chooses a subset of $ k-$points with $ C_1=C_2=C_3=1$, and $ n_1+n_2+n_2$ even. It reduces the computational work load for HF type calculations by a factor two, but is only sensible for high symmetry cases (such as sc, fcc or bcc cells).

Note: From occurrence of the range-separation parameter $ .mu$ in the equation above, one should not obtain the impression that the grid reduction can only be useful in conbination with the HSE03/HSE06 functional (see Sec. 6.71.8). It can be applied to the PBE0 and pure Hartree-Fock cases as well, although from the above, it might be clear that the range seperated HSE functional will allow for a larger reduction of the grid than the conventional hybrid functionals (see Ref. [99]).


When NKRED should not be applied

In metallic systems, NKRED must be used with great care, and results might be wrong, if NKRED is applied. Problematic cases include electron or hole doped semiconductors or insulators. If two electrons are added to a bulk TiO$ _2$ cell containing 72 atoms, and calculations are performed using $ 2.times 2 .times 2$ k-points, the following results are obtained for the one-electron energies and occupancies with and without NKRED=2 (AEXX=0.2 ; HFSCREEN = 0.2):

k-point   1: 0.0000    0.0000    0.0000             DOPED NKRED = 2           DOPED NKRED = 1              UNDOPED CASE  band No.  band energies occupation   band energies occupation   band energies occupationvalence bands    262       2.4107      2.00000        2.4339      2.00000        2.4082      2.00000    263       2.4107      2.00000        2.4339      2.00000        2.4082      2.00000    264       2.8522      2.00000        2.8597      2.00000        2.8566      2.00000conduction bands     265       5.4046      2.00000        5.8240      1.87262        5.8126      0.00000    266       5.4908      2.00000        5.8695      1.62151        5.8424      0.00000    267       5.4894      2.00000        5.8695      1.62192        5.8424      0.00000 k-point   2: 0.5000    0.0000    0.0000             DOPED NKRED = 2           DOPED NKRED = 1              UNDOPED CASE  band No.  band energies occupation   band energies occupation  band energies occupationvalence bands    262       2.0015      2.00000        2.0144      2.00000       2.0160      2.00000           263       2.5961      2.00000        2.6072      2.00000       2.6046      2.00000    264       2.5961      2.00000        2.6072      2.00000       2.6045      2.00000conduction bands                                  265       6.1904      0.00000        6.1335      0.00435       6.0300      0.00000    266       6.1904      0.00000        6.1335      0.00435       6.0300      0.00000    267       6.1907      0.00000        6.1340      0.00426       6.0305      0.00000 k-point   3 :  0.5000    0.5000    0.0000             DOPED NKRED = 2           DOPED NKRED = 1              UNDOPED CASE  band No.  band energies occupation   band energies occupation  band energies occupationvalence bands    262       2.4237      2.00000        2.4433      2.00000       2.4287      2.00000    263       2.4238      2.00000        2.4432      2.00000       2.4287      2.00000    264       2.4239      2.00000        2.4433      2.00000       2.4287      2.00000conduction bands                          265       5.8966      0.42674        5.9100      1.24121       5.8817      0.00000    266       5.8780      0.54128        5.9100      1.24143       5.8817      0.00000    267       5.8826      0.50661        5.9100      1.24261       5.8817      0.00000Without NKRED, the one electron energies are pretty similar to the one electron energies in the undoped system (last two columns), whereas using NKRED a strong reduction of the ``gap'' between the valence and conduction band is observed, in particular, close to the conduction band minimum (in this case the $ .Gamma $ point). This result is an artefact of the approximation used for NKRED=2. The non-local exchange operator cancels the self-interaction present in the Hartree-potential. For NKRED=2 and $ 2.times 2 .times 2$ k-points, the non-local exchange operator at each k-point is evaluated using the one-electron orbitals at this k-point only, e.g.:


$.displaystyle V_{.bf k}.left( {.bf G},{.bf G}'.right)= .langle {.bf k}+{.bf G} ...
...}}({.bf G}'-{.bf G}'') C_{m{.bf k}}({.bf G}-{.bf G}'')} {.vert{.bf G}''.vert^2}$(6.76)



The sum over $ .bf q$, which is present in Equ. (6.63), is replaced by the single k-point $ {.bf k}$. This reduces the self-interaction for states that have originally an occupancy larger one, concomitantly pulling those states to lower energies. Initially empty states (occupancy smaller one) are pushed up slightly. Since this is clearly an artefact, NKRED must be used with uttermost care for large supercells with coarse k-point sampling. Please always check whether occupancies are similar at all k-points, if this is not the case, the calculations should be double checked without NKRED.

Since Hartree-Fock type calculations using $ 2.times 2 .times 2$ k-points without NKRED, are roughly 64 times more expensive than those using the $ .Gamma $ point only, it might seem impossible to do anything but $ .Gamma $ point only calculations. However, VASP allows to generate special k-points using generating lattices (see Sec. 5.5.3). Particularly usefull for Hartree-Fock type calculations, are the following k-point sets

k-point set generating a bcc like lattice in the BZ ->  2 k-points in BZ0direct 0.5 0.5 0.5 -.5 -.5 0.5 0.5 -.5 -.5 0 0 0This KPOINTS file generates two 2 k-points, one at the $ .Gamma $-point and one along the space diagonal at the BZ boundary ($ R$-point).

The second KPOINTS file generates 4 k-points, one at the $ .Gamma $-point and three at the $ S$-points (the latter ones might be symmetry equivalent for cubic cells).

k-point set generating an fcc lattice ->  4 k-points in BZ0direct 0.5 0.5 0.0 0.0 0.5 0.5 0.5 0.0 0.5 0 0 0Using such grids, sensible and fairly rapidly converging results are obtained e.g. for electron and hole doped materials, even if the conduction or valence band is partially occupied or depleted. For instance for TiO$ _2$ the following energies are obained: Gamma only     TOTEN  =      -837.759900 eV2 k-points     TOTEN  =      -838.039157 eV4 k-points     TOTEN  =      -838.129712 eV2x2x2          TOTEN  =      -838.104787 eV2x2x2 NKRED=2  TOTEN  =      -838.418681 eVNote that results using NKRED not improved compared to $ .Gamma $ only calculations.




附: 网络摘录:来自遥远的博客

http://blog.163.com/zxg_far@126/blog/static/9805567420134302241600/


1、首先进行标准的DFT计算;

2、HSE计算

(1)NCAR文件内容示例:

SYSTEM =Name
 ISTART =     1      

 ICHARG =     2      

 GGA    =     91
 VOSKOWN=     1
 ISPIN   =    2
 MAGMOM  =   3 47*0

 NELM   =     200

 EDIFF  =     1E-04  

 ISMEAR =     0
 SIGMA  =     0.05    

 LDIAG  =      T      

 LREAL  =      T      

 NEDOS  =     2000
 EMIN   =     -15
 EMAX   =     15

 LHFCALC =  T
 PRECFOCK  = F
 HFSCREEN  =  0.2    ! Switch PBE0 to PBE03 or PBE06
 ALGO  = Damp
 IMIX  =  4
 AMIX  =  0.2             !以下四项主要用于控制收敛情况
 BMIX  =  0.0001
 AMIX_MAG = 0.8
 BMIX_MAG  =  0.0001

 TIME   =   0.2
 AEXX   =   0.25
 AGGAX  =   0.75
 AGGAC  =   1.0

2、KPOINTS

   可以将SCF过程得到的IBZKPT改名成KPOINTS

3、POSCAR

  可以将SCF过程得到的CONTCAR改名成POSCAR

4、POTCAR  同于SCF过程

由于HSE计算过程对内存要求较高,可以把SCF过程中节点数增加,而每个节点上的进程数减少来实现;另外,计算过程非常缓慢,要耐心等待!


(3) HSE Functional for accurate Band Gaps in VASP

http://cms.mpi.univie.ac.at/vasp-forum/forum_viewtopic.php?4.6633.10

These instructions are taken from the Vasp forum and are included here simply to remind me.

Band structures using hybrid functionals have to be calculated the following way:

-) First perform a selfconsistent Hartree-Fock/HSE calculation using a conventional KPOINTS file. 【这一步怎么设置】

-) Copy the IBZKPT file to KPOINTS, and explicitely add all desired k-points along high-symmetry 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 k-points to 0.【能带结构计算k点权重设置为0?】

-) Do not forget to set the number of k-points in KPOINTS correctly (to the number of the k-points used in the standard mesh PLUS the number of the k-points along the lines), such that all k-points 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 k-points 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 k-points are fully converged (note: since their weight is zero, they do not contribute to the total energy). This can be done using e.g.

ALGO = N ; NELMIN = 5 ! Davidson, minimum 5 scf-stepsIBRION = 1 ! Use simple charge mixer, since

Pulay might blow up

-) The KS-eigenvalues of the states along the high-symmetry lines are written in OUTCAR, EIGENVAL, vasprun.xml; please cut the k-points 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 bandstructure-plots)

Note: A Hartee-Fock calculation can NOT be continued from an existing CHGCAR file, since the non-local exchange is not determined by the charge density but by the density matrix and/or the KS-orbitals.


网络问答

A::::本人用vasp 5.2 做了一个HSE混合泛函的测试,体系是ZnO,只用一个单胞。(不可约原子2个)
INCAR 中,加入
LHFCALC = .TRUE. ; HFSCREEN = 0.2
ALGO = Damped ; TIME = 0.4
其他都是默认。做静态计算, 结果用12个核,算了1.5个小时。这个太不正常了,而crystal06,用B3LYP,只用了大约6秒,这样的差距也太大了吧

Q::::

单说自洽的话应该大约慢10倍左右吧,不过HSE有两个问题:SCF收敛需要更多的步数;几何优化的部分可能是有bug,经常几个原子体系也需要很多步甚至不收敛





http://blog.sciencenet.cn/blog-296555-935851.html

上一篇:[转载]Wyckoff position 各种晶格群的表格
下一篇:[转载]【转载】Partial Charge Density

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备14006957 )

GMT+8, 2019-11-12 03:36

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部