# Impossible Schur Factorizations

I am having trouble finding the schur factorization of the following matrix:

$A=\begin{pmatrix}3&8 \\ -2&3 \end{pmatrix}$

I followed an algorithm in the book, as well as computing an answer via Octave/Matlab. I did the following:

[U,T] = schur(A) where $U$ will be a unitary matrix and $T$ will be an upper triangular matrix.

Which gave me:

$U=\begin{pmatrix}1&0 \\ 0&1 \end{pmatrix}$ and $T=A$

$T=A$ is not upper triangular -- schur's factorization is supposed to give us an upper triangular matrix...

1. What went wrong? Is a schur factorization possible for every square matrix (it should be according to wikipedia on schur decomposition

Thanks for all the help!

• No, I get the exact same result... Jan 31, 2014 at 3:25
• No luck :( I even tried .000001 difference... Jan 31, 2014 at 4:10
• So, from your value of Q we were able to recover the value of U and indeed got an upper triangular matrix. What are you using, or how did you do this? Jan 31, 2014 at 4:14

Matlab's documentation for schur does not state that T is triangular, but rather "quasitriangular". Quasitriangular matrices are a special form of Hessenberg matrix.

By default, the schur function returns the real form of the decomposition. Because your A matrix has complex eigenvalues the real Schur matrix T will be quasitriangular instead of upper triangular.

You can compute the more general complex Schur form as @Amzoti suggests via:

A = [3 8;-2 3];
[U,T] = schur(A,'complex')


which returns

U =

0.0000 + 0.8944i   0.4472 + 0.0000i
-0.4472 + 0.0000i   0.0000 - 0.8944i

T =

3.0000 + 4.0000i  -6.0000 + 0.0000i
0.0000 + 0.0000i   3.0000 - 4.0000i


In this case T is guaranteed to be diagonal.

By the way, you can convert the real matrix A to a complex one with a zero imaginary part by using the complex function (simply adding 0*1i generally won't work). Thus the following could also be used:

A = [3 8;-2 3];
[U,T] = schur(complex(A))

• What about solving this out by hand? Jan 31, 2014 at 4:23