4.3 Boundary conditions and kpoints
ABACUS uses periodic boundary conditions for both crystals and finite systems. For isolated systems, such as atoms, molecules, clusters, etc., one uses so called the supercell model. Lattice vectors of the supercell are set in the STRU file.
For the input kpoint (KPT) file, the file should either contain the kpoint coordinates and weights or the mesh size for creating the kpoint gird. Both options are allowed in ABACUS.
1. To generate kmesh automatically
To generate kmesh automatically, it requires the input subdivisions of the Brillouin zone in each direction and the origin for the kmesh. ABACUS uses the MonkhorstPack method to generate kmesh, and the following is the input kpoint (KPT) file used in ABACUS.
K_POINTS //keyword for start
0 //total number of kpoint, ’0’ means generate automatically
Gamma //which kind of MonkhorstPack method, ’Gamma’ or ’MP’
2 2 2 0 0 0 //first three number: subdivisions along recpri. vectors last three number: shift of the mesh
The third line controls generating kmesh with origin at the Γ point(’Gamma’) or using the original MonkhorstPack scheme(’MP’).
2. To set up the kpoints explicitly
If the user wants to set up the kpoints explicitly, the input kpoint file should contain the kpoint coordinates and weights. An example is given as follows:
K_POINTS //keyword for start
8 //total number of kpoint
Direct //’Direct’ or ’Cartesian’ coordinate
0.0 0.0 0.0 0.125 //coordinates and weights
0.5 0.0 0.0 0.125
0.0 0.5 0.0 0.125
0.5 0.5 0.0 0.125
0.0 0.0 0.5 0.125
0.5 0.0 0.5 0.125
0.0 0.5 0.5 0.125
0.5 0.5 0.5 0.125
3. Band structure calculations
ABACUS uses specified highsymmetry directions of the Brillouin zone for band structure calculations. The third line of kpoint file should start with ’Line’ or ’Line Cartesian’ for line mode Line’ means the positions below are in Direct coordinates, while ’Line Cartesian’ means in Cartesian coordinates
K_POINTS # keyword for start
6 # number of high symmetry lines
Line # linemode
0.5 0.0 0.5 20 # X
0.0 0.0 0.0 20 # G
0.5 0.5 0.5 20 # L
0.5 0.25 0.75 20 # W
0.375 0.375 0.75 20 # K
0.0 0.0 0.0 1 # G
The fourth line and the following are special kpoint coordinates and number of kpoints between this special kpoint and the next.
