amazon:Excelで操る! ここまでできる科学技術計算 第2版 楽天: Excelで操る! ここまでできる科学技術計算 [ 神足 史人 ] |
図1 2分法の説明 |
2分法は中間値の定理を根拠とし、方程式 f(x) = 0 の近似解を求める。 中間値の定理 関数 f(x)が閉区間 [a,b] で連続で、f(a)とf(b)の値が異符号ならば、aとbの間にf(c) = 0 となる c が必ず存在する。(1つとは限らない) 2分法による解法手順を以下に示す。 @ f(a)とf(b)の値が異符号となる区間 [a,b] を見つける。(関数のグラフから見つけてください) A aとbの中点 m=(a+b)/2 での関数値 f(m)を計算する。 B f(m)とf(a)が異符号の時、[a,m]を新たな区間[a,b]とし、区間を狭める。 f(m)とf(b)が異符号の時、[m,b]を新たな区間[a,b]とし、区間を狭める。 C f(m) ≒ 0となるまで、ABを繰り返す。そのときのmが近似解となる。 |
3次方程式 f(x) = x3 + 6x2 + 21x + 32 = 0の根を求めてみよう。 図2 3次方程式のグラフ 図2のグラフから判断して、-3と-2の間に解があるようです。 |
たった1日で即戦力になるExcelの教科書 入門者のExcel VBA―初めての人にベストな学び方 (ブルーバックス) Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 エクセルこれだけ関数事典90―ハンディで見やすい! |
0回目(最初)、始点(a)を−3、終点(b)をー2とし、中点m=(a+b)/2 を計算する。 つぎに、a,b,mの関数値 f(a),f(m),f(c)を計算する。 図3 2分法の0回目(最初)のエクセルシート 1回目のNo.の設定 0回目No.+1 とする。 1回目の始点(a)の設定 f(a)*f(m) > 0 の時、f(a),f(m)は同符号となる。そのとき、a(1回目)=a(0回目) f(a)*f(m) ≦ 0 の時、f(a),f(m)は異符号となる。そのとき、a(1回目)=m(0回目) 1回目の終点(b)の設定 f(m)*f(b) > 0 の時、f(m),f(b)は同符号となる。そのとき、b(1回目)=b(0回目) f(m)*f(b) ≦ 0 の時、f(m),f(b)は異符号となる。そのとき、b(1回目)=m(0回目) 1回目の中点(m)の設定 m(1回目) = a(1回目)+b(1回目) 1回目の関数 f(a),f(m),f(b)の設定 0回目の関数をコピーする。 図4 2分法の1回目までのエクセルシート 2回目以降は1回目をコピーする。 図5 2分法の29回目までのエクセルシート 27回目でようやく、f(m)=0 となりました。 このときのm = -2.6378343 が3次方程式の根です。 |