Last Modified 17 December 1999
The band structure plots shown in example 7 and example 8 show useful information about the electronic states of the system, but only, as we have seen, for particular lines in the zone. Another way of studying the electronic structure of the system is by looking at the electronic density of states (DOS), which tells us how many states are in a given energy range, but cannot tell us where these states are in the Brillouin zone.
To make things interesting we'll study the DOS of Ruthenium in its experimental hcp ground state. The Ruthenium parameters are available from the Tight-Binding database under Ru, and we'll save them as ru_par.
The calculation of the DOS requires a knowledge of the eigenvalues of the system, so we'll use the static code to create a QLMT file. To do this we'll need the Ruthenium parameter file (see above) and a spacegroup file. We'll steal the one we need from example 2, where we used the lattice coordinate space group file spcgp1.hcp. Copy this into the working directory as spcgp1.hcp.
In the ground state Ruthenium has the lattice parameters
a = 2.71 Å = 5.12 Bohr and
c = 4.28 Å = 8.09 Bohr .
For our purposes we won't need the angular momentum decomposition of the density of states, so we'll run static with Mode = 10. Finally, we'll make our own k-points. Then the SKIN file looks like this:
Mode=10 (Calculate energy only -- no pressure) 0.005 5.000 (T_{Fermi}, Eigenvalue cutoff for P calculation) ru_par Ruthenium HCP (A3) -- Experimental Lattice Constants experiment (20 character label for SKENG) 0.00 (Electrons in addition to nominal Ru charge (=8/atom)) 3 (hexagonal lattice, read a and c) 5.12 8.09 (a and c in Bohr) 0 (No additional strains applied) 2 (Atoms in the unit cell) 4 4 4 (Neighbor search cutoff indices) F (Logical variable -- no internal displacements) 1 0.33333333333333333 0.66666666666666667 0.25 0 0 0 (Atom 1 in lattice coord.) 1 0.66666666666666667 0.33333333333333333 0.75 0 0 0 (Atom 2 in lattice coord.) NEWSYM=T (Generate new set of k-points) LATTIC=4 (Lattice type / Next is spacegroup file name:) spcgp1.hcp ILAT=T (Space group file in lattice Coordinates) 0 (Generate k-points) lspec=f,linfok=f (Regular points, no information points) 30 30 24 (Mesh: must be (5I5) format)
This looks like a rather large number of k-points (1183, to be
exact), but the calculation is rather quick, especially in parallel
mode, and the more k-points we have to better the DOS will be.
After running the code, our working directory looks like this:
Note that this time the SKENG file
gives a reasonable answer,
because the k-point mesh covers the entire Brillouin zone.
Since we choose Mode=10, the QLMT file
contains only k-point and eigenvalue information. The first two
k-points should look like this:
Now we have the task of turning all of this information into a
DOS plot. For that, please go on to the next
page.
Now go to page 2 and see how to calculate
an approximate density of states.
Look at other examples.
Get other parameters from the Tight-binding periodic
table. Return to the static Reference
Manual.
$ ls -l
total 896
-rw-r--r-- 1 mehl users 682681 Jun 2 16:59 QLMT
-rw-r--r-- 1 mehl users 63 Jun 2 16:59 SKENG
-rw-r--r-- 1 mehl bind 1157 Jun 2 16:55 SKIN
-rw-r--r-- 1 mehl users 103891 Jun 2 16:59 SKOUT
-rw-r--r-- 1 mehl users 103080 Jun 2 16:58 output
-rw-r--r-- 1 mehl users 7133 Jun 2 16:41 ru_par
-r--r--r-- 10 mehl bind 1511 Jul 28 1997 spcgp1.hcp
experiment 183.661901 .240370332 -.010923624
1 1 0 1 SPINS, WIND., SC. WIND.
1183 K-POINTS 2 16.00000 .00500
.00000 .00000 .00000 .00005 18 0.4629629630D-04 K
-.3888916 0.000000E+00
-.2168564 0.000000E+00
.0423497 0.000000E+00
.0423497 0.000000E+00
.0650438 0.000000E+00
.0968025 0.000000E+00
.0968025 0.000000E+00
.1353442 0.000000E+00
.1353442 0.000000E+00
.3120181 0.000000E+00
.3298007 0.000000E+00
.3298007 0.000000E+00
1.0069307 0.000000E+00
1.4478273 0.000000E+00
1.4478273 0.000000E+00
2.1110837 0.000000E+00
2.1110837 0.000000E+00
2.1185532 0.000000E+00
.00000 .00000 -.04167 .00009 18 0.9259259259D-04 K
-.3864778 0.000000E+00
-.2161959 0.000000E+00
.0414126 0.000000E+00
.0414126 0.000000E+00
.0642952 0.000000E+00
.0959363 0.000000E+00
.0959363 0.000000E+00
.1372855 0.000000E+00
.1372855 0.000000E+00
.3070205 0.000000E+00
.3296955 0.000000E+00
.3296955 0.000000E+00
1.0112809 0.000000E+00
1.4509220 0.000000E+00
1.4509220 0.000000E+00
2.1094397 0.000000E+00
2.1150038 0.000000E+00
2.1150038 0.000000E+00