NdBSpline#
- class scipy.interpolate.NdBSpline(t, c, k, *, extrapolate=None)[source]#
Tensor product spline object.
The value at point
xp = (x1, x2, ..., xN)
is evaluated as a linear combination of products of one-dimensional b-splines in each of theN
dimensions:c[i1, i2, ..., iN] * B(x1; i1, t1) * B(x2; i2, t2) * ... * B(xN; iN, tN)
Here
B(x; i, t)
is thei
-th b-spline defined by the knot vectort
evaluated atx
.- Parameters:
- ttuple of 1D ndarrays
knot vectors in directions 1, 2, … N,
len(t[i]) == n[i] + k + 1
- cndarray, shape (n1, n2, …, nN, …)
b-spline coefficients
- kint or length-d tuple of integers
spline degrees. A single integer is interpreted as having this degree for all dimensions.
- extrapolatebool, optional
Whether to extrapolate out-of-bounds inputs, or return nan. Default is to extrapolate.
- Attributes:
- ttuple of ndarrays
Knots vectors.
- cndarray
Coefficients of the tensor-product spline.
- ktuple of integers
Degrees for each dimension.
- extrapolatebool, optional
Whether to extrapolate or return nans for out-of-bounds inputs. Defaults to true.
Methods
__call__
(xi, *[, nu, extrapolate])Evaluate the tensor product b-spline at
xi
.design_matrix
(xvals, t, k[, extrapolate])Construct the design matrix as a CSR format sparse array.