0% found this document useful (0 votes)
41 views4 pages

Band Structure Calculation of Fourteen Diamond and Zincblende Crystals Using Swift

This document describes a Swift app that calculates the band structures of 14 diamond and zincblende crystals using the pseudopotential method. It discusses the theory behind the pseudopotential method and Hamiltonian, and describes how the app is organized with classes to store crystal data, generate k-point values, calculate the Hamiltonian matrix, and plot the results. The user can select a crystal and path within the Brillouin zone to generate and view the band structure.

Uploaded by

Jake Oxley
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views4 pages

Band Structure Calculation of Fourteen Diamond and Zincblende Crystals Using Swift

This document describes a Swift app that calculates the band structures of 14 diamond and zincblende crystals using the pseudopotential method. It discusses the theory behind the pseudopotential method and Hamiltonian, and describes how the app is organized with classes to store crystal data, generate k-point values, calculate the Hamiltonian matrix, and plot the results. The user can select a crystal and path within the Brillouin zone to generate and view the band structure.

Uploaded by

Jake Oxley
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Band Structure Calculation of Fourteen Diamond and

Zincblende Crystals using Swift


Jake Oxley

ħ2
1. Introduction
H=− ( )
2m
∇ 2 +V (r )

In 1965, Cohen and Bergstresser Potential function V is composed of a


used the empirical pseudopotential method symmetric part and an antisymmetric part.
to determine the band structures of fourteen V ( r )=∑ (V SG S S ( G ) +iV GA S A (G ) )
semiconductors with zincblende structures, G
the first band structures generated for some
Where V is the pseudopotential form factor
of them. The purpose of this project is write
and S(G) is the structure factor. The form
an app in Swift that recreates their
factors are determined experimentally and
calculations and generates band structures
come from the pseudopotentials of the
for these fourteen crystals using the
individual atoms. The structure factor,
pseudopotential method.
meanwhile, is based on the fcc structure of
the zincblende crystals. An fcc unit cell has
two atoms apiece, if we place the origin in
the center of these two atoms, we define the
1 1 1
( )
absolute offset τ =a , , as the distance
8 8 8
from the origin to the atoms. We can then
determine the structure factor.
SS ( G ) =cos G∙ τ S A ( G )=sinG ∙ τ

These terms are summed over all of


these G terms, called reciprocal lattice
vectors. The reciprocal lattice is the Fourier
transform of the Bravais lattice, and it’s
The user should be able to select one vectors are defined by three integers h, k, l.
of the fourteen materials and one of the four
directions mentioned in the original 1966 −1 1 1
paper.
2. Theory
1 ( )( )()
Ghkl=h 1 +k −1 +l 1
1 −1

These reciprocal lattice vectors have


The first step to determine the band an effect on the form factors. Specifically,
structure of a crystal is to look at the the value of G 2 is used to determine what
Hamiltonian for an electron in that crystal. form factor is used. The first five G 2 values
are 0, 3, 4, 8, and 11, but we do not need to
use ten form factors. The symmetric form
factor V SG is zero when G 2=4 and V S0 can 1

()
be kept to zero. The antisymmetric form 2
0
factor V GA is also zero when G 2=0 and G 2=8
. So we only need to use six form factors
V S3 , V S8 , V S11 , V 3A , V 4A , and V 11
A
. Any
Γ=

a ()
0
0
L=
2π 1
a 2
1
2
pseudopotential with a G not giving one of
these values will be zero. All of the
3
antisymmetric form factors will also be zero
for diamond structure crystals (Si, Ge, Sn.)
To create a band structure plot, the
Hamiltonian must be solved by creating a
matrix of plane waves with a wave vector G
X=

a
1
0
0()
K=

a
4
3
4
0
()
+ k where G is the reciprocal lattice vector 1
and k is a vector in the Brillouin zone. The
matrix is then solved for its eigenvalues and
plotted on a graph. This Hamiltonian is
solved again and again for each k on the
selected path. On a band structure plot, the x
U=

a
1
4
1
4
()
axis is made of different k vectors from one The paths between these points are named as
specific point to another. well. The program allows the following four
paths:
Λ:Γ L ∆:Γ X
→ →

Σ: Γ K S:X U
→ →

These points are called the critical


points and are located in the Brillouin zone,
which is a subdivision of reciprocal space in
the same way the Bravais lattice is broken
into Wigner-Seitz cells. The following 3. Program
critical points are used in this program: The program is organized in the
following way. There are three classes that
are called by the others to provide some
data. There are two classes that make the include here in full, but it contains two
necessary calculations, and finally the terms: The potential calculated earlier with
viewController to control the UI. input seed i− j, and a term containing
2
The first “data” class is called |k+ G(i)| and a Kronecker delta δ ij.
crystalProperties stores all of the form The second calculation class is called
factors and the lattice constant of the bandStructure. This class generates a full
fourteen materials. This data is called by 125 x 125 Hamiltonian matrix and calculates
other classes as it’s eigenvalues. It then makes a set of these
crystalProperties().crystalData(material: ) eigenvalues for each step in one of the
and returns an array. The second is called selectable paths.
numberGenerator that when given a seed
from -62 to 62 will h, k, and l values that 4. Data and Analysis
allow all G from (-2, -2, -2) to (2, 2, 2.) The Unfortunately, when plotting the
three numbers are generated by their own eigenvalues the results are less than
function called h, k, and l respectively and satisfactory. The main problem is that the
are called via numberGenerator().h(seed: ), data points themselves form straight lines
etc. The third is called brillouinPath and instead of the desired curves. Another issue
contains four functions called lambda, delta, is the fact that to calculate the eigenvalues,
sigma, and s that will generate 26 k vectors an outside library LASwift was used.
on their respective paths. However, another library was needed to
The first of the two calculation support complex values. The complex
classes is hamiltonianMatrix. In this class is doubles and the matrices introduced by these
a function that allows for vectors to be easily frameworks are incompatible, so only Si,
added, dotProduct which performs a dot Ge, and Sn have a chance of being right.
product on two 3-dimensional vectors, a Swift should introduce integrated support
function to replicate a Kronecker delta, and for linear algebra and complex numbers to
functions to generate the reciprocal lattice allow for complex calculations like these.
vector and the absolute offset. The potential The vDSP library may be of some use here,
function then calculates a pseudopotential but time constraints did not allow its use.
for a given material and G. 5. Conclusion
potential(seed, material) = Although the graphs produced by
formFactorS*cos(2*Double.pi*dot(gVector, Cohen and Bergstresser were not reproduced
tVector) here, this project provided insight to how
+.i*formFactorA*sin(2*Double.pi*dot(gVe this calculation is made and could help us
ctor,tVector) others navigate the issues of this calculation
Note that a G is generated by the input seed in Swift.
and is then used to determine what the value 6. References
of the form factors. After this, a Hamiltonian
matrix element is calculated with inputs i 1. Cohen, Marvin L., and T. K. Bergstresser.
and j (matrix row and column) and k. This “Band Structures and Pseudopotential
calculation is larger and inconvenient to Form Factors for Fourteen
Semiconductors of the Diamond and
Zinc-Blende Structures.” Physical
Review, 1966

2. Danner, Aaron J. “An Introduction to the


Empirical Pseudopotential Method”,
University of Illinois at Urbana-
Champaign, 2011

3. Vasileska, Dragica “Empircal


Pseudopotential Method”, Arizona
State University

4. Tran, Richard “The Empirical


Pseudopotential Method”, 1979

5. Ungersbock, Enzo “Basic Properties of


the Diamond Structure”, Vienna
University of Technology, 2007

You might also like