Schur decomposition
T = schur(A)
T = schur(A,flag)
[U,T] = schur(A,...)
The schur
command computes the Schur form
of a matrix.
T = schur(A)
returns the
Schur matrix T
.
T = schur(A,flag)
for real
matrix A, returns a Schur matrix T
in one of two
forms depending on the value of flag
:
'complex' 

'real' 

If A
is complex, schur
returns
the complex Schur form in matrix T
and flag
is
ignored. The complex Schur form is upper triangular with the eigenvalues
of A
on the diagonal.
The function rsf2csf
converts the real Schur
form to the complex Schur form.
[U,T] = schur(A,...)
also
returns a unitary matrix U
so that A =
U*T*U'
and U'*U = eye(size(A))
.
H
is a 3by3 eigenvalue test matrix:
H = [ 149 50 154 537 180 546 27 9 25 ]
Its Schur form is
schur(H) ans = 1.0000 7.1119 815.8706 0 2.0000 55.0236 0 0 3.0000
The eigenvalues, which in this case are 1
, 2
,
and 3
, are on the diagonal. The fact that the offdiagonal
elements are so large indicates that this matrix has poorly conditioned
eigenvalues; small changes in the matrix elements produce relatively
large changes in its eigenvalues.