MATLAB Function Reference | ![]() ![]() |
表示
[P,H] = hess(A) H = hess(A)
詳細
H = hess(A)
は、行列 A
の Hessenberg 型である H
を出力します。
[P,H] = hess(A)
は、A
=
P
*H
*P'
と P'
*P
= eye(size(A))
を満足するHessenberg 行列 H
とユニタリ行列 P
を作成します。
定義
Hessenberg 行列は、主対角の2つ下の対角要素以下はすべてゼロの行列です。行列が対称、または、エルミートである場合、型は三重対角になります。この行列は、元の行列と同じ固有値をもちますが、それを算出するために必要な計算時間は少なくなります。
例題
H = -149 -50 -154 537 180 546 -27 -9 -25
この Hessenberg 型は、(3,1) の位置に0を配置することになります。
hess(H) = -149.0000 42.2037 -156.3165 -537.6783 152.5511 -554.9272 0 0.0728 2.4489
アルゴリズム
hess
は、行列の Hessenberg 型を計算するために、LAPACK ルーチンを使います。
行列 A |
ルーチン |
実数対称 |
DSYTRD DSYTRD , DORGTR , (出力 P 付き) |
実数非対称 |
DGEHRD DGEHRD , DORGHR (出力 P 付き) |
複素エルミート |
ZHETRD ZHETRD , ZUNGTR (出力 P 付き) |
複素非エルミート |
ZGEHRD ZGEHRD , ZUNGHR (出力 P 付き) |
参考
参考文献
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.
![]() | helpwin | hex2dec | ![]() |