今回は、ExcelのMINIVERSE関数とMMULT関数を使用して、連立1次方程式を解いてみたいと思います。
MINIVERSE関数とMMULT関数の詳細は、下記をご覧ください。
連立1次方程式を解く
今回は、例として、下記の3元連立1次方程式(この方程式はただ1つの解を持ちます。)を解いてみたいと思います。
$$\begin{cases}
x+ y-z&=&5 \\
x-2y+2z&=&2 \\
2x-y+2z&=&-1
\end{cases}$$
上記の数式は、
$$ A=\left[ \begin{array}{rrr} 1 & 1& -1\\1 & -2 &2 \\ 2 & -1 & 2\end{array} \right],\quad \boldsymbol{x}=\left[ \begin{array}{rrr} x \\ y \\z \end{array} \right] ,\quad \boldsymbol{b}=\left[ \begin{array}{rrr} 5\\2\\-1 \end{array} \right]$$
とおけば、\(A\boldsymbol{x}=\boldsymbol{b}\) で表すことができます。
\(A\)の\(A^{-1}\)が存在するとき、\(\boldsymbol{x}=A^{-1}\boldsymbol{b}\)となることを用いて計算してみましょう。
今回は、図1のように入力してあるとします。

逆行列の計算
逆行列を求めるには、MINVERSE関数を使用します。
今回は、B6セルからD8セルに、行列\(A\)の逆行列\(A^{-1}\)を求めてみましょう。
=MINVERSE(B2:D4) (※配列数式)
{=MINVERSE(B2:D4)}

配列数式を使用しているから、「Ctrl」+「Shift」+「Enter」で数式を確定させよう。(一部のExcelバージョンを除きます。)

B6セルからD8セルに、 逆行列\(A^{-1}\)を求めることができました。
行列の積
逆行列を求めることができたので、\(\boldsymbol{x}=A^{-1}\boldsymbol{b}\)を計算していきましょう。行列の積を求めるには、MMULT関数を使用します。
今回は、G6セルからG8セルに \(\boldsymbol{x}\)を求めてみましょう。
=MMULT(B6:D8,G2:G4) (※配列数式)
{=MMULT(B6:D8,G2:G4)}

G6セルからG8セルに \(\boldsymbol{x}\) を求めることができました。
よって、今回の例の連立方程式の解は、下記のようになります。
$$ \boldsymbol{x}=\left[ \begin{array}{rrr} x \\ y \\z \end{array} \right] = \left[ \begin{array}{rrr} 4 \\ -7 \\8 \end{array} \right]$$
\(x=4,\;y=-7,\;z=8\)
コメント