エクセルを用いた2分法による非線形方程式の計算

        

Excelを用いた科学技術計算が第2版になりました 30年10月

amazon:Excelで操る! ここまでできる科学技術計算 第2版

楽天: Excelで操る! ここまでできる科学技術計算 [ 神足 史人 ]



図1 2分法の説明
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が近似解となる。



2分法の例題


3次方程式 f(x) = x3 + 6x2 + 21x + 32 = 0の根を求めてみよう。


              図2 3次方程式のグラフ

図2のグラフから判断して、-3と-2の間に解があるようです。



たった1日で即戦力になるExcelの教科書

入門者のExcel VBA―初めての人にベストな学び方 (ブルーバックス)

Excel VBAのプログラミングのツボとコツがゼッタイにわかる本

エクセルこれだけ関数事典90―ハンディで見やすい!



EXCELを用いて2分法により3次方程式を解く


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次方程式の根です。



エクセルのVBAを用いた2分法による非線形方程式の計算
2分法はVBAを用いたほうが簡単です。

非線形方程式をエクセルで解いてみよう(ニュートン・ラプソン法)

非線形方程式をエクセルで解いてみよう(EXCELのソルバー)

エクセルのソルバーで操る!ヒッチコック・ベアストウ法による高次代数方程式の解計算

 





EXCELを用いた科学技術計算

EXCELのソルバーを用いた科学技術計算



〒673−0036 兵庫県明石市松江62−14
(有)ゴッドフット企画



感想をお聞かせ下さい



JR福知山線 脱線事故シミュレーション

脱線事故シミュレーションもEXCELで
(Yahoo Japan 掲載)


Copyright (C) GODFOOT 2007 All Rights Reserved.