Last updated -- 17 January 2002

The "SCTB" Tight-Binding Program: Example I

This page shows how to obtain files necessary to run the sctb Tight-Binding total energy/band structure evaluation programs. The interpretation of the output files is discussed on page 2.

  1. First we must obtain the executable. Copy the program eval_forces.nrl_tb_k_sum.${SYSTEM_TYPE} from the bin_${ARHC}/ directory created under scc_nrl_tb/ to the working directory.
  2. First we must obtain the TB model parameter file.
    1. We can get the tight-binding parameters for silicon from the web site, http://web.archive.org/web/20111231202250/http://cst-www.nrl.navy.mil/bind/ and click on "Si" in the periodic table.

      You have two choices. For this example click on the one that says "Rcut = 12.5 a.u.".

    2. Create a working directory and write this page into it under the name tightbind.parms.NRL_TB.

      The 6'th line in the static parameter file format lists only the atomic weight. You must edit the file, and add the atomic number after the atomic weight, like this:

      • before:
        
        28.086                            (Atomic Weight of Atom 1)
        		
      • after:
        
        28.086 14                         (Atomic Weight of Atom 1)
        		
    3. We also need a parameter file that specifies the charge-self-consistency information, called tightbind.parms.self_cons. Its contents are:
      T
      1
      14 2
      
      • The first line specifies that the self-consistency code should use interatomic Coulomb interactions.
      • The second line lists the number of atomic types
      • The third line specifies that for the atomic type with atomic number 14 the parameter, the onsite U, is 2 eV.

  3. Now we must choose the problem we wish to solve. For this example, we want to look at the energy and forces on atoms in a 1x1 unit cell of the 111 surface of Si.

    1. First we need the file specifying the atomic positions. The contents of this file are:
      10
      2.715000        0.000000       -2.715000
      0.000000        2.715000       -2.715000
      0.000000        0.000000     -271.500000
      0.000000             0.000000             0.000000 14
      1.357500             1.357500            -4.072500 14
      0.000000             0.000000            -5.430000 14
      1.357500             1.357500            -9.502500 14
      0.000000             0.000000           -10.860000 14
      1.357500             1.357500           -14.932500 14
      0.000000             0.000000           -16.290000 14
      1.357500             1.357500           -20.362500 14
      0.000000             0.000000           -21.720000 14
      1.357500             1.357500           -25.792500 14
      
      • The first line specifies the number of atoms in the unit cell.
      • The next three specify the unit cell lattice vectors, in Angstroms.
      • The next ten lines specify the atomic positions within the unit cell, in cartesian coordinates in Angstroms, and the atomic number of the atom.
    2. Then we need a k-point mesh file called k_pt_mesh.data The contents of this file are:
      32
      -0.4375 -0.4375 0 2
      -0.4375 -0.3125 0 2
      -0.4375 -0.1875 0 2
      -0.4375 -0.0625 0 2
      -0.4375 0.0625 0 2
      -0.4375 0.1875 0 2
      -0.4375 0.3125 0 2
      -0.4375 0.4375 0 2
      -0.3125 -0.4375 0 2
      -0.3125 -0.3125 0 2
      -0.3125 -0.1875 0 2
      -0.3125 -0.0625 0 2
      -0.3125 0.0625 0 2
      -0.3125 0.1875 0 2
      -0.3125 0.3125 0 2
      -0.3125 0.4375 0 2
      -0.1875 -0.4375 0 2
      -0.1875 -0.3125 0 2
      -0.1875 -0.1875 0 2
      -0.1875 -0.0625 0 2
      -0.1875 0.0625 0 2
      -0.1875 0.1875 0 2
      -0.1875 0.3125 0 2
      -0.1875 0.4375 0 2
      -0.0625 -0.4375 0 2
      -0.0625 -0.3125 0 2
      -0.0625 -0.1875 0 2
      -0.0625 -0.0625 0 2
      -0.0625 0.0625 0 2
      -0.0625 0.1875 0 2
      -0.0625 0.3125 0 2
      -0.0625 0.4375 0 2
      
      • The first line specifies the number of k-points.
      • The next 32 lines specify each k-point in reciprocal lattice coordinates, followed by the weight in the Brillouin zone sum.
    3. Finally we need a file called tb.data which specifies some control parameters for the calculation. The contents of this file are:
      1.0D-2
      3 3 1
      0
      
      • The first line specifies the temperature used in the electronic Fermi distribution, in eV.
      • The second line specifies how many periodic images to use along each lattice vector when searching for neighbors.
      • The third line specifies the debugging level, 0 in this case.

  4. Your working directory should now look something like this:

    $ls -l
    -rwxr-xr-x    1 bernstei cmr80     3506015 Jan 16 13:35 eval_forces.nrl_tb_k_sum.ibm_smp_lapack
    -r--r--r--    1 bernstei cmr80         627 Jan 16 13:15 k_pt_mesh.data
    -r--r--r--    1 bernstei cmr80         807 Jan 16 13:14 positions.111_surf.1_1_5
    -r--r--r--    1 bernstei cmr80          15 Jan 16 13:24 tb.data
    -r--r--r--    1 bernstei cmr80        7347 Jan 16 13:36 tightbind.parms.NRL_TB
    -r--r--r--    1 bernstei cmr80           9 Jan 16 13:12 tightbind.parms.self_cons
    	

  5. To run the program, use the command
    (echo 1; cat positions.111_surf_1_1_5) | ./eval_forces.nrl_tb_k_sum.* > output
    
  6. We're now ready to analyze the results.

Go on to page 2 to learn how to analyze the results.

Look at other examples.

Get other parameters from the Tight-binding periodic table.


sctb Home Page   Introduction   About Version 0.80   Installation   List of Files   Usage   Input Files   Output Files   Trouble Shooting   Appendix

Return to the sctb Reference Manual.