scipy.linalg.schur(a, output='real', lwork=None, overwrite_a=False)

Compute Schur decomposition of a matrix.

The Schur decomposition is

A = Z T Z^H

where Z is unitary and T is either upper-triangular, or for real Schur decomposition (output=’real’), quasi-upper triangular. In the quasi-triangular form, 2x2 blocks describing complex-valued eigenvalue pairs may extrude from the diagonal.

Parameters :

a : array, shape (M, M)

Matrix to decompose

output : {‘real’, ‘complex’}

Construct the real or complex Schur decomposition (for real matrices).

lwork : integer

Work array size. If None or -1, it is automatically computed.

overwrite_a : boolean

Whether to overwrite data in a (may improve performance)

Returns :

T : array, shape (M, M)

Schur form of A. It is real-valued for the real Schur decomposition.

Z : array, shape (M, M)

An unitary Schur transformation matrix for A. It is real-valued for the real Schur decomposition.

See also

Convert real Schur form to complex Schur form

Previous topic


Next topic


This Page