原子動力工学特論 レポート1 交通電子機械工学専攻 齋藤 泰治
目次 ニュートン法について
ニュートン法 方程式f(x)=0の解を求める 処理手順 1. 初期値 x の決定 x = x0 を決める 2. 接線と x 軸の交点の計算 x = x0 における y = f(x) の接線を引き、今度はこの接線と y=0 (x軸)の交点を x1 とする すなわち、 xn+1 = xn - (f(x)/f ’(x)) を計算する 3. 2. を繰り返して値が収束したらそれを解とする
ニュートン法 初期値x=x0をとる グラフに接線1を引く 接線1がX軸をきる点を次の点、x1とする x=x1のところで次の接線2を引き 初期値x=x0をとる グラフに接線1を引く 接線1がX軸をきる点を次の点、x1とする x=x1のところで次の接線2を引き どうようにX軸をきる点をx2とする 同じことをn回繰り返すと 真の値xに極めて近い値 を得る x≈xn x2 x1 x0
問1 を解けばよい より、 従って、解は にある
プログラム実行結果1-1 x0=1.000000 i=1 x=1.000000 f(x)= 0.158529015192 df(x)=1.459699 i=2 x=0.891396 f(x)= 0.016637296200 df(x)=1.154467 i=3 x=0.876985 f(x)= 0.000288172633 df(x)=1.114499 i=4 x=0.876726 f(x)= 0.000000092913 df(x)=1.113783 i=5 x=0.876726 f(x)= 0.000000000000 df(x)=1.113783 ans=0.876726
プログラム実行結果1-2 x0=-1.000000 i=1 x=-1.000000 f(x)= 1.841470984808 df(x)=-2.540302 i=2 x=-0.275098 f(x)= 0.347319458830 df(x)=-1.512593 i=3 x=-0.045479 f(x)= 0.047531597880 df(x)=-1.089923 i=4 x=-0.001869 f(x)= 0.001872376843 df(x)=-1.003735 i=5 x=-0.000003 f(x)= 0.000003475719 df(x)=-1.000006 i=6 x=0.000000 f(x)= 0.000000000009 df(x)=-0.999999 ans=0.000000
問2 を解く また、x=0 で かつ 従って、解は
プログラム実行結果2-1,2 x0=0.000000 i=1 x=0.000000 f(x)= 0.000000000000 df(x)=-0.999999 ans=0.000000 x0=2.000000 i=1 x=2.000000 f(x)= 0.551482119784 df(x)=0.773962 i=2 x=1.287456 f(x)= -0.003592498639 df(x)=0.684155 i=3 x=1.292707 f(x)= 0.000007627617 df(x)=0.687055 i=4 x=1.292696 f(x)= 0.000000000037 df(x)=0.687049 ans=1.292696
プログラム実行結果2-3 x0=5.000000 i=1 x=5.000000 f(x)= -0.276924238464 df(x)=-0.965662 i=2 x=4.713229 f(x)= 0.008136103732 df(x)=-1.008975 i=3 x=4.721292 f(x)= 0.000000405684 df(x)=-1.008864 i=4 x=4.721293 f(x)= 0.000000000000 df(x)=-1.008864 ans=4.721293 Xが十分に大きくなれば、exp(-x)は限りなく0に近づくので 解は、 (xが大きいとき)
問3 を解く
プログラム実行結果 3-1 x0=1.000000 i=1 x=1.000000 f(x)= 0.864664716763 df(x)=2.270671 i=2 x=0.619203 f(x)= 0.093566571545 df(x)=1.818098 i=3 x=0.567739 f(x)= 0.001059165386 df(x)=1.778015 i=4 x=0.567143 f(x)= 0.000000126972 df(x)=1.777590 i=5 x=0.567143 f(x)= 0.000000000000 df(x)=1.777590 ans=0.567143
プログラム実行結果 3-2 x0=1000.000000 i=1 x=1000.000000 f(x)=1000000.000000000000 df(x)=1999.999979 i=2 x=499.999995 f(x)=249999.994644895167 df(x)=999.999988 i=14 x=0.567143 f(x)= 0.000000107858 df(x)=1.777590 i=15 x=0.567143 f(x)= 0.000000000000 df(x)=1.777590 ans=0.567143 ・・・・・・
プログラム実行結果 3-3 x0=-20.000000 i=1 x=-20.000000 f(x)=-235385266837019584.000000000000 df(x)=470770063393609408.000000 i=2 x=-19.500000 f(x)=-86593313920699056.000000000000 df(x)=173186454825601568.000000 i=44 x=0.567144 f(x)= 0.000000393246 df(x)=1.777590 i=45 x=0.567143 f(x)= 0.000000000000 df(x)=1.777590 ans=0.567143 ・・・
数値計算による解