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

◆ _bspldr()

void _bspldr ( double  t[],
double  a[],
int  n,
int  k,
int  nderiv,
double  ad[],
int *  info 
)

B-スプライン係数より差分商を構成(bsplevによる微分値の計算用)

目的
本ルーチンはB-形式(t[], a[], n, k)を用いてbslpevによる(右)微分係数計算のための差分商の表adifを作る.

下三角行列adifは配列ad[]に列ごとに次のように格納される.
  adif(i, j) = ad[i-j+1 + (2*n-j+2)*(j-1)/2 - 1], i = j〜n, j = 1〜nderiv
引数
[in]t[]配列 t[lt] (lt >= n + k)
ノットベクトル.
[in]a[]配列 a[la] (la >= n)
B-スプライン係数.
[in]nB-スプライン係数の数. (n = ノット多重度の合計 - k)
[in]kB-スプラインの次数. (k >= 1)
[in]nderiv微分係数の数. (1 <= nderiv <= k)
nderiv = 1の場合, 0次微分係数 = 関数値 を返す.
[out]ad[]配列 ad[lad] (lad >= (2*n - nderiv + 1)*nderiv/2)
差分商の表. (bsplevの入力となる)
[out]info= 0: 正常終了
= -3: 入力パラメータ n の誤り (n < k)
= -4: 入力パラメータ k の誤り (k < 1)
= -5: 入力パラメータ nderiv の誤り (nderiv < 1 or nderiv > k)
出典
SLATEC