The band structure capability was developed by Arthur H. Edwards and Andrew C. Pineda (AFRL), who should be cited (unpublished) for any use of the band structure capability.
Overview
The band structure feature computes energies along lines connecting high symmetry points in the Brillouin zone for the standard Bravais lattices. The user must specify do bands in the run options, and then specify the desired branches of the band structure in the bandstructure section.
The code first performs a standard self-consistent calculation, with a presumably converged k-point sample, and then uses the resulting self-consistent potential to perform a set of non-self-consistent calculations at a sequence of k-points, traversing along branch lines from one high symmetry point to the next. The code uses the lattice settings and symmetry points for the Bravais lattices as recommended by
for most calculations. This paper, hereinafter referred to as “WSSC”, should be cited for use of this facility. The paper specifies recommended paths connecting the high symmetry points through the Brillouin zone (BZ) for each Bravais lattice. These paths are the defaults in the code when the number of branches is not specified by the user. For a couple common Bravais lattices, there are two implementations: one based on the WSSC paper and another (referred to as “standard” below) retained from an earlier development version of the code. Both implementations should yield identical results. In the WSSC paper, there are in some cases multiple variants of a Bravais lattice depending on the axis lengths and interaxis angles. These choices are handled internally by the code. See the WSSC paper for details.
Two output files are generated containing the information needed to generate a band structure plot, using a visualization tool such as Grace/XMGrace:
- lcao.bands – contains the band energies plotted versus distance along a parameterized path or “branch” in k-space. The length of each branch is proportional to the length of the branch in k-space.
- lcao.bandlbls – contains the labels of the high symmetry points and their positions along this path.
In the Bands Tutorial , an example is presented. An example Perl script that combines these two files into a usable plot using Grace/XMGrace is available upon request. This script includes options for adding labels.
Important notes about use of the band structure code (as of version 2.65):
- To get a band structure, the job must be a fixed-geometry/cell single point calculation.
The band structure capability is implemented within the SeqQuest code itself, the SeqQuest code acts as its own post-processor, The code cannot have done any relaxations or anything other than a single-point SCF. - The number of points along each symmetry line (branch) is fixed internally.
- One can only specify the band structure along high symmetry lines, using symbols as defined in WSSC.
- We follow the conventions of WSSC regarding the ordering of lattice vectors. That is, the lattice vectors are assumed to be ordered according to axis lengths and interaxial angles. This choice was made in order to limit the possible shapes of the Brillouin zone.
- In specifying symbols, “G”=gamma point.
Input options
bandstructure - the section MUST begin with this keyword
[gamma] - add gamma and only gamma pt to post-scf (and go directly to end bands
bravais lattice - specify the type of bravais lattice
bravlat - character*3 string to specify lattice, see Details
nbranch - number of branches (lines) to generate band structure points alongnbranch - an integer
- if nbranch = 0, code automatically choose branches to be computed (skip to end bands )
- if nbranch > 0, user specifies branches to sample using symbols section:
symbols
do ibranch=1,nbranch
branch - character*2 string, specify branch by its endpoints e.g., "GX" samples from "G" to "X".
- The allowed branches depend on the lattice (see WSSC)..
enddo
end bands - required, to specify end of input of band structure lines
Details
The keywords for Bravais lattices available in this module are tabulated below.
bravlat | Lattice | Description |
bcc | Body centered cubic | Implements the BCC lattice as described in appendix A.3 of the WSSC paper. Default path through the BZ is illustrated in Fig. 3 of WSSC. |
cub | Simple cubic | Implements the CUB case as described in appendix A.1 of the WSSC paper. Default path through the BZ is illustrated in Fig. 1 of WSSC. |
fc2 | Face centered cubic | Implements the FCC case as described in appendix A.2 of the WSSC paper. Default path through the BZ is illustrated in Fig. 2 of WSSC. |
fcc | Face centered cubic | (Standard) Original version by Edwards. |
hex | Hexagonal | Implements the HEX case of appendix A.10 of the WSSC paper. Default path through the BZ is illustrated in Fig.13 of WSSC. |
mcl | Simple monoclinic | Implements the MCL case as described in appendix A.12 of the WSSC paper. The restriction that the alpha angle be less than 90 degrees has been removed. Default path through the Brillouin zone is shown in Fig. 16 WSSC. |
orc | Orthorhombic | Implements the ORC lattice as described in appendix A.6 of the WSSC paper. Default path through the BZ is illustrated Fig. 7 of WSSC. |
rhl | Rhombohedral | Implements the RHL case as described in appendix A.11 of the WSSC paper. Both the RHL1 and RHL2 sub-cases are included. Default paths through the BZ are shown in Figs. 14 and 15 ov WSSC, for the RHL1 and RHL2 sub-cases, respectively. |
sc | Simple cubic | (Standard) Original version by Edwards. No default path is set. |
stc | Simple triclinic | (Standard) Original version by Edwards. No default path is set. |
tet | Tetragonal | Implements the TET case as described in appendix A.4 of the WSSC paper. Default path through the BZ is illustrated in Fig. 4 of WSSC. |
tri | Triclinic | Implements the TRI case as described in appendix A.14 of the WSSC paper. This module handles the variations TRI1a, TRI1b, TRI2a, and TRI2b described in WSSC. Default paths through the Brillouin zones are shown in Figs. 22-25 of WSSC, for the variations TRI1a, TRI1b, TRI2a, and TRI2b, respectively. |
Troubleshooting
This is a relatively new and unsophisticated facility, but functional. Currently, the ability to manipulate the desired band structure is somewhat limited. In most of the modules, you are constrained to using paths along the high symmetry lines connecting the high symmetry points in the Bravias lattice. For example, you are not allowed compute energies along a path from the K symmetry point to the X symmetry point in the FCC lattice.Having trouble specifying the band structure you really want?The general case can always be done by asserting a triclinic bravais lattice, and the triclinic symmetry symbols to follow whatever rbanch lines you wish.