XLPack 6.1
C/C++ API リファレンスマニュアル
読み取り中…
検索中…
一致する文字列を見つけられません

◆ _ppvalu()

double _ppvalu ( int  ldc,
double  c[],
double  xi[],
int  lxi,
int  k,
int  ideriv,
double  x,
int *  inppv,
int *  info 
)

PP(区分多項式)形式のB-スプライン関数値または微分値

目的
本ルーチンはPP(区分多項式)形式(c[][], xi[], lxi, k)のB-スプラインのxにおける関数値(ideriv = 0の場合)あるいは微分値(ideriv = 1, 2, ..., k-1の場合)を求める. 区間xi[j-1] <= x < xi[j]のxについてxi[j-1]のまわりのテイラー展開を求める(j = 1 〜lxi). 右極限値(右微分値)が求められる. ppvaluはxi[0]およびxi[lxi]を超えて外そうを行う.
xi[j]において左極限値(左微分値)を求めるためには, lxiをj-1で置き替えて x = xi[i] (i = 1〜lxi) とせよ.
戻り値
Xにおけるideriv次微分値.
引数
[in]ldc二次元配列c[][]の整合寸法. (ldc >= k)
[in]c[][]配列 c[lc][ldc] (lc >= lxi)
区分多項式の区切り点における右微分係数.
[in]xi[]配列 xi[l_xi] (l_xi >= lxi + 1)
区分多項式の区切り点.
[in]lxi区分多項式の小区間数.
[in]kB-スプラインの次数. (k >= 1)
[in]ideriv微分係数の次数. (0 <= ideriv <= k - 1)
ideriv = 0の場合. B-スプラインの値を返す.
[in]x引数. (xi[0] <= x <= xi[lxi])
[in,out]inppv初期化パラメータ.
[in] ppvaluの最初の呼び出し時, 1に設定しておかなければならない.
[out] 最初の呼び出し後の処理のための情報. ユーザーが変更してはならない. 異なるスプラインは異なったinppvパラメータを持つ.
[out]info= 0: 正常終了
= -1: 入力パラメータ ldc の誤り (ldc < k)
= -4: 入力パラメータ lxi の誤り (lxi < 1)
= -5: 入力パラメータ k の誤り (k < 1)
= -6: 入力パラメータ ideriv の誤り (ideriv < 0 または ideriv >= k)
出典
SLATEC