Excelで連立方程式を解く
次のような四元一次連立方程式があります。
4w+4x+6y+3z=108
6w+5x+4y+5z=126
3w+5x+3y+2z=87
2w+5x+5y+2z=92
未知数が4個で式が4個ありますので未知数を地道に消していけば解けますが面倒です。
逆行列を使って解いてみます。
A=
4 4 6 3
6 5 4 5
3 5 3 2
2 5 5 2
X=
w
x
y
z
B=
108
126
87
92
詳しい説明は省きますが
AX=B
Aの逆行列をA-1とすると
A-1AX=A-1B
X=A-1B
とすれば解けます。
つまり逆行列が求まれば連立方程式が解けます。
しかし一般に連立方程式を解くより逆行列を求める方が面倒です。
そこでExcelを使います。
Excelには「MINVERSE」という関数があり逆行列を求めることができます。
ところが配列のコピーなど通常の使い方とは違う部分があって分かりにくいです。
- セルA1からD4に行列Aを入力する。
- セルF1からF4に行列Bを入力する。
- セルA6に「=MINVERSE(A1:D4)」と入力する。
- セルA6からD9を選択する。
- ファンクションのF2キーを押す。
- CtrlキーとShiftキーを押しながらEnterキーを押す。
- セルA6からD9に「MINVERSE」が配列としてコピーされ逆行列A-1が計算される。
- セルF6に「=MMULT(A6:D9,F1:F4)」と入力する。
- セルF6からF9を選択する。
- ファンクションのF2キーを押す。
- CtrlキーとShiftキーを押しながらEnterキーを押す。
- セルF6からF9に「MMULT」が配列としてコピーされ逆行列A-1と行列Bの積が計算される。
- セルF6からF9に表示されている数が解Xとなる。
実際に計算した結果は
X=
7
8
6
4
となります。
この方法を使えば未知数がもっと多くても簡単に解けます。
[ 2010年9月28日 | カテゴリー: Excel | タグ: 行列 , 連立方程式 ]
[…] You Look Too Cool » Excelで連立方程式を解く […]