pythtb.WFArray.projectors#

WFArray.projectors(state_idx=None, return_Q=False)[source]#

Returns the band projectors associated with the states in the WFArray.

The band projectors are defined as the outer product of the wavefunctions:

\[P_{n\mathbf{k}} = \lvert u_{n\mathbf{k}}(\mathbf{r})\rangle \langle u_{n\mathbf{k}}(\mathbf{r}) \rvert, \quad Q_{n\mathbf{k}} = \mathbb{I} - P_{n\mathbf{k}}\]

Added in version 2.0.0.

Parameters:
state_idxint or array-like of int, optional

Index or indices of the states for which to compute the projectors. If not provided or None, projectors for all states are computed.

return_Qbool, optional

If True, the function also returns the orthogonal projector Q.

Returns:
Pnp.ndarray

The band projectors.

Qnp.ndarray, optional

The orthogonal projectors.