scipy.signal.cubic#

scipy.signal.cubic(x)[source]#

Deprecated since version 1.11.0: scipy.signal.cubic is deprecated in SciPy 1.11 and will be removed in SciPy 1.13.

The exact equivalent (for a float array x) is:

>>> from scipy.interpolate import BSpline
>>> out = BSpline.basis_element([-2, -1, 0, 1, 2])(x)
>>> out[(x < -2 | (x > 2)] = 0.0

A cubic B-spline.

This is a special case of bspline, and equivalent to bspline(x, 3).

Parameters:
xarray_like

a knot vector

Returns:
resndarray

Cubic B-spline basis function values

See also

bspline

B-spline basis function of order n

quadratic

A quadratic B-spline.

Examples

We can calculate B-Spline basis function of several orders:

>>> import numpy as np
>>> from scipy.signal import bspline, cubic, quadratic
>>> bspline(0.0, 1)
1
>>> knots = [-1.0, 0.0, -1.0]
>>> bspline(knots, 2)
array([0.125, 0.75, 0.125])
>>> np.array_equal(bspline(knots, 2), quadratic(knots))
True
>>> np.array_equal(bspline(knots, 3), cubic(knots))
True