1つだけ過去を変えられるとしたら?

ニュートン法はf(x)をテイラー展開した中の初めの2項を用いることで
Xn+1 = Xn - f(Xn)/f'(Xn)
という漸化式を取得します。これは2次に収束する漸化式です。

さらにベイリー法ではテイラー展開の第三項までとニュートン法の漸化式を用い3次収束の漸化式
Xn+1 = Xn - 2f'(Xn)*f(Xn)/(2f'(Xn)*f'(Xn)-f''(Xn)*f(Xn))
を得ています。

という所までは分かり、いざ3次の漸化式を作ろうと思ってもうまくいきません。

例えば
http://www.finetune.co.jp/~lyuka/technote/fract/ …
にはAの逆数1/Aを求めるための漸化式が5次まで掲載されています。


Aの逆数はf(x)=1-1/(1-Ax)を用いることで2次までは求まります。しかし3次以降をどうやって導くのかが分かりません。どなたか導き方のヒントでも構いませんので教えていただけないでしょうか?よろしくお願いします。

p.s.
平方根の逆数の係数(5/16や35/128など=(2n)!/(n!*n!*2^(n+1))から考えるに
f(x)のn回微分=-n!*a^n*(1-ax)^(-n-1)
とテイラー展開でなんとかなるような気もするのですが...

A 回答 (1件)

「f(x)=Aの解を求めよ」という問題で、解はXでf(X)=Aだとします。



(1).f(x)=1/x
Xの近傍のあるXnで展開すると
f(Xn+dx) = 1/Xn - (1/Xn^2)dx + (1/Xn^3)dx^2 - (1/Xn^4)dx^3 ...
もとめるのはf(Xn+dx)=Aとなるdxです(Xn+1 = xn + dx)(dxは有限)。
(1-A*Xn) - (1/Xn)dx + (1/Xn^2)dx^2 - (1/Xn^3)dx^3 ... = 0
をdxについて解くことになります。後ろの ... の部分は欲しい次数まで続いてるものとして。とりあえず今は3次までとっているものとしてこの部分は0とします。

一般に高次の方程式なので一筋縄でいかなそうですが、ここで一工夫。
A≒Xnならば、1-A*Xn、dxは微小です。1-A*Xn=h、dx/Xn=Yとして見やすくすると、
h - Y + Y^2 - Y^3 ... = 0
A≒Xnでdxは小さいと信じ込めば、
h~Y
で、上式は
Y = h + Y^2 - Y^3 ...
とYについて解け、後ろの項を補正項のようにみたてます。
この式を再帰的に自身のYに代入し、
Y = h + (h + Y^2 - Y^3 ...)^2 - Y^3 ...
必要な次数までだけを取り出すと
Y = h + h^2 + h^3 ...
が得られます。(3次の項の係数が変わっていますので注意。単にYをhに置き換えたのにたまたま似てますが、ちゃんと計算しないとだめです)
どの道近似なので、上式の解もついでに近似で求めたわけです。
これを解くと高次まで一般に
Xn+1 = Xn * (1 + hn + hn^2 + hn^3 + hn^4 + hn^5 + ...)

(2).一般のf(x)
f(Xn + dx) = fn + a*dx + b*dx^2 + c*dx^3 ...
f(Xn + dx) = A
と方程式を立てると
dx + b'*dx^2 + c'*dx^3 ... = (A-fn)/a =: h
dx = h - b'*dx^2 - c'*dx^3 ...
再びh~dx、dx≪1という信念を打ち立てれば、順に
dx = h - b'*(h - b'*dx^2 - c'*dx^3)^2 - c'*dx^3 ...
と同じ方法がとれそうです。

--------------------------------------------------------------
厳密な表現は苦手分野なのでご容赦を^^;
    • good
    • 0
この回答へのお礼

なんとなく分かったような気がします(紙の上では導くことができました。まだ完全には理解でききれていないのでもうしばらく考えてみたいと思います)。どうもありがとうございました。

お礼日時:2002/12/25 20:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!