• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:逆数補間の計算方法について)

逆数補間の計算方法について

このQ&Aのポイント
  • 逆数補間(Inverse Interpolation)とは、逆関数を近似するために使用される方法です。
  • 逆数補間を使うと、与えられた関数の根やゼロを求めることができます。
  • 逆数補間の計算方法は、与えられた値のテーブルから補間多項式を作り、逆補間を行うことで求めることができます。

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

  • ベストアンサー
noname#101087
noname#101087
回答No.4

切れぎれですみません。 >Y;-0.5789200,-0.3626370,-0.1849160,-0.0340642,0.0969858 >X; 1.0 , 2.0 , 3.0 , 4.0 , 5.0 > ......... >p(Y)=0.25Y^4+1.2Y^3+3.69Y^2+7.39Y+4.247470086 >---------------------------------------------------------------- ><補足>CoefとEvalについて >.......... >------------------------------------------------------------- >XとYを扱い方がよくわかっていないので、計算できないのかなあと思います。.... Coef と Eval は良さそうにみえます。 ただ、Coef で求めているのは、  P4(x) = A0 + A1(x - x0) + A2(x - x0)(x - x1) + A3(x - x0)(x - x1)(x - x2) + A4(x - x0)(x - x1)(x - x2)(x - x3) の係数{A0, A1, .... , A4}ですね。(Eval を見ても明らかです) つまり、[Inverse Interpolation]の例である  p(Y)=0.25Y^4+1.2Y^3+3.69Y^2+7.39Y+4.247470086 の係数が Coef の結果と違うのは当然なのです。  (1) [Inverse Interpolation]に例示された対応表 {Xi,Yi} の X,Y を入れ替え  (2) 上記の P4(x) を算出  (3) P4(x) をふつうの多項式に展開 すれば、引用の p(Y) になるでしょう。 そこまでやらずとも、Coef で求めた係数{A0, A1, .... , A4} を使い Eval で計算してみれば、対応表 {Xi,Yi} と合っているか否か はわかるはずですが....。

すると、全ての回答が全文表示されます。

その他の回答 (3)

noname#101087
noname#101087
回答No.3

>procedure; Coef(n, {Xi}, {Yi}, {Ai}) >...... >for i=0 to n do >{Ai}←{Yi} >end for >for j=1 to n do >for i=n to j step -1 do >Ai←({Ai}-{Ai-1})/({Xi}-{Xi-j}) >end for >...... ------------------- 参考までに Coef における{Ai}(差分商表)の書き換えをスケッチしてみます。 「多分」OK だと思います。 (1) 係数は、小文字(ai)が計算途中、大文字(Ai)が計算結果、と区別。 (2) Xn-Xm=dnm と略記。 j =0  j =1             j =2 ---  ---             --- Y0  Y0=A0 Y1  (Y1-Y0)/d10=A1 Y2  (Y2-Y1)/d21=a2       (a2-A1)/d20=A2 ....... Yn  (Yn-Y<n-1>)/dn<n-1>=an

すると、全ての回答が全文表示されます。
noname#101087
noname#101087
回答No.2

Newton 補間の書き忘れです。 下記ページなど、参考になりませんか? ------------------------------------  http://www.activebasic.com/aba/wiki.cgi?Newton%28%a5%cb%a5%e5%a1%bc%a5%c8%a5%f3%29%ca%e4%b4%d6 >Newton(ニュートン)補間

すると、全ての回答が全文表示されます。
noname#101087
noname#101087
回答No.1

>最後にあるP(y)を出したいのですが、計算方法がわかりません。 引っかかりポイントか P(Y) の作り方らしいので、まとめてみましょう。 (QNo.2980931 & QNo.2980811 の繰り返しですが.... ) (0) 補間表。   Y0=-0.5789200, Y1=-0.3626370, Y2=-0.1849160, Y3=-0.0340642, Y4=0.0969858   X0=1.0, X1=2.0, X2=3.0, X3=4.0, X4=5.0 (1) 補間多項式の作成。   X=P4(Y)=0.2504105*Y^4+1.2156411*Y^3+3.6940309*Y^2+7.3892454*Y+4.2474700  当方は、EXCEL シートで作りました。  Lagrange 補間公式をそのまま使ってます。(記号 X, Y は入れ替わってます)  一例。Y0 にてX0 になり、ほかの{X1, X2, X3, X4}では零になる多項式は   Q0(Y)=A0*(X-X1)*(X-X2)*(X-X3)*(X-X4)  です。A0 は、Q0(Y0)=X0 となるように算定します。  同様に、Q1(Y), Q2(Y), Q3(Y), Q4(Y) を求め、すべてを合計したのが上記の P(Y) です。  EXCEL シートだと、Q0(Y)用の式をコピーして{Q1(Y), Q2(Y), Q3(Y), Q4(Y)} を楽に作れるのです。  (EXCEL シートは、一覧性が良くミスを見つけ易い)  シーケンシャルなプログラムの場合は、Newton 補間公式のほうがコンパクトになるでしよう。(結果は同じになります)

すると、全ての回答が全文表示されます。

関連するQ&A