TB bandstructure - bertdupe/Matjes GitHub Wiki
The tight-binding part of Matjes can be used to calculate the bandstructure.
Normal bandstructure
Considering the very simple example of a single atom with one orbital in a cubic lattice, the following input
-file can be used:
simulation tight-binding
do_TB_k T
TB_hopping
1 1 1 1 0 0 1 -0.50
do_highs_k T
N_highsym 4
k_highs_pts
0.0 0.0 0.0 #high symmetry point 1 (Gamma)
0.5 0.0 0.0 #high symmetry point 2 (X)
0.5 0.5 0.0 #high symmetry point 3 (M)
0.0 0.0 0.0 #high symmetry point 4 (Gamma)
k_highs_dist 0.003 #distance between points
# parameters of the lattice
Periodic_log T T F
Nsize 1 1 1
alat 1.0 1.0 1.0
#Simple cubic lattice
lattice
1.0 0.0 0.0
0.0 1.0 0.0
0.0 0.0 1.0
atomtypes 1
at1 0.0 0.0 0.0 F 1
atoms 1
at1 0.0 0.0 0.0
This input creates a file called highs_plot.dat
which includes the relative position along the high symmetry path as a first column and as a second column the corresponding energy. For more than one orbital, the first column will be repeated several times. The created highs_plot.gnu
-script allows to quickly plot the calculated bandstructure and also contains the positions of the high-symmetry point along the reciprocal space distance axis.
This example band-structure does not include any super-cell structure, by changing to eg. Nsize 4 4 1
instead a system with 16 atoms in the unit-cell is considered. While the physics does not change, significant back-folding occurs so that the band-structure, now automatically calculated in the accordingly reduced Brillouin-zone, consists of 16 bands with more structure.
Adding Jsd-coupling in combination with a non-uniform magnetic texture or a defect to the Hamiltonian further modifications of the bandstructure can be studied.
Superconductivity
This example with a slightly more complicated Hamiltonian includes on-site s-type superconductivity of ridiculously large magnitude.
simulation tight-binding
do_TB_k T
do_highs_k T
TB_hopping
1 1 1 1 0 0 0 0.00
1 1 1 1 0 0 1 0.30
1 1 1 1 0 0 2 0.00
1 1 2 2 0 0 0 0.50
1 1 2 2 0 0 2 0.50
1 1 1 2 0 0 0 0.80
TB_delta
1 1 1 1 0 1.d-1 0.0d0
1 1 2 2 0 5.d-2 0.0d0
N_highsym 4
k_highs_pts
0.0 0.0 0.0
0.5 0.0 0.0
0.5 0.5 0.0
0.0 0.0 0.0
k_highs_dist 0.003 #distance between points
# parameters of the lattice
Periodic_log T T F
Nsize 1 1 1
alat 1.0 1.0 1.0
#Simple cubic lattice
lattice
1.0 0.0 0.0
0.0 1.0 0.0
0.0 0.0 1.0
atomtypes 1
at1 1.0 0.0 0.0 F 2
atoms 1
at1 0.0 0.0 0.0
In case of superconductivity the output is provided in the highs_plot_sc.dat
-file supplied with the highs_plot_sc.py
-script which allows plotting and an contains the high-symmetry point positions.
Since the Hamiltonian setup now includes both the electrons and the holes the simple diagonalization yields twice the number of bands mirrored at zero energy. In order to get hopefully more reasonable output, also the weight on only the electronic part of the Hamiltonian is supplied in a third column used as color-code in the python script.