In order to calculate a band structure in Density Functional Theory, at first
the ground-state density for the given system must be obtained. In the DFTB picture that
corresponds to obtaining self-consistent charges on the atoms. The charges must be convergent
with respect to two quantities: Tolerance of the SCC cycle and quality of the
k-point sampling to give the correct results. In the current tutorial, the SCC tolerance is set to
1e-5. For the k-point sampling the 8x8x8 Monkhorst-Pack set is used. Both
quantities ensure good convergence in the charges for this case.
The input dftb_in.hsd for GaAs is as follows:
Geometry = {
Periodic = Yes
LatticeVectors [Angstrom] = {
2.80 2.80 0.00
2.80 0.00 2.80
0.00 2.80 2.80
}
TypeNames = { "Ga" "As" }
TypesAndCoordinates [relative] = {
1 0.00 0.00 0.00
2 0.25 0.25 0.25
}
}
Hamiltonian = DFTB {
SCC = Yes
SCCTolerance = 1e-5
MaxAngularMomentum = {
Ga = "d"; As = "d"
}
SlaterKosterFiles = Type2FileNames {
Prefix = "./hyb-0-1/"
Separator = "-"
Suffix = ".skf"
}
KPointsAndWeights = SupercellFolding {
8 0 0
0 8 0
0 0 8
0.5 0.5 0.5
}
}
A few notes about the input:
TypesAndCoordinates [relative] = {
1 0.00 0.00 0.00
2 0.25 0.25 0.25
}
SupercellFolding method is used to specify the k-points. If
only the diagonal elements are specified and the shift vectors are set to
0.5 for even numbers in the diagonal (or 0.0 for odd ones), the
resulting k-point set corresponds to the appropriate Monkhorst-Pack k-point
scheme. (See the manual of DFTB+ for more details.)
SCCTolerance = 1e-8) or a higher order Monkhorst-Pack mesh
(e.g. 10x10x10). The total energy does not change considerably in
any of the two cases, so that the used parameters can be considered
to yield convergent charges.
The calculation with dftb+ and the input above completes successfully
after a few iterations. The file charges.bin is created (as
well a several others),
which contains the orbital population (charges) from the last
iteration as a binary file.