Band Structure¶
BAND can calculate the band structure for the standard k-path in the Brillouin zone [1] and saves the corresponding data to the binary file RUNKF.
The band structure is best examined with the GUI module BandStructure see:
- Advanced BAND tutorial: Calculation of Band Structure and COOP of CsPbBr3 with BAND
BandStructure
Enabled Yes/No
Automatic Yes/No
DeltaK float
FatBands Yes/No
UseSymmetry Yes/No
EnergyAboveFermi float
EnergyBelowFermi float
End
BandStructure
Type: Block Description: Options for the calculation of the band structure. Enabled
Type: Bool Default value: No GUI name: Calculate band structure Description: If True, Band will calculate the band structure and save it to file for visualization. Automatic
Type: Bool Default value: Yes GUI name: Automatic generate path Description: If True, BAND will automatically generate the standard path through the Brillouin zone. If False BAND will use the user-defined path in BZPath. DeltaK
Type: Float Default value: 0.1 Unit: 1/Bohr GUI name: Interpolation delta-K Description: Step (in reciprocal space) for band structure interpolation. Using a smaller number (e.g. 0.03) will result in smoother band curves at the cost of an increased computation time. FatBands
Type: Bool Default value: Yes GUI name: Calculate fatbands Description: If True, BAND will compute the fat bands (only if BandStructure%Enabled is True). The Fat Bands are the periodic equivalent of the Mulliken population analysis. UseSymmetry
Type: Bool Default value: Yes GUI name: Use symmetry Description: If True, only the irreducible wedge of the Wigner-Seitz cell is sampled. If False, the whole (inversion-unique) Wigner-Seitz cell is sampled. Note: The Symmetry key does not influence the symmetry of the band structure sampling. EnergyAboveFermi
Type: Float Default value: 0.75 Unit: Hartree GUI name: Energy above Fermi level Description: Bands with minimum energy larger then FermiEnergy + EnergyAboveFermi are not saved to file. Increasing the value of EnergyAboveFermi will result in more unoccupied bands to be saved to file for visualization. EnergyBelowFermi
Type: Float Default value: 10.0 Unit: Hartree GUI name: Energy below Fermi level Description: Bands with maximum energy smaller then FermiEnergy - EnergyBelowFermi are not saved to file. Increasing the value of EnergyBelowFermi will result in more occupied core bands to be saved to file for visualization. Note: EnergyBelowFermi should be a positive number!
Information on the k-path used for band structure plotting (including the fractional coordinates of high-symmetry k-points) can be found in the section KPath
of the output file.
User-defined path in the Brillouin zone¶
If BZStruct%Automatic
is False
, BAND will compute the band structure for the user-defined path in the BZPath
block.
BZPath
path # Non-standard block. See details.
...
End
End
BZPath
Type: Block Description: Definition of the user-defined path in the Brillouin zone for band structure plotting. path
Type: Non-standard block Recurring: True Description: Definition of the k-points in a path. The vertices of your path should be defined in fractional coordinates (wrt the reciprocal lattice vectors)
You should define the vertices of your path in fractional coordinates (wrt the reciprocal lattice vectors) in the Path
sub-block.
If you want to make a jump in your path, you need to specify a new Path
sub-block.
In the following example we define the path Gamma-X-W-K|U-X
for a FCC lattice:
BZPath
Path
0.000 0.000 0.000
0.500 0.000 0.500
0.500 0.250 0.750
0.375 0.375 0.750
End
Path
0.625 0.250 0.625
0.500 0.000 0.500
End
End
Definition of the Fat Bands¶
The fat bands \(F_{i,n,\sigma,\vec{k}}\) are the periodic equivalent of the Mulliken population. They are defined as:
where \(C_{i,n,\sigma,\vec{k}}\) and \(S_{i,j,\vec{k}}\) are the orbital coefficients and the overlap matrix elements respectively. The indices \(i\) and \(j\) denote basis functions, \(n\) is the band index, \(\sigma\) is the spin index and \(\vec{k}\) is a reciprocal vector in the Brillouin zone.
Band Gap¶
The band gap (if any) is printed in the output. Here is an example for the NaCl crystal:
----------------------------------------
Band gap information
----------------------------------------
Number of valence electrons 16
Valence Band index 8
Top of valence Band (a.u.) -0.192
Bottom of conduction Band (a.u.) -0.039
Band gap (a.u.) 0.153
Band gap (eV) 4.173
Band gap (kcal) 96.235
References
[1] | W. Setyawan and S. Curtarolo, High-throughput electronic band structure calculations: Challenges and tools, Computational Materials Science 49 (2010) 299–312. |
Calculation of the Fermi Surface¶
If the system has no band gap it is a metal, and that means that the Fermi surface is a complex shape in the Brillouin zone. As multiple bands may be crossing the fermi energy there may be multiple surfaces. In case of a spin unrestricted calculation both spins have a fermi surfrace of their own. For 2D systems the “surface” consists of one or more lines. The result can be viewed with the GUI module amsbands.
- Advanced BAND tutorial: Bands, dos and Fermi surface with BAND
FermiSurface
Enabled Yes/No
KIntegForSymmetricKGrid integer
NMesh integer
End
FermiSurface
Type: Block Description: Calculation of the Fermi surface for metals Enabled
Type: Bool Default value: No GUI name: Calculate Fermi surface Description: Calculate the Fermi surface if the system has no band gap (i.e. is a metal). The result can be visualized with amsbands. KIntegForSymmetricKGrid
Type: Integer Default value: -1 Description: If the (default) regular k-grid is used, a symmetric one is created to determine the Fermi surface. If this key is not specified an automatic value of kInteg is used. Odd values trigger quadratic interpolation. NMesh
Type: Integer Default value: 7 Description: Improves the matching of the interpolated quadratic surface. For better results it makes more sense to increaes KIntegForSymmetricKGrid.