This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.

# SchurDecomposition

 SchurDecomposition[m]yields the Schur decomposition for a numerical matrix m, given as a list where q is an orthonormal matrix and t is a block upper-triangular matrix. SchurDecompositiongives the generalized Schur decomposition of m with respect to a.
• The matrix m must be square.
• For real-valued matrices m, setting the option RealBlockDiagonalForm->False allows complex values on the diagonal of the t matrix.
Find the Schur decomposition of a real matrix:
Find the Schur decomposition of a real matrix:
 Out[1]=
 Out[2]=
 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)
m is a 3×3 matrix:
With True, an extra matrix that represents the scaling and permutation is returned:
Verify that is equal to d.q.t.Conjugate[Transpose[q]]:
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:
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:
m is a matrix with exact integer valued entries:
SchurDecomposition only works with approximate numerical matrices:
For exact matrices, use JordanDecomposition: