Last Modified 17 December 1999

The ``Static'' Tight-Binding Program: Example V

In this example we use the tight-binding program static to determine the elastic constant C44 of bcc Niobium, using static to determine the energy as a function of strain and then using gnuplot's fitting program to determine the elastic constant. By extension this method can be used to determine the elastic constants of other cubic materials.

For more information about the construction of the input to the static program see e.g., Example 1 and the other examples. For more information about the calculation of elastic constants from total-energy information, see the paper ``First-principles calculation of Elastic Properties'', in Intermetallic Compounds: Vol. 1, Principles, J. H. Westbrook and R. L. Fleischer, eds. (Wiley, London: 1995).


As usual, we can obtain the tight-binding parameters for niobium from the tight-binding periodic table under ``Nb''. Save these parameters in a working directory as nb_par.

Determining the spacegroup file for this lattice is somewhat more involved than usual. It turns out that, just as in Example 4, the system forms a body-centered orthorhombic lattice, and the space group is Fmmm (#69 in the International Crystallographic Tables). The difference is that now the orthorhombic cell has been rotated by 45° about the z axis. It is still fairly easy to construct this space group, but I've made a copy for you here. Save it in your working directory under the name spcgrp. At some point we'll add this lattice, too, to the Crystal Lattice Structure (http://web.archive.org/web/20111231202250/http://cst-www.nrl.navy.mil/lattice/index.html) page.

Again, you can generate your own k-points, but I've provided a set called bccc44.08. This set is used to find C44 (hence the "c44") of the bcc lattice, and is equivalent to the bcc.08 mesh of Example I when there is no strain on the lattice.


Once again, take this copy of the SKIN (Slater-Koster INput) file, and save it in your working directory under the name SKIN. Let's examine this file.

The first few lines of the file should be familiar from previous examples:

Mode=3               Calculate E Only
0.002  0.500         (T_{Fermi}, Eigenvalue cutoff for P calculation)
nb_par

The first structure we'll calculate is the one with zero strain, i.e., the undistorted body-centered cubic lattice. This part of the SKIN file looks like this:

BCC Niobium -- 'Monoclinic' Strain for C_{44}
 e6^2= 0.0000        (20 character label for SKENG)
 0.00                (Electrons in addition to nominal Nb charge (=5/atom))
 2                   (bcc lattice, read in cubic lattice constant a)
 6.236               (lattice constant in Bohr)
 0                   (No additional strains applied)
 1                   (Atoms in the unit cell)
 4 4 4               (Neighbor search cutoff indicies)
F                    (Logical variable -- no internal displacements)
 1  0.000  0.000  0.000  0 0 0   (Position of atom in Lattice coordinates)
NEWSYM=T             (Generate new set of k-points)
LATTIC=1             (Lattice type / Next is spacegroup file name:)
spcgrp
ILAT=F               (Space group file in Cartesian Coordinates)
-1313                (Read k-points from a file/ Next is file name:)
bccc44.08

You should be able to recognize all of the parts to from previous examples. The only differences from a regular bcc calculation are the space group file, which is a rotated Fmmm rather than Im(-3)m, and the k-point mesh. However, since there is no strain on the lattice, this should produce an identical total energy. You can check this by using the Im(-3)m space group file and cubic bcc.08 k-point mesh in place of this spcgrp and bccc44.08.

The remaining parts of the calculation concern an fcc lattice under strain. Consider the next calculation in the SKIN file:

BCC Niobium -- 'Monoclinic' Strain for C_{44}
 e6^2= 0.0005        (20 character label for SKENG)
 0.00                (Electrons in addition to nominal Nb charge (=5/atom))
 2                   (bcc lattice, read in cubic lattice constant a)
 6.236               (lattice constant in Bohr)
-3                   (Strain option -3: read e6^2, e3 adjusts volume)
0.0005
 1                   (Atoms in the unit cell)
 4 4 4               (Neighbor search cutoff indicies)
F                    (Logical variable -- no internal displacements)
 1  0.000  0.000  0.000  0 0 0   (Position of atom in Lattice coordinates)
NEWSYM=F             (Generate new set of k-points)

The label tells us that the value of the strain parameter e1 is 0.05 for this calculation, a rather small strain. Note that the program starts by constructing an fcc lattice with a lattice constant of 6.236 Bohr, the experimental equilibrium lattice constant for Niobium. However, the lattice is then strained. The strain choice, -3, is made from the strain type section of the subroutine setlat.f. From the strain table we see that option -3 is a volume-conserving strain with the energy/strain relationship

E(e6) = E0 + ½ V C66 e62 + O[e64]  . (1)

Since this is a cubic lattice, we have C44=C66, so this reduces to

E(e6) = E0 + ½ V C44 e62 + O[e64]  . (2)

For this strain and a cubic lattice it is easy to show that E(-e6) = E(e6), so the program asks us to input x2 = e62.

Just as in Example 4, the atom remains at the origin for all strains. This is a consequence of the fact that there is only one atom in the unit cell and so we can always assume that it is at the origin. This assumes that there is no Jahn-Teller type distortion of the lattice. If such a distortion exists this calculation will only be an upper bound to the true elastic constant.

The remainder of the calculation proceeds in the usual way, as we calculate the energy as a function of x2 = e62. The the range of strain values is similar to that in Example 4. For metallic systems I've found that reliable elastic constants can be obtained if we keep |e6| < 0.10. The lattices in this SKIN file span this range.


Now go to the output discussion to see what will happen.

Look at other examples.

Get other parameters from the Tight-binding periodic table.


static Home Page   Introduction   About Version 1.11   Installation   List of Files   Usage   Input Files   Output Files   Trouble Shooting   Appendix

Return to the static Reference Manual.