Obtaining the band structure
The starting point for the calculation of a band structure is a finished Fleur calculation yielding a self-consistent density. This means that a charge density file with this density should be present in the working directory and be consistent with the input file.
The main difference between a band structure calculation and an SCF calculation is that different k point sets have to be used. While a good SCF calculation uses a k point set that representatively samples the Brillouin zone, the k point set for a band structure calculation has the form of a k point path along high-symmetry lines of the Brillouin zone.
The most elegant way to specify the alternative k point set in the Fleur input file is
to make use of the optional XML element
calculationSetup/bzIntegration/altKPointSet. If such an
element is present and
calculationSetup/bzIntegration/altKPointSet/@purpose is set to
specifies the k point set to be used for band structure calculations. If no such element is present
the default k point set of the Fleur input file is used. Note that the preferred way to specify
a k point set for a band structure calculation is to use the
kPointCount XML element and just
define the number of points on the automatically created high-symmetry k point path in
If a special path deviating from the automatically generated one is required it can be specified by
enumerating the high-symmetry k points along the path in
kPointCount/specialPoint XML elements.
After defining the k point set for the band structure calculation the band structure calculation has to be switched on.
To start a band strucure calculation with Fleur the
output/@band switch has to be set to
Fleur has to be started in the respective directory. Since every new Fleur run overwrites the old output files
make sure that you create backups of these files before starting the band structure calculation. The data from the
out.xml files may be needed in the postprocessing to the band structure calculation.
The output of a band structure calculation is stored in several files.
For nonmagnetic calculations the band structure is stored in the file
bands.1 in terms of two columns
with an x coordinate in the first column and an energy in eV in the second column. For magnetic calculations this file
contains the data for the first spin while the data for the other spin is stored in the file
Note that the Fermi energy calculated in Fleur depends on the k point set. If the Brillouin zone is well-sampled one obtains a good value for the Fermi energy. k point sets for band structure calculations are not made for such a Brillouin zone sampling and the quality of the Fermi energy depends on whether the highest occupied state is near the high-symmetry k point path or not. Therefore one has to pay attention to correct the raw band structure data to the correct Fermi energy. This can be performed while plotting the data.
To plot the band structure data Fleur writes out a gnuplot script
band.gnu. It can be used by
gnuplot < band.gnu > bands.ps and afterwards converting the postscript file into a
ps2pdf bands.ps. The correction offset can directly be inserted into the plotting command in the script.
The Fermi energy from the last calculation can be obtained from the
out.xml file by invoking
grep FermiEnergy out.xml.
Depending on whether a
cdn1 or a
cdn.hdf file is used some correction of the Fermi
energy is automatically performed in the raw data. In the case of the
cdn.hdf file the raw data is already
aligned to the Fermi energy obtained from the self-consistency calculation. Otherwise it is aligned to the Fermi
energy of the band structure calculation. A Fleur output to the command line will inform you about this.
Note that it may also be that the Fermi energy from the band structure calculation is the better choice, i.e., if the highest occupied state is directly on the chosen k point path. But the Fermi energy from the SCF calculation can systematically be converged by choosing ever finer k point meshes.
The following figure shows the band structure for Silicon using the default -point path. It was directly created with the gnuplot script mentioned above. No correction of the Fermi energy had to be performed here because the highest occupied state is located at a point included in the default path.
Si band structure
Another file written out by band structure calculations is the HDF5 file
banddos.hdf. In this file you will find
all data needed to create a band structure and also the projections of every state onto each atom and onto each orbital character
at each atom. This data can be used to create band structures with additional encoded information.