triqs.experimental.lattice.lattice.TbHk.eigenvectors

TbHk.eigenvectors()

Dispatched C++ function(s).

[1] (k: ndarray[float, 2])
  -> tuple[ndarray[float, 2], ndarray[complex, 3]]

Compute the band-basis energies and eigenvectors of \(H(\mathbf{k})\) for a list of k-points.

For each k-point the Hamiltonian is diagonalized and both the band energies and the eigenvectors are returned:

\[H_{k,mn} = U_{\mathbf{k},ma}^\dagger \left( \sum_j t(\mathbf{R}_j)_{ab} e^{2 \pi i \mathbf{k} \cdot \mathbf{R}_j} \right) U_{\mathbf{k},nb} \; ,\]

with lattice displacements \(\{\mathbf{R}_j\}\) and associated overlap (hopping) matrices \(\{t(\mathbf{R}_j)_{ab}\}\).

The k-points must be given in units of the reciprocal lattice vectors (from 0 to 1).

Parameters:
kndarray[float, 2]

k-points as an array of shape [nk, 3] in units of the reciprocal lattice vectors.

Returns:
tuple[ndarray[float, 2], ndarray[complex, 3]]

Tuple containing the band-basis energies as a real matrix of shape [nk, nbands] and the complex eigenvectors as an array of shape [nk, nbands, nOrbitals].