• ベストアンサー

漸化式で

漸化式にはいろいろな種類があるのですが、それらのいろいろなパターンがのっているようなサイトはないでしょうか? たとえばan+1=2an+n!とか、n!のようなものが式に入っているときの解き方とか・・・ よろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • adinat
  • ベストアンサー率64% (269/414)
回答No.1

漸化式を差分方程式と呼ぶならば、これはまさに微分方程式との対比になっており、隣接二項間漸化式は、1階の微分方程式と対応するものです。定数係数の隣接二項間ならば必ず一般項は表示できますが、変数係数の場合はそう単純ではありません。たとえば変数係数の1階の常微分方程式は、解を積分形で明示することは出来ても、積分が初等関数にならない場合があります。そういう意味で、必ずしも漸化式は解けるわけではないのです。微分方程式と同じように、特殊で重要な漸化式にはそれぞれ個別の解法が考えられていますから、それで満足される方がよいとは思います。 さてご質問の例、a_{n+1}=2a_n+n!ですが、両辺を2^{n+1}で割って、(a_{n+1}/2^{n+1})=(a_n/2^n)+n!/2^{n+1}と変形できます。したがって、b_n=a_n/2^nとおけば、漸化式b_{n+1}=b_n+n!/2^{n+1}を解けばよいですが、これは階差型の漸化式なので、b_n=sum_{k=1→n-1}k!/2^{k+1}+b_0となります。問題はsum_{k=1→n-1}k!/2^{k+1}を求めることですが、これは初等関数を用いて表すことはできません。そこで特殊関数(超越関数)を用いてこの和を表現することになります。(実際はある意味求めるのを諦めた、といってもよいかもしれない)ここでは面倒なのでやりませんが、不完全ガンマ関数を用いた表示ができます。たとえばmathworld(参考url)なんかを参考にしてみてください。 もうひとつ、母関数を用いる方法を紹介しておきます。これはとても汎用性があって便利です。数列{a_n}_{n=0→∞}の母関数q(t)を、 q(t)=a_0+a_1t+a_2t^2+a_3t^3+… で定義します。a_nが漸化式a_{n+1}=2a_n+n!を満たすから、 q(t)=a_0+t(a_1+a_2t+a_3t^2+…) =a_0+t((2a_0+0!)+(2a_1+1!)t+(2a_2+2!)t^2+…) =a_0+2tq(t)+(0!t+1!t^2+2!t^3+…) と変形できます。r(t)=0!t+1!t^2+2!t^3+…とおけば、結局、q(t)=a_0+2tq(t)+r(t)が成り立つことがわかります。そこで、q(t)について解いてやれば、 q(t)=(a_0+r(t))/(1-2t) です。実はこのr(t)は収束半径が0で、幾分問題があるのですが、関数q(t)の原点におけるn次の微分係数について、q^{(n)}(0)=n!a_nが成立します。感覚的には、q(t)=a_0+a_1t+a_2t^2+a_3t^3+…を両辺をtでn回微分してt=0を代入してやればよいだけです。したがって一般項は、 a_n=q^{(n)}(0)/(n!)=[d^n{(a_0+r(t))/(1-2t)}/dt^n](0)/(n!) とかけます。r(t)=0!t+1!t^2+2!t^3+…ですから、微分の計算は容易にできます。最初の数項を具体的に確かめられたらよいと思います。またこの問題の場合はr(t)に相当する項を具体的な関数で書くことが難しかったのですが、たとえば高等学校で習うような漸化式の場合は、r(t)が非常に簡単な初等関数になって、一般項を比較的簡単に求めることが出来たりします。 ちなみにたとえば初期条件a_1=1のもとでは、一般解をコンピュータに計算させてみたところ a_n=2^{n-1}+2^ne^{-2}Γ(-1,-2)+(-2)^ne^{-2}n!Γ(-n,-2) となりました。

参考URL:
http://mathworld.wolfram.com/IncompleteGammaFunction.html