f(n)=-{(2*n-1)*(2*n^3-5*n^2+n-1)/(n*(2*n+1)*(2*n^2-3*n+2))}*f(n-1)
+{(2*n-3)*(2*n^2+n+1)/(n*(2*n+1)*(2*n^2-3*n+2))}*f(n-2) (n=2,3,4,・・・)
ただし、f(0)=5、f(1)=-1/3 とする。
さて、このいかめしい漸化式で定まる級数和の極限値 納n=0,∞] f(n) は如何なる値か?
(コメント) f(2)=(9/40)*f(1)+(11/40)*f(0)=-(3/40)+(55/40)=52/40=13/10 でいいのかな?
らすかるさんからのコメントです。(令和3年1月27日付け)
多分、e+π だと思います。
GAIさんからのコメントです。(令和3年1月27日付け)
ピタリ正解です。数値計算されました?自分のコンピュータではメモ化して漸化式を処理し
ようとしても狽ナのnには20000位でメモリーいっぱいで、それ以上の精度を確保できません
でした。でも出た数値でこの極限を予想されたのはこれまた驚きです。
らすかるさんからのコメントです。(令和3年1月27日付け)
数値計算で近似値を出して、WolframAlphaに聞きました。
精度を上げる工夫をすると、たった100項までの計算で、5.859874482048838という値が出
せます。
# 1000項までなら、5.85987448204883847382293
# 10000項までなら、5.859874482048838473822930854632165
DD++さんからのコメントです。(令和3年1月28日付け)
見た目いかついですが、わりと見掛け倒しで、解こうと思えば解ける漸化式ですね。
f(n)=-{(2*n-1)*(2*n^3-5*n^2+n-1)/(n*(2*n+1)*(2*n^2-3*n+2))}*f(n-1)
+{(2*n-3)*(2*n^2+n+1)/(n*(2*n+1)*(2*n^2-3*n+2))}*f(n-2) (n=2,3,4,・・・)
ただし、f(0)=5、f(1)=-1/3 とする。
分母を払うと、
n*(2*n+1)*(2*n^2-3*n+2)*f(n) = -(2*n-1)*(2*n^3-5*n^2+n-1)*f(n-1)
+(2*n-3)*(2*n^2+n+1)*f(n-2)
g(n) = (-1)^n*(2*n+1)*f(n) (n≧0) とおくと、g(0) = f(0)
= 5、g(1) = -3*f(1) = 1 で、
n*(2*n^2-3*n+2)*g(n) = (2*n^3-5*n^2+n-1)*g(n-1)+(2*n^2+n+1)*g(n-2)
ここで、(2*n^3-5*n^2+n-1) = n*(2*n^2-3*n+2) - (2*n^2+n+1) であることに注目。
h(n) = g(n)-g(n-1) (n≧1) とおくと、h(1) = g(1)-g(0) = -4 で、
n*(2*n^2-3*n+2)*h(n) = -(2*n^2+n+1)*h(n-1)
さらに、 i(n) = h(n)/(2*n^2+n+1) (n≧1) とおくと、i(1) = h(1)/4 = -1
で、n*i(n) = -i(n-1)
よって、 i(n) = (-1)^n/(n!) 、h(n) = (-1)^n*(2*n^2+n+1)/(n!)
ここから頑張って h(n) を変形します。
h(n)
= (-1)^n*(2*n^2+n+1)/(n!)
= (-1)^n*(2*n^2-n+2*n+1)/(n!)
= (-1)^n*((2*n-1)*n+(2*n+1))/(n!)
= -(-1)^(n-1)*(2*n-1)/((n-1)!)+(-1)^n*(2*n+1)/(n!)
これが g(n) の階差数列であることから、n≧1 のとき
g(n) = g(0)+Σ[k=1,n]h(k)
= 5+(-1-3)+(3+5/2)+(-5/2-7/6)+……+(-(-1)^(n-1)*(2*n-1)/((n-1)!)+(-1)^n*(2*n+1)/(n!))
= 5-1+(-1)^n*(2*n+1)/(n!)
= 4+(-1)^n*(2*n+1)/(n!)
で、g(0)=5 であることから、n=0 の場合も含めて、 g(n) = 4+(-1)^n*(2*n+1)/(n!)
よって、 f(n) = 4*(-1)^n/(2*n+1)+1/(n!)
Σ [n=0,∞]4*(-1)^n/(2*n+1) = 4*(π/4) = π (ライプニッツ級数)
Σ [n=0,∞]1/(n!) = e
であることから、 納n=0,∞]f(n) = π+e
GAIさんからのコメントです。(令和3年1月28日付け)
分析お見事です。逆に目標をe+πにして、これに収束する数列を構成する手法が面白
かったです。
e=納n=0,∞]1/n!=1+1/1!+1/2!+1/3!+・・・
π=4*Σ[n=0,∞](-1)^n/(2*n+1)=4*(1-1/3+1/5-1/7+1/9-・・・)
そこで、 a(n)=1/n! 、b(n)=(-1)^n*4/(2*n+1) と置くと、
a(n-1)=n*a(n) 、a(n-2)=(n-1)*a(n-1)=n*(n-1)*a(n)
b(n-1)=-(2*n+1)/(2*n-1)*b(n) 、b(n-2)=-(2*n-1)/(2*n-3)*b(n-1)=(2*n+1)/(2*n-3)*b(n)
そこで、
f(n)=a(n)+b(n) ・・・・・・・・・・・・・・・・・・・・・・・・・・・・@ と置けば、
f(n-1)=n*a(n)-(2*n+1)/(2*n-1)*b(n)・・・・・・・・・A
f(n-2)=n*(n-1)*a(n)+(2*n+1)/(2*n-3)*b(n)・・・B
A、Bから
[n -(2*n+1)/(2*n-1)][a(n)] [f(n-1)]
=
[n*(n-1) (2*n+1)/(2*n-3)][b(n)] [f(n-2)]
この2×2行列の逆行列を左からかけて、a(n)、b(n)をf(n-1)、f(n-2)で解き、結果を@へ代入
することで、
f(n)= - (2*n-1)*(2*n^3-5*n^2+n-1)/(4*n^4 - 4*n^3 + n^2 + 2*n)*f(n-1)
+ (2*n-3)*(2*n^2+n+1)/(4*n^4 - 4*n^3 + n^2 + 2*n)*f(n-2)
なる漸化式で表せることができる。
「収束の遅い交代級数の精度を格段に上げる方法」について、らすかるさんからのコメント
です。(令和3年1月28日付け)
e+πの級数計算で用いた方法についてです。
例えば、n項計算された級数a[1]〜a[n]に対して、mをm<nである自然数とし、級数の最後
のm+1項を使って、(1/2^m)Σ[k=0〜m]{mCk・a[n-k]}を計算すれば、a[n]よりもはるかに精度
の良い近似値が得られます。mは大きいほど精度が良くなります。
e+πのときは、m=8として計算しました。つまり最後の9項を使って、
(a[n]+8a[n-1]+28a[n-2]+56a[n-3]+70a[n-4]+56a[n-5]+28a[n-6]+8a[n-7]+a[n-8])/256
を計算するということです。
例1 π=4-4/3+4/5-4/7+4/9-…
これを1000項まで計算すると、3.142…と小数点以下2桁しか求まりませんが、
第992項〜第1000項を使って上の式で計算した値は、3.1415926535897932384626432…
となり、小数点以下24桁まで正確に求まります。
(同じ1000項までで、m=16にすると42桁、m=32にすると72桁求まります。)
例2 log2=1-1/2+1/3-1/4+1/5-…
これを1000項まで計算すると、0.6936…と小数点以下3桁しか求まりませんが、
第992項〜第1000項を使って上の式で計算した値は、0.6931471805599453094172320…
となり、これも同じく小数点以下24桁まで正確に求まります。
# この手法はe+πの近似値計算に際して自分で考えた方法ですが、こういうのは多分既に
知られているでしょうね。なお、この方法は交代級数にしか使えません。
GAIさんからのコメントです。(令和3年1月28日付け)
この方法を知らないと(編み出さないと)例の漸化式を10000個の(私のパソコンの能力)例
え総和を計算しても、目的のe+πの真の値とは大きくずれたものにしかならず、らすかるさん
が数値計算結果からe+πを指摘されたのは、よっぽどスペックが高いパソコンを使用されて
いるんだろうな・・・と思っていたとこでした。
いやーこの手を知らないと数値計算から当てるのは無理ですね。