0% found this document useful (0 votes)
51 views24 pages

Akai KKR

This document provides a guide on using the KKR-Green’s function method for band structure calculations, detailing the KKR-CPA-LDA package developed by H. Akai. It includes instructions on obtaining, compiling, and executing the KKR program, as well as how to format input files for calculations. The guide also explains the parameters involved in the input files and offers examples for clarity.

Uploaded by

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

Akai KKR

This document provides a guide on using the KKR-Green’s function method for band structure calculations, detailing the KKR-CPA-LDA package developed by H. Akai. It includes instructions on obtaining, compiling, and executing the KKR program, as well as how to format input files for calculations. The guide also explains the parameters involved in the input files and offers examples for clarity.

Uploaded by

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

Band structure calculation using KKR-Green’s function method

by Kazunori Sato (June 1998)


modified by Masako Ogura and Hisazumi Akai (August 2008)

1 Introduction
In this document, how to use Machikaneyama2002 (AkaiKKR), a KKR-CPA-LDA package, is
briefly guided. The KKR method is one of the methods of electronic structure calculation
and is also called“Green’s function method.” KKR indicates the initials of Korringa, Kohn,
and Rostoker, who invented this method. CPA means the coherent potential approximation,
which can deal with random systems. Green’s function might be difficult to understand if you
are trained with ordinary band structure calculations, which solve an eigenvalue problem by
diagonalization. However, you can apply KKR-CPA to much wider range of situation than
ordinary band structure calculations can do. For example, it can deal with finite temperature
magnetism and partial disorder systems since CPA can treat not only periodic systems but also
random systems.

2 Get started
The KKR band structure code has been developed by H. Akai since 1979. The KKR package is
a set of subroutines written in FORTRAN77. It is not so difficult for you to perform some small
calculations using this package even if you are not familiar with the computational physics and
numerical techniques used in the method.

2.1 Get the program


Usually, the downloaded KKR program package is archived and compressed. Thus compressed
file is named as ’cpa2002v00x.tar.gz’. First you put ’cpa2002v00x.tar.gz’ under your home
directly. Next, you must decompress it and get the original form. The following commands
should be executed.
~> tar xvfz cpa2002v00x.tar.gz
Now, you find the following files in the directory, /cpa2002v00x/.
~>cd cpa2002v00x
~/cpa2002v00x>ls
data gpdos.f makefile source
gpd in readme util
Here, the file ’makefile’ is used to compile the sources. New directories, ‘source’, ’in’, ’out’
and ’data’, are created. Under the directory ’source’ you find all of the source codes, and ’in’,
’out’ and ’data’ may be used to save input, output and data files, respectively. You can delete
’cpa2002v00x.tar.gz’ which is not needed anymore.

2.2 Compile the program


Since the package contains many subroutines, it is convenient to use the ’make’ command. The
’make’ command refers to the ’makefile’ and compiles the files whose names are written in the
’makefile’. Moreover, the ’make’ command finds out the files that have been modified since the
last time, and compiles those files.

1
^/cpa2002v00x> make
Just key in, and you will get an executable file ’specx’.

2.3 Execute the program


To start a calculation, an input file in which lattice parameters and some numerical parameters
are written is needed. How to write the input file is explained in the next section. If you want
to execute a KKR calculation with your input file ’input’ and save a result in a file ’output’, key
in the following.
~/cpa2002v006x> specx < in/input > out/output &
The last character ’&’ means that this job should be carried out as a background job.

3 Execution of the calculation


3.1 Input File
The lattice parameters, such as the Bravais type, the lattice constants and atomic numbers, and
so on, are written in an input file and it is read in by the program when the kkr is executed. As
an example, the input file used in the calculation of fcc NiFe alloy is the following.

c----------------------- input data -------------------------


c go file
go data/feni
c -----------------------------------------------------------
c brvtyp a c/a b/a alpha beta gamma
bcc 5.3056 , , , , , ,
c -----------------------------------------------------------
c edelt ewidth reltyp sdftyp magtyp record
0.001 1.2 nrl mjw mag init
c -----------------------------------------------------------
c outtyp bzqlty maxitr pmix
update 4 80 0.024
c -----------------------------------------------------------
c ntyp
1
c -----------------------------------------------------------
c type ncmp rmt field l_max anclr conc
FeNi 2 0 0 2 26 60
28 40
c -----------------------------------------------------------
c natm
1
c -----------------------------------------------------------
c atmicx atmtyp
0 0 0 FeNi
c -----------------------------------------------------------

The lines which begin with the letter ’c’ is neglected. Names of the fields are also commented
in the sample input file. The delimiter is a space ’ ’ or a comma ’,’. In table 1, what is written
in each field is summarized.
In the following, some comments and notes are given.

• [go] In ’dsp’ and ’dos’ modes, values of record, outtyp and maxitr are automatically set
to be ‘2nd’, ‘quit’ and ‘1’, respectively.

2
Table 1: Parameters written in the input file.
Field Value Meaning
go go perform a band structure calculation.
dos calculate a density of states.
dsp display a previous result.
spc calculate Bloch spectral function (dispersion relation).
file file name file name in which a potential data is written.
brvtyp which type of the Bravais lattices.
fcc face centered cubic
bcc body centered cubic
hcp(hex) hexagonal close packed
sc simple cubic
bct body centered tetragonal
st simple tetragonal
fco face centered orthorhombic
bco body centered orthorhombic
bso base centered orthorhombic
so simple orthorhombic
bsm base centered monoclinic
sm simple monoclinic
trc triclinic
rhb(trg) rhombohedral (trigonal)
fct face centered tetragonal
a lattice constant in atomic unit.
c/a c/a ratios of lattice constants.
b/a b/a ratios of lattice constants.
alpha α in degrees.
beta β in degrees.
gamma γ in degrees.
edelt ∼0.001 Imaginary part at the Fermi level in Ry (see Fig. 1).
ewidth — Width of the energy contour in Ry (see Fig. 1).
reltyp nrl no relativistic treatment.
sra scaler relativistic approximation.
sdftyp mjw, vbh, vwn which exchange correlation potential is used.
magtyp mag magnetic.
nmag non-magnetic.
-mag(rvrs) change the sign of the magnetization.
kick transfer to the magnetic state artificially.
record init initially start a calculation.
2nd continues the last calculation.
1st continues the second last calculation.
outtyp update potential data is updated.
quit potential data is not updated.
bzqlty 0, 1, 2,... The bigger, the finer mesh in the Brillouin zone.
t, s, m, l, h, u see nfqlty.f
maxitr the maximum number of the iteration loop.
pmix 0.01-0.03 a parameter used in mixing V in and V out .
ntyp how many types of atom exist in a unit cell.
type type name names of the respective types of site.
ncmp how many components exist in the site.
rmt muffin tin radius in a.
field external magnetic field at each site in Ry.
l max the maximum angular momentum taken into account.
anclr atomic number.
conc concentration of the components at the site.
natm number of atoms in a unit cell.
atmicx coordinates where each atom is (in a).
atmtyp type name which type of the site at the lattice point.

3
Im E

energy contour C

core state valence state


edelt
ewidth Re E

Figure 1: The energy contour.

• [file] You can specify a file name of a potential data using a relative pass.

• [brvtyp] If c/a, b/a, α, β and γ are evident from ’brvtyp’ , you can omit to write them.

• [record] The previous potential data is stored together with the latest potential data
in the data, in case that the latest calculation terns out rubbish. ’2nd’ means that the
calculation starts with the latest data file, and ’1st’ means that the calculation starts with
the data of the last but one.

• [rmt] If the muffin-tin spheres whose radii are given by ’rmt’ conflict each other their
radii are reduced. If ’rmt’ = 0, muffin tin radii are set so that their ratio is equal to the
ratio of the atomic radii.

• [anclr] ’anclr’=0 means that a vacancy is put on the lattice point.

• [conc] Concentrations are normalized in each site. It is not necessary that the sum of
them equal to 1.

• [atmicx] The lattice point at which an atom is put is specified with the Cartesian coordi-
nate (e.g., written as 0.5, 0.5, 0.5) or with the primitive vector (e.g., written as 0.5a, 0.5b,
0.5c). They can have a fractional form such as 1/3, 2/3a, and 1d0/3d0x.

• If the input data for several different systems are contained in a single file, they are
performed sequentially.

3.2 Output File


A result of a calculation is shown on a display or is redirected to an output file. As an example,
the output of the calculation for NiFe alloy is shown, for which the input file has already been
shown.
2-Feb-2005
meshr mse ng mxl
400 35 15 3

data read in
go=go file=data/feni
brvtyp=bcc a= 5.30560 c/a=1.00000 b/a=1.00000
alpha= 0.0 beta= 0.0 gamma= 0.0
edelt= 0.0010 ewidth= 1.200 reltyp=nrl sdftyp=mjw magtyp=mag
record=init outtyp=update bzqlty=4 maxitr= 80 pmix=0.02400
ntyp= 1 natm= 1 ncmpx= 2

complex energy mesh


1( -1.2000, 0.0000) 2( -1.1998, 0.0030) 3( -1.1990, 0.0070)
4( -1.1970, 0.0121) 5( -1.1928, 0.0186) 6( -1.1849, 0.0267)
7( -1.1710, 0.0368) 8( -1.1478, 0.0489) 9( -1.1111, 0.0629)
10( -1.0562, 0.0779) 11( -0.9792, 0.0930) 12( -0.8787, 0.1063)

4
13( -0.7577, 0.1158) 14( -0.6240, 0.1199) 15( -0.4891, 0.1179)
16( -0.3646, 0.1104) 17( -0.2591, 0.0988) 18( -0.1764, 0.0850)
19( -0.1156, 0.0708) 20( -0.0735, 0.0575) 21( -0.0455, 0.0458)
22( -0.0276, 0.0360) 23( -0.0165, 0.0280) 24( -0.0098, 0.0216)
25( -0.0057, 0.0165) 26( -0.0033, 0.0126) 27( -0.0019, 0.0096)
28( -0.0011, 0.0073) 29( -0.0006, 0.0055) 30( -0.0004, 0.0042)
31( -0.0002, 0.0032) 32( -0.0001, 0.0024) 33( -0.0001, 0.0018)
34( 0.0000, 0.0014) 35( 0.0000, 0.0010)

file to be accessed=data/feni
created

lattice constant
bravais=bcc a= 5.30560 c/a=1.0000 b/a=1.0000
alpha= 90.00 beta= 90.00 gamma= 90.00

primitive translation vectors


a=( -0.50000 0.50000 0.50000)
b=( 0.50000 -0.50000 0.50000)
c=( 0.50000 0.50000 -0.50000)

type of site
type=FeNi rmt=0.43301 field= 0.000 lmxtyp= 2
component= 1 anclr= 26. conc= 0.6000
component= 2 anclr= 28. conc= 0.4000

atoms in the unit cell


position= 0.00000000 0.00000000 0.00000000 type=FeNi

***msg in spmain...new ew, ez generated


ew= 0.09998 ez= 0.80300

preta= 0.35542 eta= 0.35542


isymop= 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

last= 243 np= 15 nt= 141 nrpt= 169 nk= 29 nd= 1

itr= 1 rms error = -1.872


itr= 2 rms error = -2.390
itr= 3 rms error = -2.879
itr= 4 rms error = -3.357
itr= 5 rms error = -3.890
itr= 6 rms error = -3.879
itr= 7 rms error = -4.878
itr= 8 rms error = -4.850
itr= 9 rms error = -5.574
itr= 10 rms error = -6.235
interval= 10 cpu time= 0.00 sec

nl cnf energy
-----------------------------------
1s 2.000 -508.5203
2s 2.000 -59.2074
2p 6.000 -51.1806
3s 2.000 -6.8027
3p 6.000 -4.4563
3d 6.000 -0.6696
4s 2.000 -0.4930

itr= 1 rms error = -1.724


itr= 2 rms error = -2.239
itr= 3 rms error = -2.657
itr= 4 rms error = -2.967
itr= 5 rms error = -3.645
itr= 6 rms error = -3.695
itr= 7 rms error = -4.268
itr= 8 rms error = -5.061
itr= 9 rms error = -5.356
itr= 10 rms error = -5.470
itr= 11 rms error = -6.321
interval= 11 cpu time= 0.01 sec

nl cnf energy
-----------------------------------

5
1s 2.000 -595.8142
2s 2.000 -70.7050
2p 6.000 -61.8163
3s 2.000 -7.9863
3p 6.000 -5.2730
3d 8.000 -0.7806
4s 2.000 -0.5252

record 1 will be overlaied by input and


record 2 will be replaced by new output.

core configuration for Z= 26


state 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p 4f 5d 6s 6p 5f 6d 7s
up 1 1 3 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0
down 1 1 3 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0

core configuration for Z= 28


state 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p 4f 5d 6s 6p 5f 6d 7s
up 1 1 3 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0
down 1 1 3 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0

***** self-consistent iteration starts *****


FeNi
itr= 1 neu= -1.4601 moment= 0.0905 te= -2718.3225808 err= 0.119
itr= 2 neu= -0.8991 moment= 0.1151 te= -2718.3221114 err= -0.277
itr= 3 neu= -0.2974 moment= 0.1168 te= -2718.3157206 err= -0.149
itr= 4 neu= 0.1787 moment= 0.1296 te= -2718.3197036 err= -0.627
itr= 5 neu= 0.5050 moment= 0.1933 te= -2718.3214574 err= -0.407
itr= 6 neu= 0.6526 moment= 0.2873 te= -2718.3261849 err= -0.483
itr= 7 neu= 0.5415 moment= 0.4203 te= -2718.3258145 err= -0.530
itr= 8 neu= 0.3129 moment= 0.5384 te= -2718.3258235 err= -1.056
itr= 9 neu= 0.1143 moment= 0.7051 te= -2718.3265769 err= -0.801
itr= 10 neu= -0.0203 moment= 0.8951 te= -2718.3295190 err= -0.873
itr= 11 neu= -0.1221 moment= 1.0540 te= -2718.3323905 err= -0.967
itr= 12 neu= -0.1746 moment= 1.2526 te= -2718.3352375 err= -0.844
itr= 13 neu= -0.1626 moment= 1.4605 te= -2718.3369449 err= -0.608
itr= 14 neu= -0.1454 moment= 1.6426 te= -2718.3395758 err= -0.754
itr= 15 neu= -0.1518 moment= 1.6880 te= -2718.3406928 err= -0.650
itr= 16 neu= -0.1663 moment= 1.7401 te= -2718.3410295 err= -0.607
itr= 17 neu= -0.1522 moment= 1.7988 te= -2718.3415185 err= -1.255
itr= 18 neu= -0.1303 moment= 1.7861 te= -2718.3414079 err= -1.326
itr= 19 neu= -0.0791 moment= 1.7878 te= -2718.3410749 err= -1.206
itr= 20 neu= -0.0246 moment= 1.7774 te= -2718.3410051 err= -1.553
itr= 21 neu= 0.0213 moment= 1.7734 te= -2718.3409834 err= -1.224
itr= 22 neu= 0.0494 moment= 1.7695 te= -2718.3410544 err= -1.282
itr= 23 neu= 0.0583 moment= 1.7667 te= -2718.3410975 err= -1.829
itr= 24 neu= 0.0518 moment= 1.7646 te= -2718.3410481 err= -1.769
itr= 25 neu= 0.0361 moment= 1.7609 te= -2718.3409914 err= -1.879
itr= 26 neu= 0.0172 moment= 1.7587 te= -2718.3409593 err= -2.014
itr= 27 neu= 0.0005 moment= 1.7597 te= -2718.3409526 err= -1.849
itr= 28 neu= -0.0111 moment= 1.7612 te= -2718.3409625 err= -2.108
itr= 29 neu= -0.0169 moment= 1.7625 te= -2718.3409716 err= -2.097
itr= 30 neu= -0.0176 moment= 1.7634 te= -2718.3409749 err= -2.114
itr= 31 neu= -0.0147 moment= 1.7639 te= -2718.3409743 err= -2.287
itr= 32 neu= -0.0102 moment= 1.7640 te= -2718.3409723 err= -2.403
itr= 33 neu= -0.0055 moment= 1.7640 te= -2718.3409707 err= -2.315
itr= 34 neu= -0.0017 moment= 1.7638 te= -2718.3409703 err= -2.499
itr= 35 neu= 0.0009 moment= 1.7637 te= -2718.3409703 err= -2.727
itr= 36 neu= 0.0024 moment= 1.7635 te= -2718.3409704 err= -2.832
itr= 37 neu= 0.0029 moment= 1.7633 te= -2718.3409703 err= -2.844
itr= 38 neu= 0.0026 moment= 1.7632 te= -2718.3409701 err= -2.749
itr= 39 neu= 0.0019 moment= 1.7631 te= -2718.3409699 err= -2.813
itr= 40 neu= 0.0010 moment= 1.7631 te= -2718.3409698 err= -2.999
itr= 41 neu= 0.0002 moment= 1.7631 te= -2718.3409698 err= -3.004
interval= 41 cpu time= 17.79 sec
sdftyp=mjw reltyp=nrl dmpc=0.024
FeNi
itr= 41 neu 0.0002 chr,spn 8.8000 1.7631 intc,ints 0.9632 -0.0234
rms err= -3.164 -3.274 -3.004 -3.177
ef= 0.7260630 0.7343370 def= 2.6962356 12.2016065
total energy= -2718.3409698

6
*** type-FeNi Fe (z= 26.0) ***
core charge in the muffin-tin sphere =17.9787766
valence charge in the cell (spin up ) = 0.19826(s) 0.19326(p) 4.36075(d)
valence charge in the cell (spin down) = 0.19758(s) 0.20985(p) 1.84235(d)
total charge= 24.98082 valence charge (up/down)= 4.75227 2.24978
spin moment= 2.50249 orbital moment= 0.00000

core level (spin up )


-507.1266873 Ry(1s) -57.8685202 Ry(2s) -49.8296484 Ry(2p)
-5.5302084 Ry(3s) -3.1878588 Ry(3p)
core level (spin down)
-507.1176964 Ry(1s) -57.7567489 Ry(2s) -49.7425563 Ry(2p)
-5.3171341 Ry(3s) -2.9808461 Ry(3p)

hyperfine field of FeNi


-239.803 KG (core= -250.980 KG valence= 11.177 KG )
core contribution
-21.109 KG(1s) -548.149 KG(2s) 318.277 KG(3s)

charge density at the nucleus


11820.1880 (core= 11814.5387 valence= 5.6493 )
core contribution
10701.4478(1s) 972.7303(2s) 140.3607(3s)

*** type-FeNi Ni (z= 28.0) ***


core charge in the muffin-tin sphere =17.9914848
valence charge in the cell (spin up ) = 0.21450(s) 0.20389(p) 4.50139(d)
valence charge in the cell (spin down) = 0.22638(s) 0.23660(p) 3.74662(d)
total charge= 27.12086 valence charge (up/down)= 4.91978 4.20959
spin moment= 0.71019 orbital moment= 0.00000

core level (spin up )


-594.3771108 Ry(1s) -69.2884479 Ry(2s) -60.3956628 Ry(2p)
-6.5907736 Ry(3s) -3.8813868 Ry(3p)
core level (spin down)
-594.3686783 Ry(1s) -69.2422357 Ry(2s) -60.3587004 Ry(2p)
-6.5162732 Ry(3s) -3.8088998 Ry(3p)

hyperfine field of FeNi


-166.611 KG (core= -77.215 KG valence= -89.396 KG )
core contribution
-9.105 KG(1s) -204.777 KG(2s) 136.667 KG(3s)

charge density at the nucleus


14827.9567 (core= 14822.0421 valence= 5.9145 )
core contribution
13396.9377(1s) 1243.1999(2s) 181.9046(3s)

cpu used 17.94 sec

First, a date, ’meshr’, ’mse’, ’ng’ and ’mxl’ are output. The next block shows meshes on
an energy contour and the contents of the input file. If muffin-tin radii are modified, the new
radii are shown. The next information shows how many lattice points (nrpt), reciprocal lattice
points (ngpt) and k-points (nk) are needed. When ’record=init’, the LDA calculation on each
atom is performed and an initial potential is generated. Then, configurations of core states are
listed. The core configurations are set up in subroutine ’corcnf.f’. It is noticed that the core
states must not come into the energy contour to avoid double counting of the core electrons.
After these output of initial conditions, the record of the self-consistent iteration is output.
For each iteration loop, charge neutrality, spin moment, total energy and error (the average
difference between input and output potentials) are shown to confirm a convergence. If the
error becomes under a tolerance which is set in the subroutine ’specx.f’, the iteration loop stops,
and a result is printed out. If the number of loops exceeds ’maxitr’, the iteration loop also stops.
Lastly, from the obtained electronic structure, the hyperfine field, and so on, are calculated.

7
Table 2: Parameters used in ’specx.f’.
Parameter Meaning
natmmx maximum number of atoms in a unit cell.
ncnpmx maximum number of types of atoms in a unit cell.
∑natm
msizemx maximum size of the KKR matrix. ≥ i=1 (lmax,i + 1)2
mxlmx l ≥mxlmx are truncated.
nk1mx,nk3mx nk1mx+nk3mx is maximum number of k-points in the Brillouin zone.
msex mesh points on the energy contour for go=dos, spc.
ngmx The chebyshev expansion is performed up to ngmx-th order.
nrpmx maximum number of lattice points used in the Ewalt’s sum.
ngpmx maximum number of reciprocal lattice points used in the Ewalt’s sum.
msr radial mesh points.
mse0 (data) mesh points on the energy contour for go=go.
tol (data) tolerance of convergence

3.3 Parameters which define the size of arrays


By the way, size of an array used in the KKR program depends on a system to be calculated.
It is necessary to reserve enough area. The size of the arrays in the KKR program is declared
in the subroutine ’specx.f’. The parameters used in the ’specx.f’ are summarized in table 2.
If unsuitable parameters are used in the input file or specx.f, the program will stop with an
error message. Then, you can recognize what is wrong.

4 Exercises
1. Calculate the electronic structure of bcc Fe. Use the lattice constant a = 5.27 bohr and
take magnetism into account. Does the obtained result show that Fe is ferromagnetic ?
How large is the magnetic moment ?

2. Calculate the density of states of bcc Fe.

3. Estimate the lattice constant of Fe. First, calculate the electronic structure for various
lattice constants. Then compare the total energy. The lattice constant which gives the
lowest energy is realizable.

4. Calculate the electronic structure of fcc Ni. Use the lattice constant a = 6.60 bohr. Check
the magnetic moment, density of states, lattice constant and so on.

5. (Impurity problem) Calculate bcc Fe with a single impurity which substitute a Fe atom.
Plot the calculated hyperfine field as a function of the impurity’s atomic number. Discuss
the behavior of the hyperfine field.

6. (Random alloy) Calculate fcc Ni-Fe random alloy. Use the lattice constant of Ni. Discuss
the density of states. What happens when the concentration of Fe is high ?

7. (Random alloy) Calculate various kinds of 3d transition metal alloys (Change combina-
tion of elements, concentration and structure). Plot the obtained magnetic moments as
a function of the averaged atomic number. Thus obtained curve is called Slater-Pauling
curve.

8. (Local moment disorder) Calculate the electronic structure of bcc Fe in the local
moment disorder (LMD) state. We can treat the LMD state as a random alloy of Fe
with up and down spin moments. Prepare the potential data file using /util/fmg.f

8
9. (Local moment disorder) In the mean-field theory, the Curie temperature TC is evalu-
ated as follows:
2
kB TC = (ELMD − EF ) ,
3
where kB is Boltsmann constant, EF and ELMD are total energy in the ferromagnetic and
LMD states, respectively. Calculate Curie temperature from the obtained total energy.
Use the values, kB = 6.3336 × 10−6 Ry/K, if you need. Compare the results with the
experimental value, TC (exp.) = 1043 K.

10. (Local moment disorder) Calculate the electronic structure of fcc Ni in the LMD state.
Does the calculation works ? If not, discuss the reason.

11. Calculate the electronic structure of zinc-blende GaAs. The zinc-blende structure is con-
structed by the fcc structure. How is the input file ?

12. Put some defects in zinc-blende GaAs. Discuss the results.

13. Put some donors or accepters in zinc-blende GaAs. Discuss the results.

14. Put some magnetic impurities in zinc-blende GaAs. Discuss the results.

Figure 2: Zinc-blende, half-Heusler and full-Heusler structures.

9
More in Details

5 Density Functional Theory


5.1 Hohenberg-Kohn Theorem
The Hohenberg-Kohn theorem on which the density functional theory is established is explained
according to the original paper.
An N -electron system under an external potential v(r) is described with the following Hamil-
tonian H.

H = T + V + U, (1)

where T is the kinematic energy, V is the potential energy and U is the Coulomb energy between
electrons, i.e.,

T = −∇2i (2)
i

V = v(ri ) (3)
i
∑ 2
U = , (4)
i<j
|ri − rj |

where the atomic unit (h̄2 = 1, e2 = 2, me = 1/2) is used. The N -electron wave function Φ
satisfies the Schrödinger equation written as

HΦ = EΦ. (5)

In the framework of the quantum theory, the ground state of the system, Ψ, under the given
external potential v is obtained by the variational principle

HΨ = E0 Ψ (6)
E0 [Ψ] = Min〈Ψ|H|Ψ〉 (7)
〈Ψ|Ψ〉 = N. (8)

Once the N -electron wave function Ψ is obtained, the density distribution ρ and any expectation
values are obtained from Ψ. That is Ψ, ρ and expectation energy E0 are the functionals of v.

Ψ = Ψ[v] (9)
ρ = ρ[v] (10)
E0 = E0 [v] (11)

In this procedure, we must deal with Ψ which has 3N degrees of freedom and must take the
variation of the total energy functional with respect to Ψ.
If we can regard the density distribution ρ as a basic function in spite of Ψ, it will make the
problem easier because ρ has only 3 degrees of freedom. It is shown that v is a functional of ρ by

Table 3: atomic unit


unit
h̄2
length = 1(bohr) = 0.529(Å)
me e2
4
me e
energy = 1(Ry) = 13.6(eV)
2h̄2

10
the reductio ad absurdum. If the same ρ gives two different v and v ′ , we get the different wave
functions Ψ, Ψ′ and the ground state energy E, E ′ according to the two different Hamiltonians
H, H ′ associated with v, v ′ respectively. This leads the following two inequalities.

E ′ = 〈Ψ′ |H ′ |Ψ′ 〉
< 〈Ψ|H ′ |Ψ〉
= 〈Ψ|H − v + v ′ |Ψ〉

= E+ (v ′ − v)ρdv (12)
E = 〈Ψ|H|Ψ〉
< 〈Ψ′ |H|Ψ′ 〉
= 〈Ψ′ |H ′ − v ′ + v|Ψ′ 〉


= E + (v − v ′ )ρdv (13)

The sum of these two inequalities gives the inconsistent result E + E ′ < E ′ + E. Therefore, v is
a unique functional of ρ. In turn, the N -electron ground state wave function Ψ and all ground
state properties are functionals of ρ.

v = v[ρ] (14)
Ψ = Ψ[ρ] (15)
〈A〉 = 〈Ψ[ρ]|Â|Ψ[ρ]〉
= A[ρ] (16)

Next, the variational principle for Ev [ρ] is derived. When Ψ and Ψ′ are the ground states
for given v and v ′ respectively, the following inequality is satisfied because of the variational
principle of Ev [Ψ] for Ψ.

Ev [Ψ] ≤ Ev [Ψ′ ] (17)

Now, we introduce a new energy functional Ev defined as



Ev [ρ] = ρvdv + F [ρ] (18)
F [ρ] = T [ρ] + U [ρ] (19)

The variational principle for Ev [ρ] for ρ is derived as

Ev [ρ] ≤ Ev [ρ′ ]. (20)

Because of the universality of the functional F [ρ], once we know it, the ground state properties
of any system can be determined.

5.2 Kohn-Sham Equations


Kohn and Sham developed an exact way to treat an inhomogeneous electron system from the
theory of Hohenberg and Kohn. It has already shown that the total energy Ev of ground state
for a given external potential v is written as,

Ev = Ev [ρ]
∫ ∫
1 ρ(r)ρ(r′ )
= vρdv + drdr′ + G[ρ], (21)
2 |r − r′ |
where G[ρ] was the universal functional of the density. G may be wrote as

G[ρ] = Ts [ρ] + EXC [ρ], (22)

11
where Ts is the kinetic energy of a non-interacting system of electrons. All of the many body
effects are included into EXC . To make a discussion clear, an effective potential Veff is introduced,
and Ev is divided into two terms such as
Ev [ρ] = EB [ρ] + ED [ρ], (23)

EB [ρ] = Ts + Veff ρdv, (24)
∫ ∫
ED [ρ] = − Veff ρdv + vρdv + EH + EXC . (25)

Therefore, the variational equation given by Hohenberg and Kohn, i.e.


δEv
= 0, (26)
δρ
is divided into a couple of the simultaneous equations:
δEB δED
= 0, and = 0. (27)
δρ δρ
Then the following variational equation called Kohn-Sham equations are derived.
−∇2i ψi (r) + Vef f (r)ψi (r) = ϵi ψi (r) (28)

ρ(r′ )
Vef f (r) = v(r) + dv ′ + VXC (r) (29)
|r − r′ |

ρ(r) = |ψi |2 (30)
i
δ ẼXC [ρ]
VXC (r) = (31)
δρ

5.3 Local density approximation


For a homogeneous electron gas, the exchange-correlation energy is accurately calculated.
ẼXC [ρ]/N = εXC (ρ) (32)
In the local density approximation (LDA), we regard an inhomogeneous electron system as a
system locally homogeneous, i.e.,

ẼXC [ρ] = ρ(r)εXC (ρ(r)) dv. (33)

Therefore, the exchange-correlation potential is given by


dεXC (ρ(r))
VXC (r) = εXC (ρ(r)) + ρ(r) . (34)
ρ(r)

5.4 Iteration
The self consistent Kohn-Sham equations are solved by an iteration procedure.
• Give a trial Veff .
• Solve the single-electron Schrödinger equation.

• Calculate ρ(r) by summing i |ψi |
2 up to the Fermi level.
• Solve the Poisson equation for ρ(r) and construct the Hartree potential.
• Calculate Veff using LDA.
• Compare the new and old Veff and improve Veff .
Repeat this procedure until the new and old potential become the same.

12
6 KKR-Green’s function method
6.1 Single-Site problem
Let us consider the scattering due to a single potential at the origin. This potential vanishes at
a region far from the origin.

6.1.1 Schrödinger equation


The Schrödinger equation which describes stationary states is

Hψ(r) = [−∇2 + V (r)]ψ = Eψ. (35)

When the potential is spherical, the solutions are separable using the spherical coordinates:

ψ(r) = Rl (r)Ylm (θ, φ), (36)

[ ]
1 d 2d l(l + 1)
− 2
r + + V (r) − E Rl = 0, (37)
r dr dr r2

[ ]
1 ∂ ∂ 1 ∂2 l(l + 1)
sin θ + + Ylm (θ, φ) = 0. (38)
r2 sin θ ∂θ ∂θ r2 sin2 θ ∂φ2 r2

The solution of the angular part is spherical harmonics. Using Rl (r) = ul (r)/r, the radial
equation is written as
[ ]
d2 l(l + 1)
− 2+ + V (r) − E ul (r) = 0. (39)
dr r2

The radial wave function is normalized as


∫ RM T
[rRl (r; E)]2 dr = 1. (40)
0

6.1.2 Asymptotic form


The exact radial wave function outside the potential is
√ √
Pl (r; E) = Al (E)jl ( Er) + Bl (E)nl ( Er). (41)

jl and nl are the spherical Bessel and Neumann functions, which are regular and irregular at
the origin, respectively. Outside the potential, whole wave function satisfying any particular

bounding conditions has a form ψ(r) = L CL (E)Pl (r; E)YL (θ, φ), where L = (l, m). As the
boundary condition, the wave function which represents scattering should have the following
asymptotic form:
√ f (θ) i√Er
ψ(r) → ei Ez
+ e . (42)
r
Therefore, Al (E)and Bl (E) can be expressed with a parameter ηl (E) as
√ √
Pl (r; E) = eiηl [cos ηl jl ( Er) + sin ηl nl ( Er)]
√ lπ
→ eiηl sin( Er − + ηl ). (43)
2

13
ηl is the phase shift of the wave function doe to the scattering of the single potential. Using the
Hankel function of the first kind,
(1)
hl = jl + inl , (44)
√ (1)

Pl (r; E) = jl ( Er) + ieηl sin ηl hl ( Er)
√ √ (1)

= jl ( Er) − i Etl (E)hl ( Er). (45)
As a results, the scattering problem becomes the problem to obtain the t-matrix defined by
1
tl (E) = − √ eiηl sin ηl (46)
E

6.1.3 Wronskian
Let us consider to construct the solution of the Schrödinger equation outside the potential range
from the Wronskian relation. From the radial Schrödinger equations,
[ ]
d2 l(l + 1)
− 2+ + V (r) − E rPl (r; E) = 0, (47)
dr r2
[ ] ( √ )
d2 l(l + 1) jl ( Er)
− 2+ −E r √ = 0, (48)
dr r2 nl ( Er)
the following integrals are evaluated.
∫ r √ √
rjl ( Er)V (r)rPl (r; E)dr = W [rjl ( Er), rPl (r, E)]r , (49)
0
∫ ∞ √ √
1
rnl ( Er)V (r)rPl (r; E)dr = − √ eiηl cos ηl − W [rnl ( Er), rPl (r, E)]r . (50)
r E
The first term in Eq. (50) is obtained from the asymptotic form of Pl (r; E). Wronskian is defined
as
db(r) da(r)

W [a(r), b(r)] = a(r) b(r). (51)
dr dr
√ √ √
Multipling Eq. (49) by nl ( E) and jl ( E) to Eq. (50) by nl ( E), and summing these equations,
we obtain
√ √ ∫ ∞ √ √
Pl (r; E) = e cos ηl jl ( Er) − E
iηl
jl ( Er< )nl ( Er> )V (r′ )Pl (r′ ; E)r′2 dr′
0
√ √ √ ∫ ∞ √
→ e cos ηl jl ( Er) − Enl ( Er)
iηl
jl ( Er′ )V (r′ )Pl (r′ ; E)r′2 dr′
0
√ √
= eiηl [cos ηl jl ( Er) − sin ηl nl ( Er)]
√ √
= Cl (E)jl ( Er) − Sl (E)nl ( Er)
√ (1)

= [Cl (E) − iSl (E)] jl ( Er) + iSl (E)hl ( Er), (52)
where
Cl (E) = eiηl cos ηl
√ √
= EW [rPl (r; E), rnl ( Er)]r>RM T , (53)
iηl
Sl (E) = e sin ηl
√ √
= − EW [rPl (r; E), rjl ( Er)]r>RM T . (54)
As a results, t-matrix is calculated from Wronskian:
1 Sl (E)
tl (E) = − √ . (55)
E Cl (E) − iSl (E)

14
6.1.4 Green’s function in the free space
Green’s function in the free space is defined as

[∇2 + E]g(r, r ′) = δ(r − r ′). (56)

The solution is obtained using the Fourier transformation

g(r, r ′) = g(r − r ′)
√ ′
e(i E|r −r |)
= − . (57)
4π|r − r ′|

In addition, it is expanded into the partial waves as


√ ∑ √ √
g(r, r ′) = −i E
(1)
jl ( Er< )YL (r<)hl ( Er> )YL (r>). (58)
L

Consider an inhomogeneous differential equation,

[∇2 + E]φL (r) = V (r)φL (r). (59)

Its general solution is expressed as a sum of its particular solution and the general solution to
the homogeneous differential equation,

[∇2 + E]φ0L (r) = 0. (60)

Since a particular solution can be obtained from Green’s function, the general solution is

φL (r) = ZL (E)φ0L (r) + g(r − r ′)V (r′ )φL (r ′)dr ′, (61)

where ZL (E) is a normalization constant.

6.2 Traditional KKR


6.2.1 Muffin-tin potential
Usually, the KKR method is formulated using the muffin-tin potential approximation. Under
this approximation, the Schrödinger equation can be solved exactly.
The potentials are approximated as
( )
v(r) for r < RM T
v(r) = (62)
0 for r > RM T ,

where the origin is taken at the center of the atomic sphere. RM T is the radius of the sphere
which does not overlapped each other.
In the muffin-tin approximation, a constant potential is assumed in the interstitial region.
The origin of the energy is chosen such that potential at the interstitial region is zero as shown
in Fig. 3.

6.2.2 Cell-centered expantion


Let us consider the Schrödinger equation,

[−∇2 + V (r)]ψ(r) = Eψ(r). (63)

15
rm
m
Rm
n
rn R
O Rn MT

v(r)

Figure 3: Muffin-tin potential

Using the free space Green’s function, ψ(r) can be written as



ψ(r) = g(r, r ′)V (r ′)ψ(r ′)dv ′
∫ ∑
= ′)
g(Rm + rm, Rn + rn ′ )ψ(R + r ′ )dv ′
v(Rn + rn n n n
n
∑∫
= g(rm, Rn − Rm + ′ )v(r ′ )ψ(r ′ )dv ′ .
rn (64)
n n n
n

Here, ψ(r) is expanded into the atomic wave functions in the m-th sphere ψLm as

ψ(r) = CLm φm
L (rm). (65)
L

φm
L satisfies the Shcrödinger equation in the m-th sphere and expressed by using g,

[−∇2 + v(r)]φm m
L (r) = EφL (r), (66)


φm m 0
L (r) = ZL (E)φL (r) + g(r, r ′)v(r ′)φm ′
L (r )dv . (67)

Substituting these expressions, we obtain


∑ ∫
CLm [ZLm (E)φ0L (rm) + ′ )v(r ′ )φm (r ′ )dv ′ ]
g(rm, rm m L m m
L
∑∫ ∑
= ′ )v(r ′ )
g(rm, Rn − Rm + rn ′ )dv ′ .
CLn φnL (rn (68)
n n
n L

6.2.3 Structure constant


g(rm, Rn − Rm + rn′ ) is expanded into the partial waves as

√ ∑ √
g(rm, Rn − Rm + rn ′ ) = −i E jl ( Erm )YL (rm)
L

16

(1)
×hl ( E|rn ′ + R − R |)Y (r ′ + R − R )
n m L n n m
√ ∑ √
= −i E jl ( Erm )YL (rm)
L
∑ ′ ′′ (1)

×4π il−l +l CLL′ L′′ hl′′ ( E|Rn − Rm|)
L′ ,L′′

×YL′′ (Rn − Rm)jl′ ( Ern′ )YL′ (rn
′)

= mn 0
φ0L (rm)gLL ′
′ φL′ (rn), (69)
LL′

√ ∑ l−l′ +l′′ (1)



mn
gLL′ = −i4π E i CLL′ L′′ hl′′ ( E|Rn − Rm|)YL′′ (Rn − Rm). (70)
L′′
mn is called the structure constant. It depends only on the lattice structure, not on the potential
gLL ′

at the lattice point.

6.2.4 KKR-matrix
From the partial wave expansion of Green’s function, we can obtain the equation that the
expansion coefficients of the wave function should satisfy:
∑ ∫
CLm [ZLm (E)φ0L (rm) + ′ )v(r ′ )φm (r ′ )dv ′ ]
g(rm, rm m L m m
L
∑ ∫ ∑ ∑
= φ0L (rm)gLL
mn 0 ′ ′ ′ )dv ′
CLn φnL (rn
′ φL′ (rn)v(rn) n
n̸=m LL′ L

+ ′ )v(r ′ )φm (r ′ )dv ′ ,
g(rm, rm (71)
m L m m
∑ ∑ ∑ ∑ ∫
CLm ZLm (E)φ0L (rm) = φ0L (rm) mn
gLL ′ )v(r ′ )φn (r ′ )dv ′ C n
φ0L′ (rn
′ n L n n L′
L L n̸=m L′
∑ ∑ ∑
= φ0L (rm) mn n
gLL n
′ YL′ (E)CL′ . (72)
L n̸=m L′

This leads to the secular equation



[δLL′ δmn ZLm (E) − gLL
mn n n
′ YL′ (E)] CL′ = 0. (73)
L′ n

Here, ZLm (E) and YLm′ (E) are

ZLm (E) = Clm (E) − iSlm (E), (74)


YLm′ (E) = Slm (E). (75)

Therefore,

det [δLL′ δmn − gLL


mn n
′ tL′ (E)] = 0 (76)

must be satisfied.

6.3 Crystal Green’s Function


6.3.1 Integral equation
In the previous section, we constructed the wave functions of scattered electrons using the free
space Green’s function. In this section, the Green’s function of the system G(r, r ′) is constructed.

[∇2 + E − V (r)]G(r, r ′) = δ(r − r ′) (77)

17
Transposing the potential term to r.h.s. as

[∇2 + E]G(r, r ′) = V (r)G(r, r ′) + δ(r − r ′)


= f (r, r ′), (78)

we find that G is expressed as



G(r, r ′) = g(r, r ′′)f (r ′′, r ′)dv ′′

= g(r, r ′) + g(r, r ′′)V (r′′ )G(r ′′, r ′)dv ′′ . (79)

6.3.2 Dyson equation


The free space Green’s function is expanded as

g(r + Rm, r ′ + Rn) = δmn g(r, r ′) + mn
JL (r)gLL ′
′ JL′ (r ), (80)
LL′
√ ∑
g(r, r ′) = −i E JL (r<)HL (r>). (81)
L

where

JL (r) = jl ( Er)YL (r), (82)
(1)

HL (r) = hl ( Er)YL (r). (83)

Similarly G(r, r′ ) is expressed as



G(r + Rm, r ′ + Rn) = δmn Gm ′
s (r, r ) + JL (r)Gmn ′
LL′ JL′ (r ), (84)
LL′
√ ∑
Gm (r, r ′ ) = −i E JL (r<)HL (r>), (85)
s
L

JL (r) = Pl ( Er)YL (r), (86)

HL (r) = Ql ( Er)YL (r). (87)

The direct insertion of this formula to the integral equation yields the expansion coefficients
Gmn
LL

Gmn mn
LL′ = gLL′ +
ml l
gLL ln
′′ tL′′ GL′′ L′ . (88)
L′′ l

6.3.3 Periodic boundary condition


When the scattering centers are aligned periodically such as in a crystal, Gmn mn
LL′ and gLL′ are
Fourier transformed as

1
Gmn
LL′ = GLL′ (k)e−ik(Rm−Rn) dk, (89)
τ 1stBZ

1
mn
gLL′ = gLL′ (k)e−ik(Rm−Rn) dk. (90)
τ 1stBZ
Substituting them into Eq. (88) yields

GLL′ (k) = gLL′ (k) + gLL′′ (k)tL′′ GL′′ L′ (k). (91)
L′′

We finally obtain the equation,



GLL′ (k) = [δL′′ L − gL′′ L (k)tL ] gL′′ L′ (k). (92)
L′′

18
6.3.4 Density of States
The electron density distribution is directly obtained from the Green’s function of the system.
It is shown from the eigen function expansion of the Green’s function.
The eigenfunction φn of the Schrödinger equation Hφ = Eφ which associated with the
eigenvalue En and the Green’s function of the system satisfy

Hφn = En φn , (93)

[E − H]G(r, r ′) = δ(r − r ′). (94)

Expanding G(r, r′ ) into φn ’s with the expansion coefficients Gn (r′ ),



G(r, r ′) = Gn (r ′)φn (r), (95)
n

and multiplying it by (E − H) from the left, we obtain



(E − H)G(r, r ′) = Gn (r ′)(E − H)φn (r),
n
= δ(r − r ′). (96)

Multiplying Eq. (96) by φ∗m (r) and the volume integration leads to

Gn (r ′) = φ∗ (r ′)/(E − En ). (97)

Therefore,
∑ φ∗ (r ′ )φn (r)
G(r, r ′) = n
(98)
n E − En

is obtained. With an identity


1 1
= P. − iπδ(x), (99)
x + iϵ x

∑ φ∗ (r ′)φn (r)
G(r, r ′) = n
n E + iϵ − En
∑ φ∗ (r ′ )φn (r) ∑
= P. n
− iπ δ(E − En )φ∗n (r ′)φn (r) (100)
n E − En n

is obtained. This gives the expression for the electron density distribution ρ

ρ(r, E) = δ(E − En )φ∗n (r)φn (r)
n
1
= − ImG(r, r). (101)
π
Therefore, once the Green’s function of the crystal is known, we obtain the electron density
directly from it.

19
Contour Integration of the Green's Function
Im E Im E
Ef Ef
C
A
Re E Re E

δ (E-En)

Im G(z)

z=E+i Γ
E

Figure 4: Contour integration of the Green’s Function

6.3.5 Contour integration


Now, the density distribution is calculated from the crystal Green’s function. To obtain the
density distribution of electrons, it is needed to integrate the Green’s function with respect
to the energy accurately. However, it is rather difficult because of the many-peaked structure
of the density of states. To overcome this difficulty the contour integration technique is often
employed. First, the Green’s function is continuated to the complex energy plane.
∑ φ∗ (r)φn (r)
n
G(r, r; z) =
n z−E
∫ ∑
∞ φ∗n (r)φn (r) ′
= δ(E ′ − En ) dE
−∞ n z − E′

1 ∞
= − ImG(r, r ′; E ′ )/(z − E ′ )dE ′ (102)
π −∞

Here, G(z) is analytic in the whole complex plane except on the real axis. So we can deform the
integration path arbitrary in the complex plane.

n(r) = |φn (r)|2
n
∫ EF
= ρ(r, E)dE
−∞

1 EF
= − ImG(r, r; E)dE
π −∞

1
= − ImG(r, r; z)dz
π A

1
= − ImG(r, r; z)dz (103)
π C
The contour integration can be performed accurately, because the peaked structure of the DOS
is smeared out. At z = E + iΓ, G(z) is

ImG(r, r; z) = ImG(r, r; E + iΓ)

20
∫ ∞
1 Γ
= ImG(E ′ ) dE ′ . (104)
π −∞ (E ′ − E)2 − Γ2

This means the delta function on the real axis is broadened into the Lorentzian shape with the
half-width of Γ (Fig. 4).

6.4 Coherent potential approximation (CPA)


Let us consider a random alloy system which consists of n components, A1 , A2 , ... An and
their concentrations are x1 , x2 , ...xn . Suppose that the atom Ai is at the origin in the effective
medium. Green’s function which starts from the origin and comes back to the origin is
∑ [ ]−1
GiLL′ = G̃LL′′ 1 − (ti − t̃)G̃ . (105)
L′′ L′
L′′

G̃LL′ and t̃ are the Green’s function and t-matrix (coherent t-matrix) of the effective medium,
respectively. CPA is an efficient approximation to determine t̃. We use the self-consistent
equation,

n
xi GiLL′ = G̃LL′ . (106)
i=1

This equation means that we determine the Green’s function of the medium by taking weighted
average of the Green’s function where the component atom is placed at the origin in the effective
medium (see Fig. (5)).

xa A xb B

Figure 5: Idea of CPA.

21
7

START Fix the core state confi-


specx.f readin.f gulation. corcnf.f Solve the Poissn equation
and add the exchange-
correlation potential to
construct new potential.
Which System ? Self-consistent
potenv.f
Subroutines

iteration starts.
chklat.f prmvec.f
bzmesh.f

Total energy calculation.


Define complex energy
banden.f totalw.f
Configure lattice vectors contour. drvmesh.f
and the reciprocal lattice
vectors. genlpt.f madlng.f
Radial wave functions
No
and the atomic phase Check convergence.
phasea.f radial.f

22
shifts. erranc.f
Structural constants.
gtchst.f

Back scattering. Yes


spckkr.f kkrsed.f
cinvrx.f bzmsmb.f
Yes Iteration loop ends.
Starting potential
exists?
Energy integral of the
No
Green function and get
charge and spin densities. Display results.
Atomic calculation. dsenum.f hypera.f

Figure 6: The flow chart of the band structure calculation.


gsdatp.f atmicv.f gensm.f chrdnc.f rrcnv.f

Construct starting poten- Check neutrality and END


tial. potenv.f shift EF. neutrl.f
a brief flowchart is given in Fig. 6. A comment on each subroutine is also given in table 4.
The KKR package consists of over 100 subroutines. Here, to get a survey of the KKR package,
Table 4: Subroutines in the KKR package.
Subroutine Comment
specx.f Some parameters and arrays are defined and spmain is called.
readin.f A given input file is read in.
spmain.f Main routine of the KKR.
chklat.f Check muffin tin radii and modify them if they conflict.
prmvec.f The primitive lattice vector and the reciprocal lattice vector are generated.
bzmesh.f k-points in the Brillouin zone are set up.
genlpt.f Lattice points in the real and reciprocal space are generated.
madlng.f The madelung constants are calculated.
gtchst.f The KKR structure constants are calculated.
gsdatp.f Initial potentials are constructed from the atomic calculations.
atmicv.f The atomic calculation is performed.
corcnf.f The configuration of the core states is confirmed.
drvmsh.f The energy contour is defined.
phasea.f The atomic t-matrix is calculated.
radial.f The radial Schrödinger equation is solved.
fczero.f Single site Green’s function.
cstate.f The radial Schrödinger equation is solved for the core states.
spckkr.f The crystal Green’s function is constructed.
kkrsed.f The structure constant are interpolated for each energy point.
cinvrx.f (1 − gt)−1 is calculated.
bzmsmb.f Integration in k-space.
chrdnc.f The charge density distribution is calculated.
neutrl.f The charge neutrality is calculated and ϵf is shifted.
potenv.f The Poisson equation is solved. The exchange-correlation potential is calculated.
banden.f The energy eigenvalues are summed up.
totalw.f The total energy of the system is calculated.
erranc.f The convergence is checked, and new input potential is constructed.
dsenum.f The results are printed out.
hypera.f The hyperfine field is calculated.

23
8 References
• Scattering theory

– J. J. Sakurai Modern Quantum Mechanics


– L. I. Schiff Quantum Mechanics
– J. Alfken Mathematical Methods for Physicists

• KKR method

– W. Kohn, N. Rostoker Phys. Rev. 94(1954)1111.


– K. H. Johnson J. Chem. Phys. 45(1966)3085.
– F. Herman, A. R. Williams, K. H. Johnson J. Chem. Phys. 61(1974)3508.
– R. Podloucky, R. Zeller, P. H. Dederichs Phys. Rev. 22(1980)5777.
– R. Zeller, J. Deutz, P. H. Dederichs Solid State Comm. 44(1982)993.
– H. Akai’s note on Korringa-Kohn-Rostoker Method (1993).
– T. Kotani, H. Akai Phys. Rev. B54(1996)16502.

• Density functional theory

– P. Hohenberg, W. Kohn Phys. Rev. 136(1964)B864.


– W. Kohn, L. J. Sham Phys. Rev. 140(1965)A1133.

• Package (Machikaneyama2002, AkaiKKR)

– http://sham.phys.sci.osaka-u.ac.jp/˜kkr/

24

You might also like