Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

我们为许可用户提供了部分翻译好的中文文档。您只需登录便可查阅这些文档

schur

Schur decomposition

Syntax

T = schur(A)
T = schur(A,flag)
[U,T] = schur(A,...)

Description

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'

T is triangular and is complex if A is real and has complex eigenvalues.

'real'

T has the real eigenvalues on the diagonal and the complex eigenvalues in 2-by-2 blocks on the diagonal. 'real' is the default when A is 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)).

Examples

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.

See Also

| | |

Introduced before R2006a

Was this topic helpful?