情報通信工学科 2年 コンピュータ数値解析(学内専用)中川朋子


二分法、はさみうち法、ニュートン法

ニュートン法で解く時のHint

初期値は できるだけ解のそばに,
初期値と解の間に「変曲点」「極大,極小値」をはさまないように
設定します。

「極大,極小値」を求めるとき,普通はf(x)を微分して
微分値が0になるところを求めますが,この問題の場合,
   f’(x)= 2C1 x−C2cos( x )
ですから,0になるところを求めるのはちょっと面倒です。
(二分法でもやって求めるのか!?)

こんな時,xが小さいときは cos(x)が大きくて f’<0,
xが大きいときは x2が大きく cos(x)が小さくて f’>0, ですから,
適当にXの値を入れてみて f’(x) >0 なら 極小値より右側(解に近い)ことが解ります。
初期値に0.1などを選んでしまうと,fが減少していく部分ですから,
x=0という解(今狙っていない方の解)に収束してしまいます。

「変曲点」はご存知のように
 f”(x)= 2C1+C2 sin( x ) = 0 
になるところですから,これを使うと 
x= sin-1(−2C1/C2)が変曲点、ということがわかりますね。でも、
これより右ならどこでもいい,というわけではありません。

だいたい, 2C1+C2 sin( x ) といったら,
正弦波に定数を足したものですから,
振動し続けるグラフになるはずで,x軸を何回も横切りますから,
負になるところが周期2πでめぐってきますよね。

ですから,大胆すぎる初期値(たとえば x=186とか!)を入れてしまうと,
初期値と解の間に変曲点をたくさんはさんでしまい、良くないのです。

二分法、ニュートン法の課題のページに戻る