| |
| documentation:language_reference:objects:tightbinding:functions:calculatebands [2026/11/12 18:27] – created Maurits W. Haverkort | documentation:language_reference:objects:tightbinding:functions:calculatebands [2026/11/12 18:31] (current) – Maurits W. Haverkort |
|---|
| |
| * //HTB// : Tight-binding object, which can be created using the function //[[documentation:language_reference:functions:NewTightBinding|NewTightBinding()]]// | * //HTB// : Tight-binding object, which can be created using the function //[[documentation:language_reference:functions:NewTightBinding|NewTightBinding()]]// |
| * //kpath// : the path in $k$-space, a table //{{Label1, k1}, N1, {Label2, k2}, N2, ..., {Labeln, kn}}//. //Label// is a string of which the plot shows the first character (so "Gamma" is drawn as G), //k// a table of three reals and //N// the number of $k$-points between two labelled points. The $k$-points are Cartesian, in the inverse length unit of //HTB.Cell//, such that $k \cdot r$ is a phase; the point X of a simple cubic lattice with lattice constant 1 is //{pi,0,0}//. The path holds $N_k = N_1 + N_2 + \dots + n$ points. With //N// equal to 0 the two labelled points follow each other directly, and the plot leaves a gap between them. | * //kpath// : the path in $k$-space, a table //{ {Label1, k1}, N1, {Label2, k2}, N2, ..., {Labeln, kn} }//. //Label// is a string of which the plot shows the first character (so "Gamma" is drawn as G), //k// a table of three reals and //N// the number of $k$-points between two labelled points. The $k$-points are Cartesian, in the inverse length unit of //HTB.Cell//, such that $k \cdot r$ is a phase; the point X of a simple cubic lattice with lattice constant 1 is //{pi,0,0}//. The path holds $N_k = N_1 + N_2 + \dots + n$ points. With //N// equal to 0 the two labelled points follow each other directly, and the plot leaves a gap between them. |
| * //Sigma// : (optional) the self-energy, in any of the forms //[[documentation:language_reference:functions:calculateg|CalculateG()]]// accepts: a response function of the dimension of all orbitals, or a table with one entry per atom (a response function, a table per shell, or 0). | * //Sigma// : (optional) the self-energy, in any of the forms //[[documentation:language_reference:functions:calculateg|CalculateG()]]// accepts: a response function of the dimension of all orbitals, or a table with one entry per atom (a response function, a table per shell, or 0). |
| * //f1, f2, ...// : (optional) the characters. Each is either a function that takes an eigenstate $\psi$ (a vector over the orbitals of //HTB//, indexed //psi[1]//, //psi[2]//, ...) and returns a number, usually between 0 and 1, or a matrix $P$ (made with //Matrix.ToUserdata//) for the character $\mathrm{Re} \sum_{ij} \psi_i^{*} P_{ij} \psi_j$. Without a self-energy 0 to 4 characters can be given, with a self-energy 0, 1 or 3. With a self-energy a function has to be a quadratic form, see below. | * //f1, f2, ...// : (optional) the characters. Each is either a function that takes an eigenstate $\psi$ (a vector over the orbitals of //HTB//, indexed //psi[1]//, //psi[2]//, ...) and returns a number, usually between 0 and 1, or a matrix $P$ (made with //Matrix.ToUserdata//) for the character $\mathrm{Re} \sum_{ij} \psi_i^{*} P_{ij} \psi_j$. Without a self-energy 0 to 4 characters can be given, with a self-energy 0, 1 or 3. With a self-energy a function has to be a quadratic form, see below. |