gsl_bspline_alloc($k, $nbreak)

This function allocates a workspace for computing Bsplines of order $k. The
number of breakpoints is given by $nbreak. This leads to n = $nbreak + $k  2
basis functions. Cubic Bsplines are specified by $k = 4.

gsl_bspline_free($w)

This function frees the memory associated with the workspace $w.

gsl_bspline_ncoeffs($w)

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

gsl_bspline_order


gsl_bspline_nbreak


gsl_bspline_breakpoint


gsl_bspline_knots($breakpts, $w)

This function computes the knots associated with the given breakpoints inside
the vector $breakpts and stores them internally in $w>{knots}.

gsl_bspline_knots_uniform($a, $b, $w)

This function assumes uniformly spaced breakpoints on [$a,$b] and constructs
the corresponding knot vector using the previously specified nbreak parameter.
The knots are stored in $w>{knots}.

gsl_bspline_eval($x, $B, $w)

This function evaluates all Bspline basis functions at the position $x and
stores them in the vector $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.
For more informations on the functions, we refer you to the GSL offcial documentation:
http://www.gnu.org/software/gsl/manual/html_node/

