Table of Contents

NewTightBinding

NewTightBinding() initiates a Tight Binding object with the following standard properties:

NewTightBinding() defines an empty tight binding object, its properties can be set by setting the properties of the created object. For more details see the properties of tight-binding objects, or the example below.

Besides defining TightBinding objects by hand they can be generated from the output of DFT calculation (see, for example, TightBindingDefFromDresdenFPLO()).

Example

The following example creates a minimal tight binding object for a Dichalcogenide lattice. The parameters are not set to represent a real material.

Input

Example.Quanty
-- set parameters
dAB = 0.2
tnn = 1.1
-- create the tight binding Hamiltonian
HTB = NewTightBinding()
HTB.Name = "dichalcogenide tight binding"
HTB.Cell = {{sqrt(3),0,0},
            {sqrt(3/4),3/2,0},
            {0,0,1}}
HTB.Atoms = { {"A", {0,0,0},       {{"p", {"0"}}}},
                {"B", {sqrt(3),1,0}, {{"p", {"0"}}}}}
HTB.Hopping = {{"A.p","A.p",{         0,   0,0},{{-dAB/2}}},
                {"B.p","B.p",{         0,   0,0},{{ dAB/2}}},
                {"A.p","B.p",{         0,   1,0},{{ tnn  }}},
                {"B.p","A.p",{         0,  -1,0},{{ tnn  }}},
                {"A.p","B.p",{ sqrt(3/4),-1/2,0},{{ tnn  }}},
                {"B.p","A.p",{-sqrt(3/4), 1/2,0},{{ tnn  }}},
                {"A.p","B.p",{-sqrt(3/4),-1/2,0},{{ tnn  }}},
                {"B.p","A.p",{ sqrt(3/4), 1/2,0},{{ tnn  }}}
                }
 
print("Tight-binding object:")
print(HTB)
 
print("create a periodic cluster Hamiltonian with 4 unit-cells along the z-axis:")
HCl = CreateClusterHamiltonian(HTB, {"periodic", {{1,0,0},{0,1,0},{0,0,4}}})
print(HCl)

###

Output

Tight-binding object:
 
Settings of a tight binding model: dichalcogenide tight binding
 
printout of Crystal Structure
Units: 2Pi (g.r=2Pi) Angstrom Absolute atom positions
Unit cell parameters:
a:       1.7320508       0.0000000       0.0000000
b:       0.8660254       1.5000000       0.0000000
c:       0.0000000       0.0000000       1.0000000
Reciprocal latice:
a:       3.6275987      -2.0943951       0.0000000
b:       0.0000000       4.1887902       0.0000000
c:       0.0000000       0.0000000       6.2831853
Number of atoms 2
#   0 | A ( 0 ) at position {       0.0000000 ,       0.0000000 ,       0.0000000 }
      | p shell with 1 orbitals { 0 }
#   1 | B ( 5 ) at position {       1.7320508 ,       1.0000000 ,       0.0000000 }
      | p shell with 1 orbitals { 0 }
Containing a total number of 2 orbitals
Hopping definitions ( 8 )
Hopping from 0 : A - p to 0 : A - p with translation vector in unit cells: { 0 , 0 , 0 } ({ 0.00000000E+00  0.00000000E+00  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0] -1.00000000E-01 
 
Hopping from 1 : B - p to 1 : B - p with translation vector in unit cells: { 0 , 0 , 0 } ({ 0.00000000E+00  0.00000000E+00  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0]  1.00000000E-01 
 
Hopping from 0 : A - p to 1 : B - p with translation vector in unit cells: { -1 , 0 , 0 } ({ 0.00000000E+00  1.00000000E+00  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0]  1.10000000E+00 
 
Hopping from 1 : B - p to 0 : A - p with translation vector in unit cells: { 1 , 0 , 0 } ({ 0.00000000E+00 -1.00000000E+00  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0]  1.10000000E+00 
 
Hopping from 0 : A - p to 1 : B - p with translation vector in unit cells: { 0 , -1 , 0 } ({ 8.66025404E-01 -5.00000000E-01  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0]  1.10000000E+00 
 
Hopping from 1 : B - p to 0 : A - p with translation vector in unit cells: { 0 , 1 , 0 } ({-8.66025404E-01  5.00000000E-01  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0]  1.10000000E+00 
 
Hopping from 0 : A - p to 1 : B - p with translation vector in unit cells: { -1 , -1 , 0 } ({-8.66025404E-01 -5.00000000E-01  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0]  1.10000000E+00 
 
Hopping from 1 : B - p to 0 : A - p with translation vector in unit cells: { 1 , 1 , 0 } ({ 8.66025404E-01  5.00000000E-01  0.00000000E+00 })
Matrix =
Real Part of Matrix with dimensions [Ni=1][Nj=1] ([Rows][Collums])
          [           0]
[     0]  1.10000000E+00 
 
 
 
create a periodic cluster Hamiltonian with 4 unit-cells along the z-axis:
 
Operator: Operator
QComplex         =          0 (Real==0 or Complex==1 or Mixed==2)
MaxLength        =          2 (largest number of product of lader operators)
NFermionic modes =          8 (Number of fermionic modes (site, spin, orbital, ...) in the one particle basis)
NBosonic modes   =          0 (Number of bosonic modes (phonon modes, ...) in the one particle basis)
 
Operator of Length   2
QComplex      =          0 (Real==0 or Complex==1)
N             =         16 (number of operators of length   2)
C  0 A  0 | -1.00000000000000E-01
C  1 A  1 |  1.00000000000000E-01
C  0 A  1 |  3.30000000000000E+00
C  1 A  0 |  3.30000000000000E+00
C  2 A  2 | -1.00000000000000E-01
C  3 A  3 |  1.00000000000000E-01
C  2 A  3 |  3.30000000000000E+00
C  3 A  2 |  3.30000000000000E+00
C  4 A  4 | -1.00000000000000E-01
C  5 A  5 |  1.00000000000000E-01
C  4 A  5 |  3.30000000000000E+00
C  5 A  4 |  3.30000000000000E+00
C  6 A  6 | -1.00000000000000E-01
C  7 A  7 |  1.00000000000000E-01
C  6 A  7 |  3.30000000000000E+00
C  7 A  6 |  3.30000000000000E+00

Table of contents