### 40.2 Initializing the B-splines solver

The computation of B-spline functions requires a preallocated workspace of type `gsl_bspline_workspace`.

Function: gsl_bspline_workspace * gsl_bspline_alloc (const size_t k, const size_t nbreak)

  This function allocates a workspace for computing B-splines of order k. The number of breakpoints is given by nbreak. This leads to n = nbreak + k - 2 basis functions. Cubic B-splines are specified by k = 4. The size of the workspace is O(2k^2 + 5k + nbreak).

Function: void gsl_bspline_free (gsl_bspline_workspace * w)

  This function frees the memory associated with the workspace w.