MatrixCalc

固有値と固有ベクトルの計算機

50×50 までの正方行列の固有値と固有ベクトルを求めます。根がちょうど固有値になる特性多項式も併せて表示します。

行列 A
: 3
: 3
行列 B
: 3
: 3
演算
結果
演算を選択するとここに結果が表示されます。エラーメッセージもここに表示されます。

ヒント: サイズを調整してください (最大 50×50)。A×B は Aの列数 = Bの行数が必要です。行列式/逆行列/トレース/べき乗は正方行列である必要があります。

React, Tailwind & shadcn/ui. No external math deps. — 日本語

固有値は eig(A)、対応する固有ベクトルは eigvec(A) で求められます。特性多項式は分解タブにあります。

固有値が表すもの

固有ベクトルとは、その変換が回転させない方向のことです。A·v = λ·v ですから、v は伸ばされるか縮められるだけで、その倍率 λ が固有値です。行列が空間に対して行うことはすべて、こうした方向への伸縮の重ね合わせにほかなりません。線形変換をただ適用するのではなく理解したい場面——主成分分析、振動モード、微分方程式の安定性——で固有値が現れるのはそのためです。

すぐにできて、いつでもやる価値のある確認が二つあります。固有値の総和は対角成分の和、すなわちトレースに等しく、固有値の積は行列式に等しくなります。どちらかが合わなければ、どこかで計算を誤っています。

例題

21
12
→ det
2 − λ1
12 − λ
= λ² − 4λ + 3 = (λ − 1)(λ − 3)

固有値は 1 と 3 です。トレースが 4、行列式が 3 で、どちらも合致します。固有ベクトルは (1, −1) と (1, 1) で互いに直交しますが、これは偶然ではありません。この行列は対称行列であり、対称行列の固有値は常に実数、固有ベクトルは常に直交します。

よくある間違い

  • すべての成分から λ を引く。λI は対角成分にしかなく、ほかの成分は変わりません。
  • 零ベクトルを固有ベクトルとして認める。式は満たしますが、定義により除外されています。
  • 固有ベクトルが一意だと思う。0 でない定数倍もすべて固有ベクトルです。比べるべきは数値ではなく方向です。
  • 固有値は必ず実数だと考える。回転行列には変わらない実の方向がひとつもなく、固有値は複素数になります。

よくある質問

固有値と固有ベクトルはどう違いますか。
固有ベクトルは変換が回転させない方向、固有値はその方向が何倍に伸ばされるかを表す数です。両者は必ず対になっています。
固有値が複素数になることはありますか。
あります。実行列でも特性多項式が複素数の根を持つことがあり、平面の回転がその典型例です。
ここに計算過程がないのはなぜですか。
固有値はヤコビ法や QR 法といった反復的な数値解法で求めるからです。その途中の値は丸めによって生じるもので、手で追える推論ではありません。
求めた固有値はどう検算しますか。
総和をトレースと、積を行列式と比べてください。どちらも一致しなければなりません。

詳しい解説をお探しですか。こちらの記事へ: 行列式の求め方

ほかの計算機