degenerate_decouple
- sisl.physics.degenerate_decouple(state, M)
Return vec decoupled via matrix M
The decoupling algorithm is this recursive algorithm starting from \(i=0\):
\[\begin{split}\mathbf p &= \mathbf V^\dagger \mathbf M_i \mathbf V \\ \mathbf p \mathbf u &= \boldsymbol \lambda \mathbf u \\ \mathbf V &= \mathbf u^T \mathbf V\end{split}\]- Parameters
state (numpy.ndarray or State) – states to be decoupled on matrices M The states must have C-ordering, i.e.
[0, ...]
is the first state.M (numpy.ndarray) – matrix to project to before disentangling the states