【行列の基礎】成分:ベクトル、行列の積、トレースTr、内積


 行列やベクトルをその i 行、j 列成分( (i,j) 成分)で表すことがある。たとえば、n\times m 行列 A について

    \begin{eqnarray*} A=\left( \begin{array}{c c c c c} a_{11}&a_{12}&\cdots&a_{1m}\\ a_{21}&a_{22}&\cdots&a_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{nm} \end{array} \right) \end{eqnarray*}

と書かずに、 A=(a_{ij}) とだけ書く。数式の見かけがすっきりするためよく使われ、いくつかの関係式の証明にも便利である。ここでは、ベクトルや行列を単に成分で書いて、行列の積などについてまとめておく。


成分で表示

 考えるベクトルの成分 v_i や行列の成分 a_{ij} は複素数 \in {\mathcal C} とする。実数の成分を考える場合は複素共役をとるときに注意すれば良い。 * {\bf v} など太字はベクトルを表す。


n次ベクトル

 n 次の(縦)ベクトルは

    \begin{eqnarray*} {\bf v}=\left( \begin{array}{c} v_1\\v_2\\\vdots\\v_n \end{array} \right) \end{eqnarray*}

である。このベクトルを

    \begin{eqnarray*} {\bf v}=(v_i) \end{eqnarray*}

と略記する。


n×m行列

n\times m 行列

    \begin{eqnarray*} A=\left( \begin{array}{c c c c c} a_{11}&a_{12}&\cdots&a_{1m}\\ a_{21}&a_{22}&\cdots&a_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{nm} \end{array} \right) \end{eqnarray*}

について、

    \begin{eqnarray*} A=(a_{ij}) \end{eqnarray*}

と略記する。


行列を列ベクトルで表示

 上の行列は

    \begin{eqnarray*} {\bf a}^{(1)}= \left( \begin{array}{c} a_{11}\\a_{21}\\\vdots\\v_{n1} \end{array} \right),\, {\bf a}^{(2)}= \left( \begin{array}{c} a_{12}\\a_{22}\\\vdots\\v_{n2} \end{array} \right),\cdots\, {\bf a}^{(n)}= \left( \begin{array}{c} a_{1n}\\a_{2n}\\\vdots\\v_{nm} \end{array} \right) \end{eqnarray*}

を並べて

    \begin{eqnarray*} A=\left( \begin{array}{c c c c c} a_{11}&a_{12}&\cdots&a_{1m}\\ a_{21}&a_{22}&\cdots&a_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{nm} \end{array} \right)= ({\bf a}^{(1)},\,{\bf a}^{(2)}\,\cdots\,{\bf a}^{(n)}) \end{eqnarray*}

と書ける。これより、

    \begin{eqnarray*} A_{ij}\equiv a_{ij}=a^{(i)}_j \end{eqnarray*}

である(a^{(i)}_j は列ベクトル {\bf a}^{(i)}j 成分)。


重要な関係式と成分表示

行列の和の成分

 n\times m 行列 A,B に対して、C=A+B もまた n\times m 行列になる。

    \begin{eqnarray*} C=A+B&=& \left( \begin{array}{c c c c c} a_{11}&a_{12}&\cdots&a_{1m}\\ a_{21}&a_{22}&\cdots&a_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{nm} \end{array} \right)+ \left( \begin{array}{c c c c c} b_{11}&b_{12}&\cdots&b_{1m}\\ b_{21}&b_{22}&\cdots&b_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ b_{n1}&b_{n2}&\cdots&b_{nm} \end{array} \right)\\ &=& \left(\begin{array}{c c c c c} a_{11}+b_{11}&a_{12}+b_{12}&\cdots&a_{1m}+b_{1m}\\ a_{21}+b_{21}&a_{22}+b_{22}&\cdots&a_{2m}+b_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}+b_{n1}&a_{n2}+b_{n2}&\cdots&a_{nm}+b_{nm}\\ \end{array} \right)\\ &=& \left( \begin{array}{c c c c c} c_{11}&c_{12}&\cdots&c_{1m}\\ c_{21}&c_{22}&\cdots&c_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ c_{n1}&c_{n2}&\cdots&c_{nm} \end{array} \right) \end{eqnarray*}

である。これを成分で書くと、

    \begin{eqnarray*} C=A+B&=&(a_{ij})+(b_{ij})\\ &=&(a_{ij}+b_{ij})\\ &=&(c_{ij}) \end{eqnarray*}


行列の積の成分

 n\times \textcolor{blue}{k} 行列 A\textcolor{blue}{k}\times m 行列 B との積 C=AB を考える。Cn\times m 行列になる。

    \begin{eqnarray*} \left( \begin{array}{c c c c c} c_{11}&c_{12}&\cdots&c_{1m}\\ c_{21}&c_{22}&\cdots&c_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ c_{n1}&c_{n2}&\cdots&c_{nm} \end{array} \right) = \left( \begin{array}{c c c c c} a_{11}&a_{12}&\cdots&a_{1\textcolor{blue}{k}}\\ a_{21}&a_{22}&\cdots&a_{2\textcolor{blue}{k}}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{n\textcolor{blue}{k}} \end{array} \right) \left( \begin{array}{c c c c c} b_{11}&b_{12}&\cdots&b_{1m}\\ b_{21}&b_{22}&\cdots&b_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ b_{\textcolor{blue}{k}1}&b_{\textcolor{blue}{k}2}&\cdots&b_{\textcolor{blue}{k}m} \end{array} \right) \end{eqnarray*}

これより、c_{ij} を具体的に書くと

    \begin{eqnarray*} c_{ij}&=&a_{i1}b_{1j}+a_{i2}b_{2j}+\cdots+a_{ik}b_{kj}\\ &=&\sum_{l=1}^k a_{il}b_{lj} \end{eqnarray*}





    \begin{eqnarray*} \left( \begin{array}{c c c c c} c_{11}&\textcolor{red}{c_{12}}&\cdots&c_{1m}\\ c_{21}&c_{22}&\cdots&c_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ c_{n1}&c_{n2}&\cdots&c_{nm} \end{array} \right) = \left( \begin{array}{c c c c c} \textcolor{red}{a_{11}}&\textcolor{red}{a_{12}}&\textcolor{red}{\cdots}& \textcolor{red}{a_{1k}}\\ a_{21}&a_{22}&\cdots&a_{2k}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{nk} \end{array} \right) \left( \begin{array}{c c c c c} b_{11}&\textcolor{red}{b_{12}}&\cdots&b_{1m}\\ b_{21}&\textcolor{red}{b_{22}}&\cdots&b_{2m}\\ \vdots&\textcolor{red}{\vdots}&\ddots&\vdots\\ b_{k1}&\textcolor{red}{b_{k2}}&\cdots&b_{km} \end{array} \right) \end{eqnarray*}


 行列の積の形はよく出てくる。とくに n\times n 行列 A,B の積 C=AB についての以下の形をよく使う。

ポイント


    \begin{eqnarray*} c_{ij}=\sum_{k=1}^{n} a_{ik}b_{kj} \end{eqnarray*}


k\sum を取るためのダミーの変数で、l でも何でも良い。


転置行列

 転置行列は、行列の行と列を入れ替えて作る。n\times m 行列

    \begin{eqnarray*} A=\left( \begin{array}{c c c c c} a_{11}&a_{12}&\cdots&a_{1m}\\ a_{21}&a_{22}&\cdots&a_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{nm} \end{array} \right) \end{eqnarray*}

の転置行列は

    \begin{eqnarray*} A^T=\left( \begin{array}{c c c c c} a_{11}&a_{21}&\cdots&a_{n1}\\ a_{12}&a_{22}&\cdots&a_{n2}\\ \vdots&\vdots&\ddots&\vdots\\ a_{1m}&a_{2m}&\cdots&a_{nm} \end{array} \right) \end{eqnarray*}

となる。成分で表すと

ポイント


    \begin{eqnarray*} \bigl(A^T\bigr)_{ij}\equiv a^T_{ij}=a_{ji} \end{eqnarray*}



行列の積の転置

 n\times k 行列 Ak\times m 行列 B の積 AB (n\times m 行列)について転置を取る。このとき、以下が成り立つ。

ポイント


    \begin{eqnarray*} \bigl(AB\bigr)^T = B^T A^T \end{eqnarray*}




AB の行列の積を成分で表して転置をとる。(j,i) 成分は

    \begin{eqnarray*} (AB)_{ji}=\sum_{l=1}^k a_{jl}b_{li} \end{eqnarray*}



である。よって、

    \begin{eqnarray*} \Bigl[(AB)^T\Bigr]_{ij}&=& (AB)_{ji}\\ &=&\sum_{l=1}^k a_{jl}b_{li}\\ &=&\sum_{l=1}^k b_{li}a_{jl}\\ &=&\sum_{l=1}^k (B^T)_{il}(A^T)_{lj}\\ &=&(B^T A^T)_{ij}\quad\blacksquare \end{eqnarray*}



* a_{jl}b_{li} は複素数の積なので順序を入れ替えても良い。

随伴行列(エルミート共役)

 A随伴行列 A^\dagger (読み:エーダガー)は、A の行列の転置をとり複素共役をとることで作られる。 A の複素共役をとった後に転置をとっても良い。A^\daggerAエルミート共役とも呼ぶ。

 つまり、定義:

ポイント


    \begin{eqnarray*} A^\dagger=(A^T)^*= (A^*)^T \end{eqnarray*}



具体的に書くと、n\times m 行列

    \begin{eqnarray*} A=\left( \begin{array}{c c c c c} a_{11}&a_{12}&\cdots&a_{1m}\\ a_{21}&a_{22}&\cdots&a_{2m}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&a_{nm} \end{array} \right) \end{eqnarray*}

随伴行列

    \begin{eqnarray*} A^\dagger=\left( \begin{array}{c c c c c} a_{11}^*&a_{21}^*&\cdots&a_{n1}^*\\ a_{12}^*&a_{22}^*&\cdots&a_{n2}^*\\ \vdots&\vdots&\ddots&\vdots\\ a_{1m}^*&a_{2m}^*&\cdots&a_{nm}^* \end{array} \right) \end{eqnarray*}

である。成分で書くと、

ポイント


    \begin{eqnarray*} \bigl(A^\dagger\bigr)_{ij}\equiv a^\dagger_{ij}=a^*_{ji} \end{eqnarray*}



とくに A^\dagger=A となる、すなわち随伴行列が自分自身に一致する行列のことをエルミート行列と呼ぶ。


トレース(跡): TrA

 n正方行列 A に対し、対角成分の和をとることを「行列 A のトレースをとる」と言う。

    \begin{eqnarray*} A=\left( \begin{array}{c c c c c} \textcolor{red}{a_{11}}&a_{12}&\cdots&a_{1n}\\ a_{21}&\textcolor{red}{a_{22}}&\cdots&a_{2n}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n1}&a_{n2}&\cdots&\textcolor{red}{a_{nn}} \end{array} \right) \end{eqnarray*}

のトレース {\rm Tr}A

ポイント


    \begin{eqnarray*} {\rm Tr}A&=&a_{11}+a_{22}+\cdots +a_{nn}\\ &=&\sum_{i=1}^{n}a_{ii}=\sum_{i=1}^{n}\sum_{j=1}^{n}a_{ij}\delta_{ij} \end{eqnarray*}


i\sum を取るためのダミーで記号は k などでも良い。\delta_{ij} はクロネッカーのデルタで、

    \begin{eqnarray*} \delta_{ij}=\begin{cases} 1\,(i=j)\\ 0\,(i\neq j) \end{cases} \end{eqnarray*}



行列の積のトレース: Tr(AB)=Tr(BA)

上で見たように、n\times n 行列の A,BC=AB (n\times n 行列)について、

    \begin{eqnarray*} c_{ij}=(AB)_{ij}=\sum_{l=1}^n a_{il}b_{lj} \end{eqnarray*}

であった。したがって、上の {\rm Tr}A を参考に i=j として

    \begin{eqnarray*} {\rm Tr}C&=&\sum_{i=1}^n c_{ii}=\sum_{i=1}^n \Bigl[\sum_{k=1}^n a_{ik}b_{ki} \Bigr]\\ &=&\sum_{i=1}^n \sum_{j=1}^n a_{ij}b_{ji}\quad(k\to j) \end{eqnarray*}

これから、{\rm Tr}C={\rm Tr}(AB)={\rm Tr}(BA) がわかる。

    \begin{eqnarray*} {\rm Tr}(AB)&=& \sum_{i=1}^n \sum_{j=1}^n a_{ij}b_{ji}\\ &=& \sum_{j=1}^n \sum_{i=1}^n b_{ji}a_{ij}\\ &=& \sum_{j=1}^n \Bigl[\sum_{i=1}^n b_{ji}a_{ij}\Bigr]\\ &=& \sum_{j=1}^n (BA)_{jj}\\ &=& {\rm Tr}(BA)\quad \blacksquare \end{eqnarray*}


* 積 a_{ij}b_{ji} は単なる複素数の積なので入れ替えても良い。


ベクトルの内積

n 次元列ベクトル {\bf v},{\bf w} を考える。

    \begin{eqnarray*} {\bf v}=\left( \begin{array}{c} v_1\\v_2\\\vdots\\v_n \end{array} \right),\, {\bf w}=\left( \begin{array}{c} w_1\\w_2\\\vdots\\w_n \end{array} \right) \end{eqnarray*}



実ベクトルの内積

{\bf v},{\bf w} の成分がすべて実数のときを考える(実ベクトル)。 内積 ({\bf v},{\bf w})

    \begin{eqnarray*} ({\bf v},{\bf w})&=&{\bf v}\cdot {\bf w}\\ &=&v_1w_1+v_2w_2+\cdots v_nw_n\\ &=&\sum_{i=1}^n v_i w_i\end{eqnarray*}

また内積は、行ベクトル {\bf v}^T と列ベクトル {\bf v} の積(行列同士の積)でも書ける。行ベクトルは列ベクトルの転置を取ることでできる。

    \begin{eqnarray*} ({\bf v},{\bf w})&=&{\bf v}^T {\bf w}\\ &=& \left( \begin{array}{c c c c } v_1&v_2&\cdots&v_n \end{array} \right) \left( \begin{array}{c} w_1\\w_2\\\vdots\\w_n \end{array} \right)\\ &=&\sum_{i=1}^n v_i w_i \end{eqnarray*}

{\bf v}^Tn\times 1 行列、 {\bf w}1\times n 行列とも考えれる。このとき、{\bf v}^T{\bf w} は行列として扱うので、行列の内積 {\bf v}\cdot {\bf w} のように {\bf v}^T \cdot {\bf w} ではない


複素ベクトルの内積

次にベクトルの成分が複素数の場合を考える。このとき、内積は 内積 ({\bf v},{\bf w})

    \begin{eqnarray*} ({\bf v},{\bf w})&=&{\bf v}^{\textcolor{red}{*}}\cdot {\bf w}\\ &=&v_1^{\textcolor{red}{*}}w_1+v_2^{\textcolor{red}{*}}w_2+\cdots v_n^{\textcolor{red}{*}}w_n\\ &=&\sum_{i=1}^n v_i^{\textcolor{red}{*}} w_i \end{eqnarray*}

である。また、列ベクトル {\bf v}1\times n 行列と見たときの随伴行列 {\bf v}^\dagger=({\bf v}^*)^T=({\bf v}^\dagger)^* を用いて

    \begin{eqnarray*} ({\bf v},{\bf w})&=&{\bf v}^\dagger {\bf w}\\ &=& \left( \begin{array}{c c c c } v_1^*&v_2^*&\cdots&v_n^* \end{array} \right) \left( \begin{array}{c} w_1\\w_2\\\vdots\\w_n \end{array} \right)\\ &=&\sum_{i=1}^n v_i^* w_i \end{eqnarray*}




コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です