{ } Raw JSON

bundles / scipy 1.17.1 / scipy / interpolate / _ndbspline / NdBSpline

class

scipy.interpolate._ndbspline:NdBSpline

source: /scipy/interpolate/_ndbspline.py :28

Signature

class   NdBSpline ( t c k * extrapolate = None )

Members

Summary

Tensor product spline object.

Extended Summary

The value at point xp = (x1, x2, ..., xN) is evaluated as a linear combination of products of one-dimensional b-splines in each of the N dimensions

c[i1, i2, ..., iN] * B(x1; i1, t1) * B(x2; i2, t2) * ... * B(xN; iN, tN)

Here B(x; i, t) is the i-th b-spline defined by the knot vector t evaluated at x.

Parameters

t : tuple of 1D ndarrays

knot vectors in directions 1, 2, ... N, len(t[i]) == n[i] + k + 1

c : ndarray, shape (n1, n2, ..., nN, ...)

b-spline coefficients

k : int or length-d tuple of integers

spline degrees. A single integer is interpreted as having this degree for all dimensions.

extrapolate : bool, optional

Whether to extrapolate out-of-bounds inputs, or return nan. Default is to extrapolate.

Attributes

t : tuple of ndarrays

Knots vectors.

c : ndarray

Coefficients of the tensor-product spline.

k : tuple of integers

Degrees for each dimension.

extrapolate : bool, optional

Whether to extrapolate or return nans for out-of-bounds inputs. Defaults to true.

Methods

__call__
derivative
design_matrix

Notes

Array API Standard Support

NdBSpline has experimental support for Python Array API Standard compatible backends in addition to NumPy. Please consider testing these features by setting an environment variable SCIPY_ARRAY_API=1 and providing CuPy, PyTorch, JAX, or Dask arrays as array arguments. The following combinations of backend and device (or other capability) are supported.

====================  ====================  ====================
Library               CPU                   GPU
====================  ====================  ====================
NumPy                 ✅                     n/a                 
CuPy                  n/a                   ⛔                   
PyTorch               ✅                     ⛔                   
JAX                   ⚠️ no JIT
Dask                  ⛔                     n/a                 
====================  ====================  ====================

See dev-arrayapi for more information.

See also

BSpline

a one-dimensional B-spline object

NdPPoly

an N-dimensional piecewise tensor product polynomial

Aliases

  • scipy.interpolate.NdBSpline

Referenced by

This package