MATLAB Function Reference    
qz

一般化固有値の QZ 分解

表示

詳細

関数 qz は、一般化固有値の計算で、中程度の精度の結果を求めるものです。

[AA,BB,Q,Z,V] = qz(A,B) は、Q*A*Z = AAQ*B*Z = BB、一般化固有ベクトル行列V となるような、上三角行列 AABB と左変換と右変換の積に含まれるユニタリ行列 QZ を作成します。 ここで、AB は、正方行列です。

[AA,BB,Q,Z,V] = qz(A,B,flag) 引数 flag の値により2つの分解の内の一つを作成します。ここで、行列 AB は、実数行列です。

'complex'
三角行列 AA を使って、可能な複素分解を行います。'complex' は、デフォルトです。
'real'
準三角行列 AA を使って、実数分解を行います。対角要素には、1行1列と2行2列のブロックを含んでいます。

AA が三角の場合、一般化固有値を構成するalpha と beta は、つぎのように表せる AABB の対角要素です。

AA が、準対角の場合、実際の固有値を得る2行2列の一般化問題を解く必要があります。

複素数行列 AB に対して、AABB は、常に三角形です。

アルゴリズム

実数のAB に対する実数 QZ に対して、eig は、LAPACK の DGGES ルーチンを使います。5番目の出力引数 V を設定すると、eig は、DTGEVC も使います。

実数、または、複素数の AB に関する複素数 QZ に対して、eig は、LAPACK の ZGGES ルーチンを使います。5番目の出力引数 V を設定すると、eig は、ZTGEVC も使います。

参考

eig

参考文献

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.


 quiver3 rand