SchurDecomposition

SchurDecomposition[m]

yields the Schur decomposition for a numerical matrix m, given as a list {q,t} where q is an orthonormal matrix and t is a block uppertriangular matrix.

SchurDecomposition[{m,a}]

gives the generalized Schur decomposition of m with respect to a.

Details and Options

Examples

open allclose all

Basic Examples  (1)

Find the Schur decomposition of a real matrix:

Scope  (3)

m is a 4×4 matrix with two real and two complex eigenvalues:

Find the Schur decomposition using machine arithmetic:

Find the Schur decomposition using 20-digit precision arithmetic:

Find the Schur decomposition of a matrix with complex entries:

m and a are 2×2 matrices:

Find the generalized Schur decomposition of m with respect to a:

Options  (2)

Pivoting  (1)

m is a 3×3 matrix:

With Pivoting->True, an extra matrix that represents the scaling and permutation is returned:

Verify that m.d is equal to d.q.t.Conjugate[Transpose[q]]:

RealBlockDiagonalForm  (1)

m is a matrix with two real and two complex eigenvalues:

With RealBlockDiagonalForm->False, the result is complex upper triangular:

With RealBlockDiagonalForm->True, there are real 2×2 blocks along the diagonal:

Applications  (1)

m is a matrix that is not diagonalizable:

The Schur decomposition gives equivalence to a triangular matrix:

The eigenvalues, since they are real, occur on the diagonal of t:

Properties & Relations  (3)

m is a matrix with two real and two complex eigenvalues:

Find the Schur decomposition of m:

The real eigenvalues appear on the diagonal of t, the complex as a 2×2 block:

Verify that m is equal to q.t.Conjugate[Transpose[q]]:

m and a are random 3×3 matrices:

Find the generalized Schur decomposition of m with respect to a:

Verify that m is given by q.s.Conjugate[Transpose[p]]:

Verify that a is given by q.t.Conjugate[Transpose[p]]:

m is a symmetric random matrix:

Find the Schur decomposition of m:

t is a diagonal matrix with the eigenvalues of m along the diagonal:

The columns of q are the eigenvectors of m:

Possible Issues  (1)

m is a matrix with exact integer valued entries:

SchurDecomposition only works with approximate numerical matrices:

For exact matrices, use JordanDecomposition:

Introduced in 1991
 (2.0)
 |
Updated in 2003
 (5.0)
2008
 (7.0)