Next: , Previous: Constructing the knots vector, Up: Basis Splines


38.4 Evaluation of B-splines

— Function: int gsl_bspline_eval (const double x, gsl_vector * B, gsl_bspline_workspace * w)

This function evaluates all B-spline basis functions at the position x and stores them in B, so that the ith element of B is B_i(x). B must be of length n = nbreak + k - 2. This value may also be obtained by calling gsl_bspline_ncoeffs. It is far more efficient to compute all of the basis functions at once than to compute them individually, due to the nature of the defining recurrence relation.

— Function: int gsl_bspline_eval_nonzero (const double x, gsl_vector * Bk, size_t * istart, size_t * iend, gsl_bspline_workspace * w)

This function evaluates all potentially nonzero B-spline basis functions at the position x and stores them in Bk, so that the ith element of Bk is B_(istart+i)(x). The last element of Bk is B_(iend)(x). Bk must be of length k. Only returning nonzero basis functions allows users to more cheaply perform tasks requiring linear combinations of the basis functions, e.g. when evaluating an interpolated function.

— Function: size_t gsl_bspline_ncoeffs (gsl_bspline_workspace * w)

This function returns the number of B-spline coefficients given by n = nbreak + k - 2.


The GNU Scientific Library - a free numerical library licensed under the GNU GPL
Back to the GNU Scientific Library Homepage