2017年4月6日

固有値の検算

概要
  この投稿では固有値を検算する手法と,その証明を示す.固有値計算を実装した場合や,固有値計算で桁落ちが疑われる場合など,計算した固有値が正しい値か確認したいことがある.そこで,下記に示す行列の性質を利用すると,簡易的に固有値が正しい値か検算できる.この性質は一般によく知られている.
固有値の検算手法と証明

    対角化可能な $n$ 次正方行列の行列式は,固有値の積に等しい.
\begin{align*} \mathrm{det}(A)&=\lambda_1\lambda_2\cdots\lambda_n\\ &=\prod_{i=0}^n \lambda_i \end{align*}
[証明]
[1] 特性方程式 (固有方程式) の導出 ($A{\bm x} = \lambda {\bm x}, {\bm x}\neq{\bm 0} \Leftrightarrow \mathrm{det}(A-\lambda I)=0$) の導出
  固有値・固有ベクトルは,$n$ 次正方行列 $A$ に対して, \begin{equation} A{\bm x} = \lambda {\bm x},\ \ {\bm x}\neq{\bm 0} \end{equation} となるような定数 $\lambda$ とベクトル ${\bm x}$ が存在するとき, $\lambda$ を $A$ の固有値,${\bm x}$ を固有値 $\lambda$ に属する $A$ の固有ベクトル,と定義する. 式 $(1)$ を変形して, \begin{equation} (A-\lambda I){\bm x} = 0 \end{equation} とする.ここで,逆行列 $(A-\lambda I)^{-1}$ が存在すると仮定し,式 $(2)$ の両辺に左から掛けると, \begin{align*} (A-\lambda I)^{-1}(A-\lambda I){\bm x} &= (A-\lambda I)^{-1}0\\ \Leftrightarrow \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ I{\bm x} &= 0\\ \Leftrightarrow \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ {\bm x}&={\bm 0} \end{align*} となる.これは,条件 ${\bm x}\neq{\bm 0}$ に反するため,逆行列 $(A-\lambda I)^{-1}$ は存在しない (行列 $(A-\lambda I)$ は正則でない). したがって, \begin{equation} \mathrm{det}(A-\lambda I)=0 \end{equation} となる.(※正則行列の条件は,$\mathrm{det}(A-\lambda I)\neq0$ [5])

[2] $\mathrm{det}(A)=\lambda_1\lambda_2\cdots\lambda_n=\prod_{i=0}^n \lambda_i$ の導出
行列式の定義より,$\mathrm{det}(A-\lambda I)$ は,$\lambda$ に関する $n$ 次多項式となる. 解を $\lambda=\lambda_1, \lambda_2, \cdots, \lambda_n$ とすると, \begin{eqnarray} \mathrm{det}(A-\lambda I)&=&(\lambda_1-\lambda)(\lambda_2-\lambda)\cdots(\lambda_n-\lambda)\\ &=&0\nonumber \end{eqnarray} となる.式 $(4)$ は任意の $\lambda$ について成り立つので,$\lambda=0$ を代入して, \begin{align*} \mathrm{det}(A-0 I)&=(\lambda_1-0)(\lambda_2-0)\cdots(\lambda_n-0)\\ \Leftrightarrow \ \ \ \ \ \ \ \ \ \mathrm{det}(A)&=\lambda_1\lambda_2\cdots\lambda_n\\ &=\prod_{i=0}^n \lambda_i \end{align*}
[付録] 行列式の定義
行列 $A$ を $n$ 次正方行列とし,その成分を,$a_{ij}$ と表すとき,行列式の定義は, \begin{align*} \mathrm{det}(A)=\sum_{\sigma\in S_n}\mathrm{sgn}(\sigma)\prod_{i=0}^n a_{i \sigma(i)} \end{align*}
$S_n$
: $n$ 個の順列すべてで構成された集合
$\sigma(i)$
: $1$ から $n$ の $i$ 番目の順列 (置換)
\begin{align*} \mathrm{sgn}(\sigma)= \left\{ \begin{array}{ll} -1: 奇置換 \\ 1: 偶置換 \end{array} \right. \end{align*} となる [6][7].


    対角化可能な $n$ 次正方行列の m 乗の対角和は,固有値の m 乗和に等しい.
\begin{align*} \mathrm{Tr}(A^m)&={\lambda_1}^m + {\lambda_2}^m + \cdots + {\lambda_n}^m\\ &=\sum_{i=0}^n ({\lambda_i}^m) \end{align*}
[証明]
[1] 行列 $A$ の対角化
固有値の定義, \begin{align*} A{\bm x} = \lambda {\bm x},\ \ {\bm x}\neq{\bm 0} \end{align*} より,固有値を $\lambda=\lambda_1, \lambda_2, \cdots, \lambda_n$ とし,これに対応する固有ベクトルを ${\bm x}={\bm x}_1, {\bm x}_2, \cdots, {\bm x}_n$ とすると, \begin{eqnarray} &A&{\bm x}_1 = \lambda_1{\bm x}_1,\ \ A{\bm x}_2=\lambda_2{\bm x}_2,\ \ \cdots,\ \ A{\bm x}_n=\lambda_n{\bm x}_n\nonumber\\ \Leftrightarrow\ &A&({\bm x}_1, {\bm x}_2, \cdots, {\bm x}_n)=(\lambda_1{\bm x}_1, \lambda_2{\bm x}_2, \cdots, \lambda_n{\bm x}_n)\nonumber\\ \Leftrightarrow\ &A&({\bm x}_1, {\bm x}_2, \cdots, {\bm x}_n)=({\bm x}_1, {\bm x}_2, \cdots, {\bm x}_n) \left( \begin{array}{ccc} \lambda_1 & & & {\LARGE O} \\ & \lambda_2 & & \\ & & \ddots & \\ {\LARGE O} & & & \lambda_n \end{array} \right)\nonumber\\ \Leftrightarrow \ &\ &\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AX=X\Lambda\nonumber\\ \Leftrightarrow \ &\ &\ \ \ \ \ \ \ \ \ \ \ \ \ \ X^{-1}AX=\ \ \ \ \Lambda \end{eqnarray} のように対角化できる.

[2] $\mathrm{Tr}(A^m)={\lambda_1}^m + {\lambda_2}^m + \cdots + {\lambda_n}^m=\sum_{i=0}^n ({\lambda_i}^m)$ の導出
[1] の式 $(5)$ の両辺を $m$ 乗すると, \begin{eqnarray} \Lambda^m&=&(X^{-1}AX)^m \nonumber \\ \Leftrightarrow \ \Lambda^m&=&(X^{-1}AX)(X^{-1}AX)\cdots(X^{-1}AX) \nonumber \\ &=&X^{-1}A^{m}X \end{eqnarray} となる.式 $(6)$ の両辺をトレースすると,トレースの巡回性 ($\mathrm{Tr}(AB)=\mathrm{Tr}(BA)$) により, \begin{align*} \mathrm{Tr}(\Lambda^m)&=\mathrm{Tr}(X^{-1}A^{m}X)\\ \Leftrightarrow\sum_{i=0}^n({\lambda_i}^m)&=\mathrm{Tr}(X^{-1}A^{m}X)\\ &=\mathrm{Tr}((X^{-1})(A^{m}X))\\ &=\mathrm{Tr}((A^{m}X)(X^{-1}))\\ &=\mathrm{Tr}(A^{m}XX^{-1})\\ &=\mathrm{Tr}(A^{m}) \end{align*} となる.

[付録: 1] トレースの定義
行列 $A$ が $n$ 次正方行列で,その成分が $a_{ij}$ で表されるとき,トレースの定義は, \begin{align*} \mathrm{Tr}(A)=\sum_{i=1}^{n}a_{ii} \end{align*} となる.

[付録: 2] トレースの巡回性 ($\mathrm{Tr}(AB)=\mathrm{Tr}(BA)$) の証明
行列 $AB$ の対角成分の和 $\mathrm{Tr}(AB)$ は,$\sum_{i=1}^{n}\sum_{j=1}^{n}a_{ij}b_{ji}$ と表さられるから, \begin{align*} \mathrm{Tr}(AB)&=\sum_{i=1}^{n}\sum_{j=1}^{n}a_{ij}b_{ji}\\ &=\sum_{i=1}^{n}\sum_{j=1}^{n}b_{ji}a_{ij}\\ &=\sum_{j=1}^{n}\sum_{i=1}^{n}b_{ji}a_{ij}\\ &=\mathrm{Tr}(BA) \end{align*} となる.
参考文献

0 件のコメント:

コメントを投稿