First Brillouin Zone
Before explaining what a Brillouin zone is, let’s make some definitions
- An infinite array of discrete points generated by a set of discrete translation operations described by
where ni are integers, and ai are the primitive vectors, which span the lattice.
- Primitive unit cell - Cell that contains only a single lattice point(whole point, or two halves and so on), such that the whole lattice could be constructed by positioning the cell’s clones, which are distant by a lattice vector from each other.
- Wigner Seitz cell - Primitive unit cell, which is built around a certain lattice point, and contains all space which is closer to this point than any other lattice point.
- Reciprocal lattice (of a Bravais lattice)- Set of all points, described by vector
K , such that
where R is a vector on the Bravais lattice and n is an integer.
Note that a Reciprocal lattice of a Bravais lattice is also a Bravais lattice.
Now we finally can define a First Brillouin zone
- First Brillouin zone- Wigner Seitz cell of a Reciprocal lattice.
First Brillouin zone calculation method for Reciprocal lattice point P-
- Calculate Reciprocal lattice primitive vectors.
- Find the mid point, M, between P and all other lattice points.
- Calculate a plane which is located at M and perpendicular to P-M.
- First Brillouin zone is all points in space which could be reached by not crossing any plane calculated in 3.
My program generates first Brillouin zones, using steps 2-4 of this algorithm.
Link to program explanations can be found here.
This program also calculates Fermi surfaces.
Explanations on Fermi surfaces can be found here.
Other programs and explanations, prepared in the Physics Department of the Technion can be found here