$\definecolor{mxcolor}{RGB}{102,41,71}\def\mxcol#1{{\color{mxcolor}#1}}\newcommand{\mt}[1]{\mxcol{\bf #1}}\newcommand{\rv}[1]{\opcol{\left({\color{black}\begin{array}{@{\,}c@{\,}}#1\end{array}}\right)}}$ $\newcommand{\mtx}[2][cc]{\opcol{\left({\color{black}\begin{array}{@{\,}#1@{\,}}#2\end{array}}\right)}}\def\ope#1{\opcol{\hat{#1}}}$ $\definecolor{psicolor}{RGB}{153,46,138}\definecolor{rcolor}{RGB}{204,82,122}\definecolor{thetacolor}{RGB}{255,0,38}\definecolor{phicolor}{RGB}{153,62,23}\definecolor{scolor}{RGB}{178,107,107}$ $\def\coldr{\rcol{\mathrm dr}}\def\coldvecx{\xcol{\mathrm d\vec x}}\def\intdx{\opcol{\int \mathrm dx}}\def\E{\mathrm e}\def\I{\mathrm i}\definecolor{opcol}{RGB}{149,139,0}\definecolor{hai}{RGB}{137,137,137}\definecolor{tcol}{RGB}{166,54,109}\definecolor{kuro}{RGB}{0,0,0}\definecolor{xcolor}{RGB}{169,103,49}\def\opcol#1{{\color{opcol}#1}}\def\ddx{\opcol{{\mathrm d\over \mathrm dx}}}\def\ddt{\opcol{{\mathrm d\over \mathrm dt}}}\def\scol#1{\color{scolor}#1}\def\xcol#1{{\color{xcolor}#1}}\definecolor{ycolor}{RGB}{217,61,137}\def\ycol#1{{\color{ycolor}#1}}\def\haiiro#1{{\color{hai}#1}}\def\kuro#1{{\color{kuro}#1}}\def\kakko#1{\haiiro{\left(\kuro{#1}\right)}}\def\coldx{{\color{xcolor}\mathrm dx}}\def\Odr{{\cal O}}\definecolor{ncol}{RGB}{217,51,43}\def\ncol#1{{\color{ncol}#1}}\definecolor{zcolor}{RGB}{196,77,132}\def\zcol#1{{\color{zcolor}#1}}\definecolor{thetacol}{RGB}{230,0,39}\def\thetacol#1{{\color{thetacol}#1}}\def\diff{\mathrm d}\def\kidb{\opcol{\mathrm db}}\def\kidx{\opcol{\mathrm dx}}\def\coldy{\ycol{\mathrm dy}}\def\coldtheta{\thetacol{\mathrm d\theta}}\def\ddtheta{\opcol{{\mathrm d\over\mathrm d\theta}}}\def\tcol#1{{\color{tcol}#1}}\def\coldt{\tcol{\mathrm dt}}\def\kidtheta{\opcol{\mathrm d\theta}}\def\dtwodx{\opcol{\diff^2\over\diff x^2}}\def\kokode#1{~~~~~~~{↓#1}}\def\goverbrace{\overbrace}\def\coldz{\zcol{\mathrm dz}}\def\kidt{\opcol{\mathrm dt}}\definecolor{rcol}{RGB}{206,114,108}\def\rcol#1{{\color{rcol}#1}}\def\coldtwox{\xcol{\mathrm d^2x}}\def\PDC#1#2#3{{\opcol{\left(\opcol{{\partial \kuro{#1}\over \partial #2}}\right)}}_{#3}}\def\PDIC#1#2#3{{\opcol{\left(\opcol{\partial \over \partial #2}\kuro{#1}\right)}}_{#3}}\def\PD#1#2{{\opcol{\partial \kuro{#1}\over \partial #2}}}\def\PPDC#1#2#3{{\opcol{\left(\opcol{\partial^2 \kuro{#1}\over \partial #2^2}\right)}}_{#3}}\def\PPDD#1#2#3{{\opcol{{\partial^2 \kuro{#1}\over \partial #2\partial #3}}}}\def\PPD#1#2{{\opcol{{\partial^2 \kuro{#1}\over \partial #2^2}}}}\def\kidy{\opcol{\diff y}}\def\ve{\vec{\mathbf e}}\def\colvecx{\xcol{\vec x}}\definecolor{usuopcolor}{RGB}{237,234,203}\def\usuopcol#1{\color{usuopcolor}#1}\def\vgrad#1{{\usuopcol{\overrightarrow{\opcol{\rm grad}~\kuro{#1}}}}}\def\dX{\rcol{\mathrm dX}}\def\dY{\thetacol{\mathrm dY}}\def\opdf{\opcol{\mathrm df}}\def\coldf{\tcol{\mathrm df}}\def\dtwof{\opcol{\mathrm d^2f}}\def\murasakidb{\zcol{\mathrm d b}}\def\ao{\ycol}\def\aodV{\ycol{\diff V}}\def\aka{\xcol}\def\akadm{\xcol{\diff m}}\def\gunderbrace{\underbrace}\def\ovalbox{\boxed}\def\kesi#1{\underbrace{#1}_{0}}\newcommand\dum[2][xcolor]{{\color{#1}{\scriptstyle #2}}}\newcommand\dml[2][xcolor]{\,\haiiro{\!\lceil}{\!\color{#1}#2}}\newcommand\dmr[2][xcolor]{{\color{#1}#2}\!\haiiro{\rfloor}\!}}$ $\def\tatevec#1{\boxed{#1}}\def\allc#1{\haiiro{\{}#1\haiiro{\}}}$ $\def\nagatatevec#1{\tatevec{\begin{array}{c}\\#1\\ \\\end{array}}}$ $\def\yokovec#1{\boxed{~~\left(#1\right)^t~~}}$ $\def\yokovectnashi#1{\boxed{#1}}$ $\def\nagayokovec#1{\boxed{~~~~~\left(#1\right)^t~~~~~}}$

「物理数学Ⅰ」2021年度講義録第5回

オンラインオフィスアワーに関するお知らせ

 ちょっと別の予定が入ったことと、あまり利用者がいないということで、この授業のオンラインオフィスアワーの時間を変えます。

 木曜と金曜の昼の11:50~12:50までにします。

 他の授業と合同ですが、質問や相談などがある人は来てください(zoomのアドレスなどはwebClassを見てください)。

 また、開いて欲しいときはメールなどで連絡をくれれば可能な時間に対応します。

 あと、webClassの掲示板は質問に使ってくれて構いません。

前回の感想・コメントシートから

 前回の授業の「感想・コメント」の欄に書かれたことと、それに対する返答は、

にありますので見ておいてください。

 では、今回からいよいよ行列に入ります。

行列が表すもの

1次式による計算を行列で表現する

 最初に考えた、小学校の算数のような問題

 1個100円のりんごと1個60円のバナナがある。たかしくんは600円持っている。これを全部使って、りんごとバナナを合わせて8個買いたい。それぞれ何個買えばよいか。

を(りんごを$\xcol{A}$個とバナナを$\ycol{B}$個買うと考えて) \begin{align} \begin{cases}\begin{array}{r@{}l@{}c@{}r@{}l} 100&\xcol{A}&+&60\ycol{B}&=600\\ &\xcol{A}&+&\ycol{B}&=8 \end{array} \end{cases} \end{align} という連立1次方程式と考えたことを思い出そう。この問題はたとえば1個30円のさくらんぼも買うことにすれば \begin{align} \begin{cases}\begin{array}{r@{}l@{}c@{}r@{}c@{}r@{}l@{}l} 100&\xcol{A}&+&60\ycol{B}&+&30\zcol{C}&=600\\ &\xcol{A}&+&\ycol{B}&+&\zcol{C}&=8 \end{array} \end{cases} \end{align} のように変わる(さくらんぼの数を$\zcol{C}$にした)。ちなみにこの問題は「解が一意でない」のだが、そうなることはどのように判定できるのか、というのも今後考えていきたい点の一つである。

 さらにりんご、バナナ、さくらんぼがそれぞれ40g,80g,10gの重さがあるとして全部で1kg買うのだとすれば、 \begin{align} \begin{cases}\begin{array}{r@{}l@{}c@{}r@{}c@{}r@{}l@{}l} 100&\xcol{A}&+&60\ycol{B}&+&30\zcol{C}&=600\\ &\xcol{A}&+&\ycol{B}&+&\zcol{C}&=8\\ 40&\xcol{A}&+&80\ycol{B}&+&10\zcol{C}&=1000 \end{array} \end{cases} \end{align} と問題が変わるだろう。これらの問題はすべて1次式で表現できている。これら三つの式をそれぞれ、 \begin{align} \mtx[cc]{100&60\\1&1}\mtx[c]{\xcol{A}\\\ycol{B}}&=\mtx[c]{600\\8},\\ \mtx[ccc]{100&60&30\\1&1&1}\mtx[c]{\xcol{A}\\\ycol{B}\\\zcol{C}}&=\mtx[c]{600\\8},\\ \mtx[ccc]{100&60&30\\1&1&1\\40&80&10}\mtx[c]{\xcol{A}\\\ycol{B}\\\zcol{C}}&=\mtx[c]{600\\8\\1000} \end{align} と書いてしまうのが行列による表現である。

 行列による計算はベクトルの内積の計算の繰り返しになっている。たとえば上の最後の式は、 \begin{align} \mtx[ccc]{100&60&30}\mtx[c]{\xcol{A}\\\ycol{B}\\\zcol{C}}=&600,\\ \mtx[ccc]{1&1&1}\mtx[c]{\xcol{A}\\\ycol{B}\\\zcol{C}}=&8,\\ \mtx[ccc]{40&80&10}\mtx[c]{\xcol{A}\\\ycol{B}\\\zcol{C}}=&1000 \end{align} という三つの「行ベクトルと列ベクトルの内積を取る」という計算を一つの式で表現していると見ることもできる。

 こういう説明を聞いていると、「簡単すぎてつまらない」と思うかもしれないが、それはもちろん「導入」の段階だからである。行列を使うことの意義は(前にも述べたように)$\boxed{操作}\times\tatevec{入力}=\tatevec{出力}$のように、式の上で「入力」「操作」「出力」が分離されてくるということにある。上の例では入力がりんごだったり、出力が金額だったりするが、もっと複雑な量になっても、ここで考えたような計算が使える場合がある。

 なんらかの「入力」から入力に対応した一つの「出力」を得ることを数学では一般的に「写像」という。物理現象の多くが、この「操作」の部分に対応する。たとえばある物理的状態があるとする。その状態に「平行移動」「回転」のような変換を行ったり、「時間発展(ある物理的状態の「現在」から「未来」の状態を得る)」させたりする「操作」は、実は「線形写像」として表現できる。解析力学や量子力学という分野では、まさにこの考え方を使う。

 ってことは物理的状態ってのは一種のベクトルなのである。この後、ベクトルという言葉の意味をぐっと広げる。もはや「向きと大きさのある矢印」のようなものではないものに対しても線形代数の考え方が使えるのだ。

 次項で示すように、線形写像だということは実は「行列で書ける」ということなのである。

量子力学の基礎方程式であるSchrödinger方程式はまさに、$\boxed{操作}\times\tatevec{入力}=\tatevec{出力}$のような式なのだが、この$\boxed{操作}$も(微分演算子なのだが)一種の行列と考えることができる。

 行列で書くことの「御利益」は「計算」に対応する部分の一箇所への集中である。後でじっくりやるが、我々はこの行列を見ることで「この問題の解は一意じゃない」「この問題には解がない」などを判定できる(それが線形代数の使い途の一つである)。

 このあたりの説明ビデオは↓

行列による線形写像

 行列を使って表現できるのは、次に述べる「線形写像(linear mapping)」(「線形変換(linear transformation)」または「1次変換」と呼ぶこともある)である。

 写像を記号で表現するとき、「ある集合$X$から別の集合$Y$への写像である」ことは「$X\to Y$」のように表し、「ある要素$x$を別の要素$y$に写像する」ことは「$x\mapsto y$」と表現する。たとえば「実数を2倍する」という写像は、「実数から実数への写像である」と表現したいなら ${\mathbb R}\to{\mathbb R}$と書く。「$x$を$2x$に写す写像である」と表現したいなら、$x\mapsto 2x$と書く。
線形写像の定義

 ある写像$\kuro{X\mapsto T\kakko{X}}$が、線形結合を取ってから写像しても、写像してから同じ係数で線形結合を取っても結果が同じ、すなわち \begin{align} T\kakko{\alpha_1 \xcol{X_1}+\alpha_2\ycol{X_2}}=\alpha_1 T\kakko{\xcol{X_1}}+\alpha_2 T\kakko{\ycol{X_2}}\label{linearmapping} \end{align} を満たすとき「$T\kakko{X}$は線形写像である」と言う(ただし、$\alpha_1,\alpha_2$はスカラー量)。

 この条件は、$T\kakko{\xcol{X_1}+\ycol{X_2}}=T\kakko{\xcol{X_1}}+T\kakko{\ycol{X_2}}$と$T\kakko{\alpha_1\xcol{X_1}}=\alpha_1 T\kakko{\xcol{X_1}}$に分けて表記することも多い。これら二つは上の式で$\alpha_1=\alpha_2=1$と置いたものと、${\alpha_2}=0$と置いたものである。

 上記をシンプルに「$T$は線形である」と表現することもある。

 「線形写像である」ということは、かなり大きい制約である。世界に沢山ある「写像」のうち、一部に過ぎない。しかしそれでも重要なのは、「線形写像に限っても十分に応用範囲が広い」ということだ(特に物理では量子力学が線形写像を使いまくる)。

以下の写像は、線形写像ではない。どうして線形写像でないのか説明せよ。
(1) $x\mapsto ax+b$ (2) $x\mapsto x^2$ (3)$\vec v\mapsto |\vec v|$
答えを考えてからここをクリック
(1)$a(x_1)+b$は$ax_1+b+ax_2+b$と一致しない($b$が余る)。
(2)$\alpha x$は$\alpha x^2$ではなく$\alpha^2x^2$に写像される。
(3)$|\vec a+\vec b|$は$|\vec a|+|\vec b|$ではない。

 線形写像の定義の$\xcol{X_1},\ycol{X_2}$に入るもの(写像元)は実数は複素数はもとより、ベクトルであってもよい。ベクトル$\to$ベクトルの線形写像は常に行列で表現できることを以下で示そう。

 一般のベクトルは基底を使って$\xcol{\vec x}=\xcol{x_1}\vec v_1+\xcol{x_2}\vec v_2+\cdots +\xcol{x_m}\vec v_m$のように表せる。写像先の方も(別の基底を使って)$\ycol{\vec y}=y_1\vec w_1+\ycol{y_2}\vec w_2+\cdots +\ycol{y_m}\vec w_m$と表せるベクトルであるとしよう。つまり \begin{align} \ycol{\vec y}=T\kakko{\xcol{\vec x}}=T\kakko{\xcol{x_1}\vec v_1+\xcol{x_2}\vec v_2+\cdots +\xcol{x_m}\vec v_m} \end{align} だが、$T$は線形なので、 \begin{align} \ycol{\vec y}= T\kakko{\vec v_1}\xcol{x_1}+ T\kakko{\vec v_2}\xcol{x_2}+\cdots +T\kakko{\vec v_m}\xcol{x_m} \end{align} のように「写像してから線型結合」の形に書き直すことができる。上の式の中で、$\ycol{\vec y}$と$\allc{T\kakko{\vec v_*}}$はベクトルなので、それらを成分表示で書くことにすれば、 \begin{align} \goverbrace{\mtx[c]{\ycol{y_1}\\\ycol{y_2}\\\vdots\\\ycol{y_n}}}^{\ycol{\vec y}}= \goverbrace{\mtx[c]{a_{11}\\a_{21}\\\vdots\\a_{n1}}}^{T\kakko{\vec v_1}}\xcol{x_1} + \goverbrace{\mtx[c]{a_{12}\\a_{22}\\\vdots\\a_{n2}}}^{T\kakko{\vec v_2}}\xcol{x_2} +\cdots + \goverbrace{\mtx[c]{a_{1m}\\a_{2m}\\\vdots\\a_{nm}}}^{T\kakko{\vec v_m}}\xcol{x_m} \label{yvx} \end{align} となる($T\kakko{\vec v_j}$の$i$番目の成分を$a_{ij}$と書くことにした)。

 上の式を、(操作にあたる部分を左側にまとめて) \begin{align} \mtx[c]{\ycol{y_1}\\\ycol{y_2}\\\vdots\\\ycol{y_n}} =\mtx[cccc]{ 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} } \mtx[c]{\xcol{x_1}\\\xcol{x_2}\\\vdots\\\xcol{x_m}}\label{Anmmul} \end{align} と書いてしまうというのが「線形写像の行列による表現」である。

 $j$番目の成分だけが1で残りの成分は0のベクトル$\mtx[c]{0\\[-2mm]0\\[-2mm]\vdots\\[-2mm]1\\[-1mm]\vdots\\[-2mm]0}$を変換すると$\mtx[c]{a_{1j}\\a_{2j}\\\vdots\\a_{nj}}$になるように行列を並べた、と考えてもよい。

 $2\times2$行列なら、行列$\mtx{a&b\\c&d}$を二つの列ベクトル$\mtx[c]{a\\c}$と$\mtx[c]{b\\d}$に分けて、
 行列$\mtx{a&b\\c&d}$は、ベクトル$\mtx[c]{1\\0}$を$\mtx[c]{a\\c}$へ、ベクトル$\mtx[c]{0\\1}$を$\mtx[c]{b\\d}$へと写像する線形写像を表している。

ということになる。

このあたりの説明を、アプリ を使って説明しているビデオが↓
↑このアプリで、「行列による線形写像」のいろいろを体験してください。これでいろんな状況を体験すると、行列や線形写像の意味がよくわかります。
行列の成分と演算

行列の成分と演算

行列とその成分

 行列の成分は

のように二つの添字をつけて「$i$行$j$列の成分」を$a_{ij}$と表すことにする。

この「$i$行$j$列の成分」がちょうど「行列」という並びであることに関しては、日本に生まれた幸運を噛みしめるべきだろう。英語のmatrixはmatとrixに分かれて意味を持ったりしない。

 縦に$n$行、横に$m$列の数字が並んでいる行列を「$n$行$m$列の行列」と呼ぶ。この行列は \begin{align} \mtx[c]{ \yokovectnashi{\begin{array}{cccc}a_{11}&a_{12}&\cdots&a_{1m}\end{array}}\\[2mm] \yokovectnashi{\begin{array}{cccc}a_{21}&a_{22}&\cdots&a_{2m}\end{array}}\\[2mm] \vdots\\ \yokovectnashi{\begin{array}{cccc}a_{n1}&a_{n2}&\cdots&a_{nm}\end{array}} } = \mtx[c]{ \nagayokovec{\vec W_1}\\ \nagayokovec{\vec W_2}\\ \vdots\\ \nagayokovec{\vec W_n} } \end{align} のように、「$m$成分の横ベクトルが$n$行並んでいる」と解釈することも、 \begin{align} \mtx[cccc]{ \tatevec{\begin{array}{c}a_{11}\\a_{21}\\\vdots\\a_{n1} \end{array}}& \tatevec{\begin{array}{c}a_{12}\\a_{22}\\\vdots\\a_{n1} \end{array}}& \cdots& \tatevec{\begin{array}{c}a_{1n}\\a_{22}\\\vdots\\a_{n1} \end{array}} }= \mtx[cccc]{\nagatatevec{\vec V_1}&\nagatatevec{\vec V_2}&\cdots&\nagatatevec{\vec V_m}} \label{tatevecnarabi} \end{align} のように、「$n$成分の縦ベクトルが$m$列並んでいる」と解釈することもできる。

上では、ベクトル$\mtx[cccc]{a_{i1}&a_{i2}&\cdots&a_{im}}$を$(\vec W_i)^t$と略記し、ベクトル$ \mtx[c]{a_{1j}\\a_{2j}\\\vdots\\a_{nj}}$を$\vec V_j$と略記した。つまり、$\vec W_i$は$\mtx[c]{a_{i1}\\a_{i2}\\\vdots\\a_{in}}$である($\vec V_i$と$\vec W_i$では足の付き方が違うことに注意。$\vec W$の方は上の式では転置した形で登場している)。

 こうして分割して考ると、行列の掛け算は \begin{align} \mtx[c]{\ycol{y_1}\\\ycol{y_2}\\\vdots\\\ycol{y_n}}= \mtx[cccc]{\nagatatevec{\vec V_1}&\nagatatevec{\vec V_2}&\cdots&\nagatatevec{\vec V_m}} \mtx[c]{\xcol{x_1}\\\xcol{x_2}\\\vdots\\\xcol{x_m}} = \vec V_1\xcol{x_1} +\vec V_2\xcol{x_2}+\cdots \vec V_m\xcol{x_m} \end{align} のように「$\allc{\vec V_*}$の線形結合」と考えることもできるし、 \begin{align} \mtx[c]{\ycol{y_1}\\\ycol{y_2}\\\vdots\\\ycol{y_n}} = \mtx[c]{ \nagayokovec{\vec W_1}\\ \nagayokovec{\vec W_2}\\ \vdots\\ \nagayokovec{\vec W_n} } \mtx[c]{\xcol{x_1}\\\xcol{x_2}\\\vdots\\\xcol{x_m}} = \mtx[c]{{\vec W_1}\cdot\xcol{\vec x}\\ {\vec W_2}\cdot\xcol{\vec x}\\ \vdots\\ {\vec W_n}\cdot\xcol{\vec x}\\ } \end{align} のように「それぞれの$\allc{\vec W_*}$との内積」と考えることもできる(どちらの見方も重要である)。

行列の演算:$2\times2$行列

連立1次方程式を解く

 このあたりの説明ビデオは↓

 「連立1次方程式を解く」という計算を、一般の行列$\mtx{a&b\\c&d}$の場合で行ってみよう。すなわち、 \begin{eqnarray} \mtx[cc]{a&b\\c&d}\mtx[c]{\xcol{x}\\\ycol{y}}=&\mtx[c]{X\\Y} \end{eqnarray} を解く。まずは先に考えたように、行列を列ベクトルが並んでいるものと考えて、 \begin{align} \mtx[c]{a\\c}\xcol{x}+\mtx[c]{b\\d}\ycol{y}=\mtx[c]{X\\Y} \end{align} と書き直す。まず、「$\xcol{x}$を求めたいから$\ycol{y}$を消したい」と考える。そのためには、$\mtx{d&-b}$との内積を取ればよい(あるいは、$\mtx[c]{b\\d}$との外積を取ればよい)。結果は内積を使う計算なら \begin{align} \mtx{d&-b}\mtx[c]{a\\c}\xcol{x}+\gunderbrace{\mtx{d&-b}\mtx[c]{b\\d}}_{=0}\ycol{y}=\mtx{d&-b}\mtx[c]{X\\Y} \end{align} で、外積を使う計算なら \begin{align} \mtx[c]{b\\d}\times\mtx[c]{a\\c}\xcol{x}+\gunderbrace{\mtx[c]{b\\d}\times\mtx[c]{b\\d}}_{=0}\ycol{y}=\mtx[c]{b\\d}\times\mtx[c]{X\\Y} \end{align} であり、どちらにしても \begin{align} (ad-bc)\xcol{x}= dX-bY \end{align} である。同様に「$\ycol{y}$を求めたいから$\xcol{x}$を消したい」という動機のもと、$\mtx{-c&a}$との内積を取って(あるいは$\mtx[c]{a\\c}$との外積を取って)、 \begin{align} \gunderbrace{\mtx{-c&a}\mtx[c]{a\\c}}_{=0}\xcol{x}+\mtx{-c&a}\mtx[c]{b\\d}\ycol{y}=\mtx{-c&a}\mtx[c]{X\\Y} \end{align} または \begin{align} \gunderbrace{\mtx[c]{a\\c}\times\mtx[c]{a\\c}}_{=0}\xcol{x}+\mtx[c]{a\\c}\times\mtx[c]{b\\d}\ycol{y}=\mtx[c]{a\\c}\times\mtx[c]{X\\Y} \end{align} を得る。今出した二つの式は(まとめやすいので内積の方を使う) \begin{align} (ad-bc)\xcol{x}=&\mtx{d&-b}\mtx[c]{X\\Y}\\ (ad-bc)\ycol{y}=&\mtx{-c&a}\mtx[c]{X\\Y} \end{align} だからまとめて書くと \begin{align} \gunderbrace{(ad-bc)}_{=D}\mtx[c]{\xcol{x}\\\ycol{y}}=&\mtx{d&-b\\-c&a}\mtx[c]{X\\Y} \end{align} となる。

 以上をベクトルの記号を使って$\vec v_1=\mtx[c]{a\\c},\vec v_2=\mtx[c]{b\\d},\vec X=\mtx[c]{X\\Y}$として書くと \begin{align} &元の式& \vec v_1\xcol{x}+\vec v_2\ycol{y}=&\vec X\\ &\vec v_2と外積&\vec v_2\times \vec v_1\xcol{x}+\gunderbrace{\vec v_2\times\vec v_2}_{=\vec 0}\ycol{y}=&\vec v_2\times \vec X\\ &\vec v_1と外積&\gunderbrace{\vec v_1\times \vec v_1}_{=\vec 0}\xcol{x}+\vec v_1\times \vec v_2\ycol{y}=&\vec v_1\times\vec X\\ &まとめて&\vec v_2\times \vec v_1\mtx[c]{\xcol{x}\\ \ycol{y}}=&\mtx[c]{\vec v_2\times \vec X\\\vec v_1\times\vec X} \end{align} と考えてもよい(今2次元なので外積の結果はスカラーであることに注意)。

前回の感想・コメントシートから 逆行列$(2\times2)$

逆行列($2\times2$)

 以上で我々が証明したことは、$ad-bc\neq0$のとき、 \begin{align} \mtx{a&b\\c&d}\mtx[c]{\xcol{x}\\ \ycol{y}}=\mtx[c]{X\\ Y}~~ならば~~ \mtx[c]{\xcol{x}\\ \ycol{y}}={1\over ad-bc}\mtx{d&-b\\ -c &a}\mtx[c]{X\\ Y} \label{gyakunikakeruni} \end{align} ということである。これを$\xcol{x},\ycol{y}$を求める方程式を解くという問題と見るならば、その問題は$ad-bc\neq0$ならば確実に解ける。

 この${1\over ad-bc}\mtx[cc]{d&-b\\-c&a}$を、$\mtx{a&b\\c&d}$の「逆行列(inverse matrix)」と呼ぶ。行列$\mt{A}$の逆行列は$\mt{A^{-1}}$という記号で表現することにする。「$-1$乗」の記号を借用しているが、単なる「逆数」という意味ではないことはもちろんである。本によっては大胆に分数の記号を借用して${1\over \mt{A}}$と書く。これも単なる「割り算」という意味ではない。

 上の計算からわかるように、すべての行列に対応する逆行列があるわけではない。具体的には、$ad-bc=0$だったら上のの右の式は意味がない。逆行列が存在する行列は「正則(regular)である」とか「非特(non-singular)である」とか言う(「逆が取れる(invertible)」という言葉で表すこともある)。

 実数の場合に「$\xcol{x}$を掛ける」という操作を打ち消すのが「$\xcol{x}^{-1}$を掛ける」だったり「$\xcol{x}$で割る」だったりすることと同じ表記を使っている。行列の逆は、実数や複素数の「逆数」とは、似ている点はあるがまったく同じ操作ではない(関数$f$と逆関数$f^{-1}$の関係だってそうだ)ことに注意が必要である。「$\xcol{x}$で割る」という操作は$\xcol{x}=0$のときは実現できなかった。同様に、$\mt{A^{-1}}$という操作は、$\mt{A}$がある条件($2\times2$の場合はすでに述べたように、$ad-bc\neq0$)を満たしてないと実現しない。

 $2\times2$行列の一例を図解しよう。図は$\mtx{4&2\\ 1&3}$という行列(この行列は$\mtx[c]{1\\0}$を$\mtx[c]{4\\1}$に、$\mtx[c]{0\\1}$を$\mtx[c]{1\\3}$に変換する)に対する逆行列を求める過程を示したものだ。

\epsfcenter{0.8}{gyakugyouretsuheimen.pdf}

 まず行列を二つの列ベクトル$\mtx[c]{\rcol{4}\\\rcol{1}}$と$\mtx[c]{\thetacol{2}\\\thetacol{3}}$に分けて考える。$\mtx[c]{\rcol{4}\\\rcol{1}}$に垂直な行ベクトルとして、$\mtx{\rcol{-1}&\rcol{4}}$を、$\mtx[c]{\thetacol{2}\\\thetacol{3}}$に垂直な行ベクトルとして、$\mtx{\thetacol{3}&\thetacol{-2}}$をもってくる。これら二つの行ベクトルを並べて$\mtx{\thetacol{3}&\thetacol{-2}\\\rcol{-1}&\rcol{4}}$を作る。こうして作った行列の掛け算をやってみると、 \begin{align} \mtx{\thetacol{3}&\thetacol{-2}\\\rcol{-1}&\rcol{4}} \mtx[c]{\rcol{4}\\ \rcol{1}} =\mtx[c]{10\\0}{,}~~~~ \mtx{\thetacol{3}&\thetacol{-2}\\\rcol{-1}&\rcol{4}} \mtx[c]{\thetacol{2}\\\thetacol{3}} =\mtx[c]{0\\10} \end{align} となる。よって、求めた行列を10で割った行列${1\over 10} \mtx{\thetacol{3}&\thetacol{-2}\\\rcol{-1}&\rcol{4}}$は、を$\mtx[c]{4\\1}$を$\mtx[c]{1\\0}$に、$\mtx[c]{1\\3}$を$\mtx[c]{0\\1}$に変換する。すなわち、逆行列が求められたことになる。

 さっき使ったアプリ には、逆行列のベクトルを表示する機能がある。その説明ビデオが↓
 逆行列が存在しない場合を、図で考えるとどうなるだろう? 上で考えた「二つの列ベクトル」がどのような状態になっている状況なのか。図解せよ。
(あるいは、アプリで$ad-bc=0$になる行列を作ってみてもよい)。
わかったらここをクリック
逆行列が存在しない場合の行列による線形写像をアプリのアニメーションで見るビデオが↓ 見るとわかるように、逆行列がないときは「面が線に」写像されている。
行列の成分と演算 行列の積

行列の積

 行列は何のためにあるのかについては最初に力説したが、「ベクトル量に対するなんらかの操作」を表すためのものであり、それはたとえば$(\xcol{x},\ycol{y})$から$(\rcol{x'},\thetacol{y'})$への変換が \begin{equation} \mtx[c]{\rcol{x'}\\ \thetacol{y'}}=\goverbrace{\mtx{e&f\\g&h}}^{変換の表現}\mtx[c]{\xcol{x}\\ \ycol{y}}~~~行列を使わずに書けば、\begin{cases} \rcol{x'}=e\xcol{x}+f\ycol{y}\\ \thetacol{y'}=g\xcol{x}+h\ycol{y} \end{cases}\label{xyhenkan} \end{equation} のように表現できる、という形を取る。ここで、続けて$(\rcol{x'},\thetacol{y'})$から$(\zcol{x''},\tcol{y''})$への変換 \begin{equation} \mtx[c]{\zcol{x''}\\ \tcol{y''}}=\goverbrace{\mtx{a&b\\c&d}}^{変換の表現}\mtx[c]{\rcol{x'}\\ \thetacol{y'}}~~~行列を使わずに書けば、\begin{cases} \zcol{x''}=a\rcol{x'}+b\thetacol{y'}\\ \tcol{y''}=c\rcol{x'}+d\thetacol{y'} \end{cases} \end{equation} を行ったとしよう。二つの変換をまとめて書くと \begin{align} \begin{array}{rl} \mtx[c]{\zcol{x''}\\ \tcol{y''}}=&\mtx{a&b\\c&d}\goverbrace{\mtx{e&f\\g&h}\mtx[c]{\xcol{x}\\ \ycol{y}}}^{\mtx[c]{\rcol{x'}\\ \thetacol{y'}}}\\ &\gunderbrace{\phantom{\mtx{a&b\\c&d}\mtx{e&f\\g&h}}}_{二つの変換の表現} \end{array} \end{align} となる。これを行列を使わずに書けば、 \begin{align} \zcol{x''}=&a\goverbrace{(e\xcol{x}+f\ycol{y})}^{\rcol{x'}}+b\goverbrace{(g\xcol{x}+h\ycol{y})}^{\thetacol{y'}}=(ae+bg)\xcol{x}+(af+bh)\ycol{y}\\ \tcol{y''}=&c\goverbrace{(e\xcol{x}+f\ycol{y})}^{\rcol{x'}}+d\goverbrace{(g\xcol{x}+h\ycol{y})}^{\thetacol{y'}}=(ce+dg)\xcol{x}+(cf+dh)\ycol{y} \end{align} となるから、上に「二つの変換」と書いた2種類の行列を次々と掛ける計算は、1個の行列$ \mtx{ae+bg&af+bh\\ce+dg&cf+dh}$を掛けることと同じである。すなわち、 \begin{equation} \mtx{a&b\\c&d}\mtx{e&f\\g&h}= \mtx{ae+bg&af+bh\\ce+dg&cf+dh}\label{defmulmatrix} \end{equation} という等式が成立することにすれば、二つの変換を続けて行うことを、一個の行列を掛けるという一回の計算で済ませることができる。

 このあたりの説明ビデオは↓

 「行列どうしの掛算」として実現するための計算ルールを確認しよう。

 ここで行っている計算は、下の図に示したような、四つの「ベクトルの内積」である。

 行列と行列の積は、

$\mtx{a&b\\c&d}\mtx[c]{e\\g}= \mtx[c]{ae+bg\\cf+dh}$

$\mtx{a&b\\c&d}\mtx[c]{f\\h}= \mtx[c]{af+bh\\cf+dh}$

という二つの行列とベクトルの積を一挙にやっているとみなすこともできる。

 これで「行列と行列の積」が定義されたことになる。行列を$\mt{A}=\mtx{A_{11}&A_{12}\\A_{21}&A_{22}}$のように行番号と列番号の添字をつかって表すならば、 \begin{align} \mt{C}&=\mt{A}\mt{B}=\mtx{ A_{11}B_{11}+A_{12}B_{21}&A_{11}B_{12}+A_{12}B_{22}\\ A_{21}B_{11}+A_{22}B_{21}&A_{21}B_{12}+A_{22}B_{22} }\label{mkakezan}\\ C_{ik}&=\sum_{\dum[xcolor]{j}=1}^2A_{i\dml[xcolor]{j}}B_{\dmr[xcolor]{j}k}\label{CikAijBjk} \end{align} となる。$C_{ik}=\sum_{\dum[xcolor]{j}=1}^2A_{i\dml[xcolor]{j}}B_{\dmr[xcolor]{j}k}$の書き方では、掛算の前にある行列の要素$A_{ij}$の後ろの添字($j$)と後ろにある行列の要素$B_{jk}$の前の添字(やはり$j$)が1から2まで足されている。

 ここで考えたのは$2\times2$行列だが、$\ell\times m$行列と$m\times n$行列の積は \begin{equation} C_{ik}=\sum_{\dum[xcolor]{j}=1}^mA_{i\dml[xcolor]{j}}B_{\dmr[xcolor]{j}k} \end{equation} のように定義する。前の行列の列の数と後ろの行列の行の数が等しくないと掛け算自体が書けない。 \begin{align} \mtx[cccc]{a&b&c&d\\ e&f&g&h}\mtx[ccc]{A&B&C\\ D&E&F\\ G&H&I}=? \end{align} のような計算は定義されてない。

行列の掛算は順番を変えると一般に違う結果になる(一般に$\mt{A}\mt{B}\neq\mt{B}\mt{A}$ )。これを「行列の積は可換ではない」と言う。通常の数の掛算は常に$ab=ba$なので可換である。

 上の式の$A_{i\dum[xcolor]{j}}$と$B_{\dum[xcolor]{j}k}$は行列の一つの要素であり、数である。よって、 \begin{equation} C_{ik}=\sum_{\dum[xcolor]{j}=1}^2A_{i\dml[xcolor]{j}}B_{\dmr[xcolor]{j}k}=\sum_{\dum[xcolor]{j}=1}^2B_{\dml[xcolor]{j}k}A_{i\dmr[xcolor]{j}}\label{ABBAOK} \end{equation} は正しい式である。疑わしいと思う人は、上の式を和記号を使わずに書いた \begin{equation} C_{ik}=A_{i1}B_{1k}+A_{i2}B_{2k}=B_{1k}A_{i1}+B_{2k}A_{i2}\label{ABBAOKtwo} \end{equation} という式を見よう。この式は、何も悪いことをしていないことを確認して欲しい。

 一方、行列の掛け算の順序をひっくり返した$\mt{D}=\mt{B}\mt{A}$という式を成分で書けば \begin{align} D_{ik}=&\sum_{\dum[xcolor]{j}=1}^2B_{i\dml[xcolor]{j}}A_{\dmr[xcolor]{j}k} =B_{i1}A_{1k}+B_{i2}A_{2k} \nonumber\\ =&\sum_{\dum[xcolor]{j}=1}^2A_{\dml[xcolor]{j}k}B_{i\dmr[xcolor]{j}} =A_{1k}B_{i1}+A_{2k}B_{i2} \end{align} である。これは上とは別の式である。

 行列の掛算をどのように行ったかは「走る添字$\dum[xcolor]{j}$」の位置で決っている。だから各要素の積の順番を逆にしても($A_{ij}B_{jk}\to B_{jk}A_{ij}$)、行列の積としての順番は変えてないので、心配無用である。

 なぜわざわざこんなことを書くかというと、ときどき「行列の積は可換ではない」という言葉の上っ面だけを捉えて、行列の積の順番を変えているから間違っている!と言う人がいるからである。

これに限らず、ルールを「なぜそうなのか?」を考えもせず字面だけを見て「これはダメ、あれはOK」と判断してしまうことは大変危険であるからやめた方がよい。「なぜこういうルールにするか」を納得して使おう。

行列と逆行列の積

 前に出てきた行列${1\over ad-bc}\mtx{d&-b\\ -c &a}$が行列$\mtx{a&b\\c&d}$の「逆操作」であることは、 \begin{align} \gunderbrace{{1\over ad-bc}\mtx{d&-b\\-c&a}}_{逆操作} \gunderbrace{ \mtx{a&b\\c&d}}_{操作} ={1\over ad-bc}\mtx{ad-bc&0\\0&ad-bc} =\mtx{1&0\\0&1} \end{align} と具体的に計算することでも確認できる。$\mtx{1&0\\0&1}$という何もしない操作を表す行列(単位行列)を$\mt{I}$と書くと、$\mt{A^{-1}A}=\mt{I}$である。操作の順序をひっくり返した$\mt{AA^{-1}}$も$\mt{AA^{-1}}=\mt{I}$を満たす。

行列の掛け算は一般には逆順にすると答えが変わる(これを「可換ではない」と言う)ので、こうなるには理由がちゃんとある。後で説明しよう。
この項が始まるまでは、「行列とベクトルの積」が定義されていた。「行列とベクトルの積」という計算を2回行なうことと、「行列と行列の積」を行った後で「行列とベクトルの積」を行なうという計算が同じ結果になる(これは広い意味での「結合則」である)ようにしよう、という要請から「行列と行列の積」が定義されたのである。
逆行列$(2\times2)$ 行列の和と差とスカラー倍

行列の和と差とスカラー倍

 行列の掛算この「掛算」は実数の掛算よりはベクトルの内積に似ている掛算だった。が定義できたのだから、足し算やスカラー倍も定義しよう。

 次に行列の和を定義するが、これも考え方は同じで、

$\mt{A}$を$\mtx[c]{\xcol{x}\\\ycol{y}}$に掛けたものと$\mt{B}$を$\mtx[c]{\xcol{x}\\\ycol{y}}$に掛けたものを足す。

$\mt{A}$と$\mt{B}$を足した後に$\mtx[c]{\xcol{x}\\\ycol{y}}$に掛ける。

とが一致するように、「$\mt{A}$と$\mt{B}$を足す」という演算を定義する。どう定義すればそうなるのかは非常に単純なことで、行列$\mt{A}=\mtx{A_{11}&A_{12}\\A_{21}&A_{22}}$と行列$\mt{B}=\mtx[ccc]{B_{11}&B_{12}\\B_{21}&B_{22}}$の和を、それぞれの成分どうしの和 \begin{equation} \mt{A}+\mt{B}=\mtx{ A_{11}&A_{12}\\ A_{21}&A_{22}\\ } +\mtx{ B_{11}&B_{12}\\ B_{21}&B_{22}\\ } =\mtx[ccc]{ A_{11}+B_{11}&A_{12}+B_{12}\\ A_{21}+B_{21}&A_{22}+B_{22}\\ } \end{equation} で定義すればよい(これでOKなことはすぐに確認できるから、気になる人はやってみること)。

 新しい行列$\mt{A}+\mt{B}$を$\mt{C}$と書いて、その成分を$C_{ij}$とすれば、これは成分ごとの足し算の結果だから \begin{equation} C_{ij}=A_{ij}+B_{ij} \end{equation} と書くことができる。 引算は同様に \begin{equation} \mt{A}-\mt{B}=\mtx{ A_{11}&A_{12}\\ A_{21}&A_{22} } -\mtx{ B_{11}&B_{12}\\ B_{21}&B_{22}\\ } =\mtx[cc]{ A_{11}-B_{11}&A_{12}-B_{12}\\ A_{21}-B_{21}&A_{22}-B_{22} } \end{equation} または \begin{equation} C_{ij}=A_{ij}-B_{ij} \end{equation} のように成分どうしの差である(こうしておけば「行列を掛けてから引き算」と「行列の引き算をやってから掛ける」の答えが一致する)。

 同様にスカラー倍は、 \begin{align} \mt{A}=\mtx{ A_{11}&A_{12}\\A_{21}&A_{22}}~~のとき、~~~ \lambda\mt{A}=\mtx{ \lambda A_{11}&\lambda A_{12}\\\lambda A_{21}&\lambda A_{22}} \end{align} と定義される。上で定義した差は「$-1$倍してから足す」という計算になっている(実数や複素数の場合となんら変わりはない)。

 以上で定義した加法とスカラー倍は、以下の法則を満たす。

行列の加算とスカラー倍に関する定理

\begin{equation} \begin{array}{rl} 交換法則:&\mt{A}+\mt{B}=\mt{B}+\mt{A}\\ 結合法則:&(\mt{A}+\mt{B})+\mt{C}=\mt{A}+(\mt{B}+\mt{C})\\ スカラー積の結合法則:&\alpha(\beta\mt{A})=(\alpha\beta)\mt{A}\\ 行列の和の分配法則:&\alpha(\mt{A}+\mt{B})=\alpha\mt{A}+\alpha\mt{B}\\ スカラー和の分配法則:&(\alpha+\beta)\mt{A}=\alpha\mt{A}+\beta\mt{A} \end{array} \end{equation}

 以上はベクトル演算で成り立つ式とほぼ同じである。$m\times n$行列を「$mn$個の数が並んでいるもの」と捉えれば、それは納得できる。

 以上で第5回の授業は終わりです。webClassに行って、アンケートに答えてください。

 簡単なクイズとして、

逆行列がない行列は「面を線に写像する」と述べましたが、実は「面を点に写像する行列」(もちろんこれにも逆行列はない)があります。どんな行列でしょう??

というのを出してますから、それにも答えてください。

物理数学I webclass

この感想・コメントシートに書かれたことについては、代表的なものに対しては次のページで返答します。

 なお、webClassに情報を載せていますが、木と金の11:50〜12:50の間、オンラインオフィスアワーとしてzoomを開いてます。質問や相談などがある人は来て話してください。

なお、テキストのPDF版はこちらです。
行列の積 受講者の感想・コメント

受講者の感想・コメント

 webclassでのアンケートによる、感想・コメントなどをここに記します。

 青字は受講者からの声、赤字は前野よりの返答です。

 主なもの、代表的なもののみについて記し、回答しています。

今回の授業では行列の演算の仕方や法則、線形写像について学びました。また、自分は逆行列はあの式になるっていうのを暗記していたのですが、今回の授業でなぜあの式になるのかを確認することが出来ました。自分はまだ行列を使った演算に取り組んだ経験が浅いのでしっかり行列の演算の仕方や式を理解し使えるようにしていきたいと思いました。
何事も「どうしてそうなる?」を理解することが基本なので、そこを押さえたうえで、計算の練習をしていきましょう。
アプリで視覚的に理解できるのはやっぱりいいなと思いました。数式で理解するのも大事だが、こういう直感的な理解につながるものがあると記憶にも残りやすくてありがたいです。
視覚的イメージは大事ですね。
逆行列の求めるとき公式に代入して今まで計算していたが、実際に2行2列の逆行列の公式を導出してみるとなるほど!と思った。改めて学習できたので良かった。
これから使っていくことになる数学の理解は「公式に代入」で終わらせては駄目です。今後、どんどん応用していくことになるのだから、基本を「公式だから」で済ませていると先で必ず行き詰まります。
写像を説明できないことが分かったのでしっかりと復習をしたい。それ以外はきちんと理解できているのではないかと感じたので練習して身に着けたい。
写像というのはすごく基礎的なところなので、難しく考えずに理解していきましょう。
いちいち写像が線形写像かどうか確認しなければならないところを行列であれば、ベクト→ベクトルの線形写像を常に表現出来たり、それを利用して二つの変換を一個の行列で表せたりと、今回の講義で行列が便利だというのはなるほどこういうことなのかと実感した。
実用的な場合としては、使うべき物理現象を見れば「これは線形な現象だな」と見えてきます。それがわかれば、行列や線形代数の出番となるわけです。
符号に気を付けないといけない場所があったので、気を付けるように心がける
どこかな? まぁもちろん気をつけましょう。
行列の操作によって別のものに変換されるという見方は線形代数を楽しくさせるなと思った。コンピュータの座標も行列で制御されてると聞いたことがあるが、画像の縮小などの身近なイメージで線形代数を理解できそう。
写像ってのは結局、「なにか」から「なにか」への変換なのです。
物理においてよく固有値などを扱うため逆行列は大切な考え方だと思い今回の授業では逆行列についてよく学べたため大変よかったです。 逆行列と言えば最近C言語を授業で習い始め行列式、逆行列を出すようなプログラムを作りたいと思っていたのですが、行列式をどう計算すれば良いか分からずに悩んでます(今は余因子展開で頑張ろうとしています)。 前野先生はどの様にしてプログラムを組みましたか?良かったらアドバイスお願いします。
私のプログラムは2×2や3×3だけなので、プログラムでも、普通に式をそのまま書いてます。テクニックが必要になるのはもっと要素が多いときとかですね。
今回の講義では、行列の基本的なことについて学びましたが、行列とベクトルの積を二回行うことと、行列とベクトルの積を行った後で行列とベクトルの積を行うという計算がわかりませんでした。
具体的に自分で数字を入れて計算してみましょう。感覚がつかめると思います。
いつも逆行列にはよくお世話になってて、より逆行列について知れて良かったと思いました。特に逆行列が面を線に移す写像と言うのに感動しました。 物理ではよく固有値などを扱ったりするので逆行列を使えるありがたみを最近感じています。なので逆行列を使った人に感謝です。というより線形代数を考えた人に感謝です。ありがとうございます。
「面を線に移す写像」は「逆行列がない行列による写像」ですね。線形代数に感謝は、同感です。
今までモヤモヤしていたものが解決したように感じます。逆行列の仕組みを今まで考えることもなく暗記していましたが今回、根本から理解することができました。また逆行列ではない条件をアプリによってより簡単に見分けることができるようになりました。やはり、図で確認すると、理解度に大きな差があるように感じます。
何事もイメージは大事なので、アプリがないときも自分でイメージを作るようにしていってください。
質問等 行列は線形性を持っており普段自分達がよく使っている数ベクトルと少し似た性質を持っておりますが(今回までで習った行列の成り立ちを考えると納得)、行列はベクトル空間に入りますか? また、テンソルと言う言葉をよく見るのですがテンソル=行列ではなくテンソルと言うものは行列の形式で表現することが出来ると言う解釈でよろしいですか?
ベクトル空間の話は後でやりますが、行列の集合はベクトル空間になります。テンソルは添字が任意の数(行列なら二つ)なので、その点だけでも行列よりも広いものになります。また、物理で「テンソル」というときは、座標変換に対する変化が決まっていることが多いです(単に数を並べただけではテンソルにならない)。
動画や解説を見て分かったと思っていたのですが、上の問一を解こうとして全然解けなかったのがショックでした。全体的にまだぼんやりしていて、具体的に何がわからないのかがわからないというまずい状態なので、これまでの講義をもう一回振り返ってしっかり理解できるようにしたいと思います。
ぜひ振り返って勉強してみてください。
行列の和と差とスカラー倍