ζ(2) = π2 / 6の証明を読んでいて、ふとsin(x)のテイラー展開について気になった。0の周りでテイラー展開するとして、例えば x = 100くらいでもそれなりの精度で近似するためにはどれくらいの項数がいるのだろうか。
sin(x)は周期関数なので、[0, 2π)に入るようにxを変換すれば、x = 2πのときにどれだけ項数が必要か考えれば十分だと思うけど、周期性は利用しないという前提で。
x < 1であれば、xk → 0になるので高次の項は無視できるというのはすぐに分かるけど、x > 1のときって高次の項は無視できるのだろうか?
xk/k! を考えると、kが大きくなるにつれ、分子の増加よりも分母の増加の方が速くなるため、x > 1のときも十分に大きなkを取れば、xk/k! → 0 になりそうである。じゃあ十分に大きなkってどれくらいだろうか?スターリングの公式が使えそうな気がする。
k! ~ (k/e)kなので、
xk/k! ~ xk/((k/e)k) = (ex/k)k
である。
これを使って、0 <= x < 100にてsin(x)をテイラー展開近似するのに必要な項数を見積もってみる。
大事なことを書き忘れていた。sin関数のテイラー展開は以下のようになる。
sin(x) = 1 - x3/3! + x5/5! - x7/7! + x9/9! - ....
x = 100として、xk/k! ~ (ex/k)k < 10-6となるようなkを概算してみる。
k = 300のとき、(ex/k)k = 1.42 * 10-13なので、300/2 = 150項あれば十分なのではないかと予想してみる。
以下に、[0, 100]でのsin関数とそのテイラー展開近似(150項まで)をグラフにしてみた。十分な近似ができているようだ。
0 件のコメント:
コメントを投稿