MATLAB Function Reference    
schur

Schur 分解

表示

詳細

コマンド schur は、行列の Schur 型を計算します。

T = schur(A) は、Schur 行列 T を戻します。

T = schur(A,flag) は、実数行列 A に対して、flag の値に依存して、Schur 行列 T を戻します。

'complex'
A が、複素固有値の場合、T は、三角で、複素数になります。
'real'
T は、対角要素に実数固有値と2行2列のブロックの型で複素数固有値をもっています。'real' は、デフォルトです。

A が複素数の場合、schur は、複素数 Schur 型を、行列 T を戻します。複素 Schur 型は、対角上に、A の固有値をもつ上三角行列になります。

関数 rsf2csf は、実 Schur 型を複素数 Schur 型に変換します。

[U,T] = schur(A,...) は、ユニタリ行列 U を戻し、A = U*T*U'U'*U = eye(size(A)) を満足します。

例題

H は、3行3列の固有値テスト行列です。

その Schur 型は、つぎのようになります。

この場合、固有値は、1, 2, 3 となり、対角要素上に位置します。対角要素でないものは、非常に大きく、そのために、行列の条件数は、悪いものになります。すなわち、行列要素の中のわずかの変化により、固有値に比較的大きな変化を生じさせます。

アルゴリズム

schur は、LAPACK ルーチンを使って、行列の Schur 型を計算します。

行列 A
ルーチン
実数、対称
DSYTRD, DSTEQR
DSYTRD, DORGTR, DSTEQR (出力 U 付き)
実数、非対称
DGEHRD, DHSEQR
DGEHRD, DORGHR, DHSEQR (出力 U 付き)
複素 Hermitian
ZHETRD, ZSTEQR
ZHETRD, ZUNGTR, ZSTEQR (出力 U 付き)
非 Hermitian
ZGEHRD, ZHSEQR
ZGEHRD, ZUNGHR, ZHSEQR (出力 U 付き)

参考

eig, hess, qz, rsf2csf

参考文献

Anderson, E., Z. Bai, C. Bischof, S. Blackford, J. Demmel, J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney, and D. Sorensen, LAPACK User's Guide, Third Edition, SIAM, Philadelphia, 1999.


 scatter3 script