Go to the first, previous, next, last section, table of contents.


多項式内挿法

a p (calc-poly-interp) [polint] コマンドは、 特定の x 値における多項式内挿法を実施します。 これはスタックから 2つの引数を取ります。 それは a F のときと同種のデータ行列と、 所望の x を示す 1個の数値です。 Calc は a F i のときと同じように厳密にあてはまる高次多項式で近似し、 その近似結果に x 値を代入して y 値を推定します。 (実際のところ、Calc は a F i を用いませんが、 もっと効率的で演算誤差の小さい直接的方法を使います。)

a p が返す結果は2つの数値のベクトルで、 x における y の近似値と、 その近似における Calc の予想誤差を反映する誤差指数 dy です。 もし x がデータ行列の x 値のどれかと一致していたら、 出力される y は行列中の対応する値が使われ、 出力される dy は厳密にゼロになります。

接頭引数として 2 を付けると、 a p がスタックから取得するのは データ行列ではなく x と y に分離されたベクトル群になります。

もし引数の x が数値のベクトルであった場合は、 a p は各 x値に対応する内挿結果群の行列を返します。 (行列は2列で、y 値と dy 値からなります。) もし x が数ではなく式だったら、 polint 関数がシンボリック形式のまま残されます。 a " コマンドを使うとそれが展開され、 近似式をシンボリック表現する式になります。

どの場合でも、a p コマンドはデータ行列をスタックに残し、 スタック上の x 値だけを結果に置き換えます。

H a p [ratint] コマンドは、 分数式による内挿を行います。 a p と全く同じように使えますが、唯一の違いは モデルとして2つの多項式からなる分数式を使うことです。 N 個のデータ点があれば、 分子と分母の多項式の次数は N/2 となります (N が奇数のときは、分母の次数が分子より 1つ高くなります)。

分数式の良い点は、 極点(近似式の分母がゼロに近づいて関数値が無限大に発散する点) を持つ関数を精密に記述できることです。 x が近似した分数式の極点に一致した場合、 結果は division by zero になります。 無限大モードのときは、結果は `[uinf, uinf]' となります。

H a p が使った分数式の実際の係数を知る方法はありません。 (このアルゴリズムは係数を陽に算出しませんし、 分数式は a F の近似能力を超えています。)


Go to the first, previous, next, last section, table of contents.     利用度数