GNU Octave で逆行列を計算する手順について書いていきます。Octave 本体は既にインストールされていると仮定します。
逆行列
行列 $A$ が存在するとき、 $AA^{-1} = I$ かつ $A^{-1}A = I$ を満たす $A^{-1}$ を「$A$ の逆行列」と言います。ここでの $I$ は単位行列です。
具体的な例
次のような $A$ があるとします。
A = \left(
\begin{array}{cc}
3 & 4 \\
2 & 16 \\
\end{array}
\right)
これの逆行列を Octave で計算していきます。
(行列 A を宣言する)
octave:1> A = [3 4; 2 16]
A =
3 4
2 16
(pinv() 関数で逆行列を求める)
octave:2> pinv(A)
ans =
0.400000 -0.100000
-0.050000 0.075000
(逆行列を inverseOfA という変数に代入する)
octave:3> inverseOfA = pinv(A)
inverseOfA =
0.400000 -0.100000
-0.050000 0.075000
(A と A の逆行列の積をとり、単位行列になることを確認する)
octave:4> A * inverseOfA
ans =
1.00000 0.00000
-0.00000 1.00000
(A の逆行列と A の積をとり、単位行列になることを確認する: 浮動小数点数の計算誤差が出る)
octave:5> inverseOfA * A
ans =
1.0000e+00 -4.4409e-16
2.7756e-17 1.0000e+00
pinv()
で計算し、$A$ の逆行列は次のように求まることが分かります。
A^{-1} = \left(
\begin{array}{cc}
0.4 & -0.1 \\
-0.05 & 0.075 \\
\end{array}
\right)