|
|
◆ _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] | n | B-スプライン係数の数. (n = ノット多重度の合計 - k) |
| [in] | k | B-スプラインの次数. (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
|