Requests for technical support from the VASP group should be posted in the VASP-forum.

# K-point integration

In this section we discuss partial occupancies. A must for all readers.

First there is the question why to use partial occupancies at all. The answer is: partial occupancies help to decrease the number of k-points necessary to calculate an accurate band-structure energy. This answer might be strange at first sight. What we want to calculate is, the integral over the filled parts of the bands

${\displaystyle \sum _{n}{\frac {1}{\Omega _{{{\mathrm {BZ}}}}}}\int _{{\Omega _{{{\mathrm {BZ}}}}}}\epsilon _{{n{\mathbf {k}}}}\,\Theta (\epsilon _{{n{\mathbf {k}}}}-\mu )\,d{\mathbf {k}},}$

where ${\displaystyle \Theta (x)}$ is the Dirac step function. Due to our finite computer resources this integral has to be evaluated using a discrete set of k-points[1][2][3]:

${\displaystyle {\frac {1}{\Omega _{{{\mathrm {BZ}}}}}}\int _{{\Omega _{{{\mathrm {BZ}}}}}}\to \sum _{{{\mathbf {k}}}}w_{{{\mathbf {k}}}}.}$

Keeping the step function we get a sum

${\displaystyle \sum _{{{\mathbf {k}}}}w_{{{\mathbf {k}}}}\epsilon _{{n{\mathbf {k}}}}\,\Theta (\epsilon _{{n{\mathbf {k}}}}-\mu ),}$

which converges exceedingly slow with the number of k-points included. This slow convergence speed arises only from the fact that the occupancies jump form 1 to 0 at the Fermi-level. If a band is completely filled the integral can be calculated accurately using a low number of k-points (this is the case for semiconductors and insulators).

For metals the trick is now to replace the step function ${\displaystyle \Theta (\epsilon _{{n{\mathbf {k}}}}-\mu )}$ by a (smooth) function ${\displaystyle f(\{\epsilon _{{n{\mathbf {k}}}}\})}$ resulting in a much faster convergence speed without destroying the accuracy of the sum. Several methods have been proposed to solve this dazzling problem.

## Linear tetrahedron methods

Within the linear tetrahedron method, the term ${\displaystyle \epsilon _{{n{\mathbf {k}}}}}$ is interpolated linearly between two k-points. Bloechl[4] has recently revised the tetrahedron method to give effective weights ${\displaystyle f(\{\epsilon _{{n{\mathbf {k}}}}\})}$ for each band and k-point. In addition Bloechel was able to derive a correction formula which removes the quadratic error inherent in the linear tetrahedron method (linear tetrahedron method with Bloechel corrections). The linear tetrahedron is more or less fool proof and requires a minimal interference by the user.

The main drawback is that the Bloechels method is not variational with respect to the partial occupancies if the correction terms are included, therefore the calculated forces might be wrong by a few percent. If accurate forces are required we recommend a finite temperature method.

## Finite temperature approaches - smearing methods

In this case the step function is simply replaced by a smooth function, for example the Fermi-Dirac function[5]

${\displaystyle f({\frac {\epsilon -\mu }{\sigma }})={\frac {1}{\exp({\frac {\epsilon -\mu }{\sigma }})+1}}.}$

or a Gauss like function[6]

${\displaystyle f({\frac {\epsilon -\mu }{\sigma }})={\frac {1}{2}}\left(1-{{\mathrm {erf}}}\left[{\frac {\epsilon -\mu }{\sigma }}\right]\right).}$

is one used quite frequently in the context of solid state calculations. Nevertheless, it turns out that the total energy is no longer variational (or minimal) in this case. It is necessary to replace the total energy by some generalized free energy

${\displaystyle F=E-\sum _{{n{\mathbf {k}}}}w_{{{\mathbf {k}}}}\sigma S(f_{{n{\mathbf {k}}}}).}$

The calculated forces are now the derivatives of this free energy ${\displaystyle F}$ (see Forces). In conjunction with Fermi-Dirac statistics the free energy might be interpreted as the free energy of the electrons at some finite temperature ${\displaystyle \sigma =k_{{{\mathrm {B}}}}T}$, but the physical significance remains unclear in the case of Gaussian smearing. Despite this problem, it is possible to obtain an accurate extrapolation for ${\displaystyle \sigma \to 0}$ from results at finite ${\displaystyle \sigma }$ using the formula

${\displaystyle E(\sigma \to 0)=E_{0}={\frac {1}{2}}(F+E).}$

In this way we get a "physical" quantity from a finite temperature calculation, and the Gaussian smearing method serves as an mathematical tool to obtain faster convergence with respect to the number of k-points. For Al this method converges even faster than the linear tetrahedron method with Bloechel corrections.

## Improved functional form by Methfessel and Paxton

The method described previously has two shortcomings:

• The forces calculated by VASP are a derivative of the free electronic energy F (see Forces). Therefore the forces can not be used to obtain the equilibrium groundstate, which corresponds to an energy-minimum of ${\displaystyle E(\sigma \to 0)}$. Nonetheless the error in the forces is generally small and acceptable.
• The parameter ${\displaystyle \sigma }$ must be chosen with great care. If ${\displaystyle \sigma }$ is too large the energy ${\displaystyle E(\sigma \to 0)}$ will converge to the wrong value even for an infinite k-point mesh. If ${\displaystyle \sigma }$ is too small the convergence speed with the number of k-points will deteriorate. An optimal choice for ${\displaystyle \sigma }$ for several cases is given in table 1. Aluminium possesses an extremely simple DOS, Lithium and Tellurium are also simple nearly free electron metals, therefore ${\displaystyle \sigma }$ might be large. For Copper ${\displaystyle \sigma }$ is restricted by the fact that the d-band lies approximately 0.5 eV beneath the Fermi-level. Rhodium and Vanadium posses a fairly complex structure in the DOS at the Fermi-level, ${\displaystyle \sigma }$ must be small. The only way to get a good math>\sigma[/itex] is by performing several calculations with different k-point meshes and different parameters for ${\displaystyle \sigma }$.
Table 1: Typical convenient settings for ${\displaystyle \sigma }$ for different metals.
Sigma(eV)
Aluminium 1.0
Lithium 0.4
Tellurium 0.8
These problems can be solved by adopting a slightly different functional form for ${\displaystyle f(\{\epsilon _{{n{\mathbf {k}}}}\})}$. This is possible by expanding the step function in a complete orthonormal set of functions (method of Methfessel and Paxton [7]). The Gaussian function is only the first approximation (${\displaystyle N}$=0) to the step function, further successive approximations (${\displaystyle N}$=1,2,...) are easily obtained. In similarity to the Gaussian method, the energy has to be replaced by a generalized free energy functional
${\displaystyle F=E-\sum _{{n{\mathbf {k}}}}w_{{{\mathbf {k}}}}\sigma S(f_{{n{\mathbf {k}}}}).}$
In contrast to the Gaussian method the entropy term ${\displaystyle \sum _{{n{\mathbf {k}}}}w_{{{\mathbf {k}}}}\sigma S(f_{{n{\mathbf {k}}}})}$ will be very small for reasonable values of ${\displaystyle \sigma }$ (for instance for the values given in table 1). The ${\displaystyle \sum _{{n{\mathbf {k}}}}w_{{{\mathbf {k}}}}\sigma S(f_{{n{\mathbf {k}}}})}$ is a simple error estimation for the difference between the free energy ${\displaystyle F}$ and the "physical" energy ${\displaystyle E(\sigma \to 0)}$. ${\displaystyle \sigma }$ can be increased till this error estimation gets too large.