# Reciprocal Space Numerical Integration (KSpace)¶

The k-space integration can be controlled via the KSpace block key. Two different k-space integration methods are available: the Regular Grid (default) and the Tetrahedron Method.

## Regular K-Space grid¶

By default BAND uses a regular grid to sample the Brillouin zone (BZ).

### Automatic mode¶

The simplest way to adjust the quality of the k-space integration is via the Quality key:

KSpace
Quality [Basic|Normal|Good|VeryGood|Excellent]
End

Quality

(Default: Normal) With the automatic grid, the program will look at the size of a lattice vector. A big vector in real space, means a small one in reciprocal space. Thinking in real space lattice vectors the following intervals will be distinguished: 0-5 Bohr, 5-10 Bohr, 10-20 Bohr, 20-50 Bohr, and beyond. Here is the table explaining how many points will be used along a lattice vector.

 range Basic Normal Good VeryGood Excellent 0-5 5 9 13 17 21 5-10 3 5 9 13 17 10-20 1 3 5 9 13 20-50 1 1 3 5 9 50-... 1 1 1 3 5

By preferring odd-numbered values we can use a quadratic interpolation method, and have the $$\Gamma$$ point in the grid. It is then reasonable to assume a decaying error when going to a better quality setting.

### User-defined regular grid¶

It is possible to manually define the number of k-space points along each reciprocal lattice vector:

KSpace
Grid n1 {n2} {n3}
End


For 1D periodic systems you should specify only n1, for 2D systems n1 and n2, and for 3D systems n1, n2 and n3.

## Tetrahedron Method¶

The tetrahedron method can be useful when especially high symmetry points in the BZ are needed to capture the correct physics of the system, graphene being a notable example.

KSpace integer &
Grid Symmetric
End


The parameter for numerical integration over the BZ is an integer value.

• 1: absolutely minimal (only the $$\Gamma$$ point is used)
• 2/4/...: linear tetrahedron method