バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia-backnumber/
はじめに
前回は二元一次方程式を書き出し、これをベクトルの内積で表現し直した。
さらにそれを行列で表現し直した。
これが最もシンプルな行列の性質を示している。
今回は、前回の式をもう少し砕いて説明しつつ、これを拡張。
登場人物
博識フクロウのフクさん
![指差しフクロウ](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん
![技術者太郎](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
入力、変換、出力
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
前回の連立方程式を行列演算にしたものを再掲する。
\(
\begin{bmatrix}
x\prime \\
y\prime
\end{bmatrix}=
\begin{bmatrix}
a & b \\
c & d
\end{bmatrix}
\begin{bmatrix}
x \\
y
\end{bmatrix}
\)
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
最もシンプルな行列ってところだよねー。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
この構成、それぞれの要素に名前と言うか意味がある。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
どんな?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
こんな感じだな。
\(
\begin{bmatrix}
x\prime \\
y\prime
\end{bmatrix}=
\begin{bmatrix}
a & b \\
c & d
\end{bmatrix}
\begin{bmatrix}
x \\
y
\end{bmatrix}
\)
[出力ベクトル]=[変換行列][入力ベクトル]
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者03アップ.png)
あ、そういう意味か。
確かに入力と変換を経て出力って構成だね。
入力ベクトルと出力ベクトルを行列に拡張
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
上記の入力ベクトルと出力ベクトルを行列に拡張できる。
\(
\begin{bmatrix}
x_1^\prime & x_2^\prime\\
y_1^\prime & y_2^\prime
\end{bmatrix}=
\begin{bmatrix}
a & b \\
c & d
\end{bmatrix}
\begin{bmatrix}
x_1 & x_2 \\
y_1 & y_2
\end{bmatrix}
\)
[出力ベクトル1,出力ベクトル2]=[変換行列][入力ベクトル1,入力ベクトル2]
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」10アップ.png)
なんか全部行列になった・・・。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
考え方は入出力がベクトルの時と一緒だ。
入力の列ベクトルが2つ並んで、2×2の行列になって、
それに伴って出力の列ベクトルも2つになるので、2×2の行列になってるだけだな。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者02アップ.png)
なるほど。
入力、出力に着目すると確かに納得な構成に見えるな。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
ポイントは、全部2×2の行列だけど、
数式の位置によって意味が変わるってところだな。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
あー、そもそも位置によって意味が全然違うってことなのかー。
行列のここら辺が妙なややこしさになってる気がするな―。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/はてなフクロウ.png)
行列を嫌ってる人ってたぶんこの部分をすっ飛ばしてしまってるんじゃないかな?
これが分かっていれば、大半の行列は読めるというか、便利に使えると思うよ。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者02アップ.png)
確かに行列に対する妙なモヤが晴れた気がする。
まとめ
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
まとめだよ。
- 連立方程式を行列演算にしたものを再掲。
- 上記の構成は[出力ベクトル]=[変換行列][入力ベクトル]となる。
- これの入力、出力を列ベクトル2セットにすると2×2の行列になる。
- すべて2×2行列になるが、数式上の位置によって、入力、変換、出力と意味が異なる。
- このルールをすっ飛ばしてる行列嫌いになるかも?
バックナンバーはこちら。
コメント