固有値・固有ベクトル計算

86

 

 固有値と固有ベクトルを計算するExcelシートです。

 実正方行列(10×10まで)を対象に、以下の手順で計算をします。
①元行列Aからハウスホルダー変換によりヘッセンベルグ行列Hを計算
Hを用いて、Wilkinsonシフトを適用したQR分解により固有値λを算出(ただし、主成分分析のように対角成分が同値の場合は、Wilkinsonシフトは未適用)
③求めた固有値から、(AI)およびその逆行列(AI)-1を計算し、逆反復法により固有ベクトルを算出

 なお、複素数解には対応していません。

 

 解説記事は準備中です。

 

 

<参考URL>

【科学技術計算講座ミニ】QR法で行列の固有値を求める②
【科学技術計算講座ミニ】逆反復法で行列の固有ベクトルを求める

固有値と固有ベクトルの計算 (検算に使用)
行列固有値、固有ベクトル計算ツール (検算に使用)

 

 


固有値・固有ベクトル計算Excel

 n次正方行列(現状10次まで)の、固有値と固有ベクトルを算出するExcelシートです。

 正方行列のセルに行列要素を入力してから、計算ボタンを押すことで実行されます。
 (未使用のセルは空白にして下さい)

 固有値は、降順ソートした結果です。
 (チェック用に、元行列の行列式|A|と固有値の総積Πλの値を計算させています)

 固有ベクトルは、正規化スイッチの「なし」/「最大値」/「最終値」設定により正規化されたものが出力されます。
 固有値が重解を持つ場合、対応する固有ベクトルは無数に存在するため、計算上求まった値だけが出力されます(したがって、他の計算サイトの値と異なる場合があります)。

 データ表示ボタンにより、計算途中に作成されるH/Q/R行列なども表示します。

 行列の演算(積、転置、逆行列、行列式、単位行列取得)には、ワークシート関数をフル活用しています。
 マクロソースは公開していますので、ご自由にアレンジしてみて下さい。
 なお、行と列を手動で拡張すれば、より高次の行列の計算も可能です。

★マクロはMicrosoft365で作成していますので、2019以前のバージョンのExcelでは正常に動作しない可能性があるため、ご注意願います。

 

 


2024.11.5 更新 (revA1→revA2)

DL解除コード:a611