vp.linalg.schur
The real Schur decomposition A = Z T Z^T: T quasi-triangular, Z orthogonal. As scipy.linalg.schur(A, output="real"). T is not unique, so compare through the residual and the eigenvalues, not entry by entry.
Part of the distribution vipyr; it runs from a checkout of the
repository. Planned on PyPI as pip install vipyr.
Alias
vp.linalg.schur is another name for vp.control.schur, the same kernel with the
same parameters and results. Its page has the signature, the examples and what it is checked against.