triqs.lattice.lattice_tools.dos_patch

triqs.lattice.lattice_tools.dos_patch()

Dispatched C++ function(s).

[1] (TB: TightBinding,
     triangles: ndarray[float, 2],
     neps: int,
     ndiv: int)
  -> tuple[ndarray[float, 1], ndarray[float, 1]]

Compute the density of states of a tight-binding Hamiltonian on a triangular Brillouin zone patch.

Note

Only supported for 2-dimensional lattices.

Parameters:
TBTightBinding

Tight-binding Hamiltonian.

trianglesndarray[float, 2]

2-D array of shape (n_triangles * 3, 2) containing the vertices of the triangular patches in the Brillouin zone, three rows per triangle.

nepsint

Number of energy bins.

ndivint

Number of sub-divisions of each triangle used for the sampling.

Returns:
tuple[ndarray[float, 1], ndarray[float, 1]]

Pair (energies, dos), where energies is a 1-D array of bin centres and dos is a 1-D array of the same length containing the total density of states summed over orbitals.