Schur decomposition
T = schur(A)
T = schur(A,flag)
[U,T] = schur(A,...)
The schur
function 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 3-by-3 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 off-diagonal
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.