こんにちは。また暖かくなってきて、天気はツンデレのようですね。
今回はニュートン法の利用のお話です。
スマホで見る方は横向きをお勧めします。
ある関数$f(x)$があり、$f(x)=0$となる$x$を見つけるとき、その値は次の式を繰り返し計算することで近似される。
\begin{align*}
a_{n+1}&=a_n-\frac{f(a_n)}{f'(a_n)}
\end{align*}
この記事では、$f(x)=x^n-2$として$n$について一般化をします。$n=1$から始め、$a_5$まで計算することにしました。では計算!
初期値$a_1=1$として計算を始めます。そして、$f$の部分を少し整理しましょう。
\begin{align*}
-\frac{f(a_n)}{f'(a_n)}&=\frac{{a_n}^n-2}{({a_n}^n-2)'}\\
&=-\frac{{a_n}^n-2}{n{a_n}^{n-1}}\\
&=-\frac{a_n}{n}+\frac{2}{n}a_n^{-n+1}
\end{align*}
こうした方がいいですね。では始めましょう!
\begin{align*}
a_2&=a_1-\frac{a_1}{n}+\frac{2}{n}a_1^{-n+1}\\
&=1-\frac{1}{n}+\frac{2}{n}\\
&=\frac{n+1}{n}
\end{align*}
\begin{align*}
a_3&=\frac{n+1}{n}-\frac{1}{n}\frac{n+1}{n}+\frac{2}{n}\left(\frac{n+1}{n}\right)^{-n+1}\\
&=\frac{n^2-1}{n^2}+\frac{2}{n}\frac{n^{n-1}}{(n+1)^{n-1}}\\
&=\frac{1}{n^2}(x+1)(x-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}
\end{align*}
すこしごちゃついてきましたね。まだまだやっていきます。
\begin{align*}
a_4&=\frac{1}{n^2}(x+1)(x-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}-\frac{1}{n}\left\{\frac{1}{n^2}(x+1)(x-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}\\
&\quad+\frac{2}{n}\left\{\frac{1}{n^2}(x+1)(x-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\\
&=\frac{1}{n^3}(n+1)(n-1)^2+\frac{2n^{n-3}}{(n+1)^{n-1}}(n-1)\\
&\quad+\frac{2}{n}\left\{\frac{1}{n^2}(x+1)(x-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}
\end{align*}
最後!
\begin{align*}
a_5&=\frac{1}{n^3}(n+1)(n-1)^2+\frac{2n^{n-3}}{(n+1)^{n-1}}(n-1)+\frac{2}{n}\left\{\frac{1}{n^2}(n+1)(n-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\\
&\quad-\frac{1}{n}\left[\frac{1}{n^3}(n+1)(n-1)^2+\frac{2n^{n-3}}{(n+1)^{n-1}}(n-1)+\frac{2}{n}\left\{\frac{1}{n^2}(n+1)(n-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\right]\\
&\quad+\frac{2}{n}\left[\frac{1}{n^3}(n+1)(n-1)^2+\frac{2n^{n-3}}{(n+1)^{n-1}}(n-1)+\frac{2}{n}\left\{\frac{1}{n^2}(n+1)(n-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\right]^{-n+1}\\
&=\frac{1}{n^4}(n+1)(n-1)^4+\frac{2n^{n-4}}{(n+1)^{n-1}}(n-1)^2+\frac{2}{n^2}(n-1)\left\{\frac{1}{n^2}(n+1)(n-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\\
&\quad+\frac{2}{n}\left[\frac{1}{n^3}(n+1)(n-1)^2+\frac{2n^{n-3}}{(n+1)^{n-1}}(n-1)+\frac{2}{n}\left\{\frac{1}{n^2}(n+1)(n-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\right]^{-n+1}
\end{align*}
よって、次のことがわかる。
$\sqrt[n]{2}\quad n\ne0$は次の多項式で近似できる。
\begin{align*}
\sqrt[n]{2}&\risingdotseq\frac{1}{n^4}(n+1)(n-1)^4+\frac{2n^{n-4}}{(n+1)^{n-1}}(n-1)^2+\frac{2}{n^2}(n-1)\left\{\frac{1}{n^2}(n+1)(n-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\\
&\quad+\frac{2}{n}\left[\frac{1}{n^3}(n+1)(n-1)^2+\frac{2n^{n-3}}{(n+1)^{n-1}}(n-1)+\frac{2}{n}\left\{\frac{1}{n^2}(n+1)(n-1)+\frac{2n^{n-2}}{(n+1)^{n-1}}\right\}^{-n+1}\right]^{-n+1}
\end{align*}
こんなものわかってしまったら、計算するしかないですよね!実際に計算しましょう。
代入してとても頑張って計算すると、
\begin{align*}
\sqrt{2}&=\frac{665857}{470832}
\end{align*}
という分数を得られます。これの値は
\begin{align*}
\frac{665857}{470832}&\risingdotseq1.414213562374689910626...\\
\sqrt{2}&\risingdotseq1.414213562373095048801...
\end{align*}
小数点以下11桁という高精度の近似を得られましたね。
ちなみに自分のスマホにこんな近似式が眠ってました。
\begin{align*}
\sqrt{2}&\risingdotseq\frac{886731088897}{627013566048}\\
&=1.414213562373095048801689623...\\
\sqrt{2}&=1.414213562373095048801688724...
\end{align*}
小数点以下23桁とかいう化け物分数です。おそらく、過去の自分がこのニュートン法を$a_6$まで計算して得たものだと思います。今回の一般化では$a_6$までやると流石に長くなりすぎるので止めました。別に計算したくなかったとかではないですよ?()
こちらもめっちゃ頑張って計算すると、
\begin{align*}
\sqrt[3]{2}\risingdotseq\frac{2146097524939083451}{1703358734191174242}
\end{align*}
という分数が得られます。これを小数で表示すると、
\begin{align*}
\frac{2146097524939083451}{1703358734191174242}&\risingdotseq1.25992105001776977372930109...\\
\sqrt[3]{2}&=1.25992104989487316476721060...
\end{align*}
なんでこんないかつい見た目して7桁しか合わねえんだ?こいつ。なんか憤りを感じます。正直nが大きければ大きいほど精度はよくなると予想していたので、裏切られてなんか悲しいです。$n>3$の結果は、近似値のみ載せます。
\begin{align*} n=1&\rightarrow2\quad\quad\quad\quad\quad\quad\quad\quad\quad(\text{完全一致})\\ n=2&\rightarrow1.4142135623746...\quad(\text{11桁一致})\\ n=3&\rightarrow1.2599210500177...\quad(\text{7桁一致})\\ n=4&\rightarrow1.1892071156761...\quad(\text{9桁一致})\\\ n=5&\rightarrow1.14869835662...\quad\quad(\text{8桁一致 なぜかこれだけGeoGebraが13桁しか表示してくれなかった。})\\ n=6&\rightarrow1.1224620510405...\quad(\text{7桁一致})\\ n=7&\rightarrow1.1040895174857...\quad(\text{8桁一致})\\ n=8&\rightarrow1.0905077374375...\quad(\text{8桁一致})\\ n=9&\rightarrow1.0800597444737...\quad(\text{7桁一致})\\ n=10&\rightarrow1.0717734687766...\quad(\text{8桁一致})\\ \end{align*}
最初の11桁のインパクトが強すぎて、後半がしょぼく見えてしまいますね。まあ、実際あんなに分母分子がでかい分数になるくせにこの程度の近似だとしょぼいの部類に入ってしまいますね。一応、前から気になっていたことなので今回できてなんとなく満足です。ほな、さいなら!