SciPy

scipy.interpolate.splev

scipy.interpolate.splev(x, tck, der=0, ext=0)[source]

Evaluate a B-spline or its derivatives.

Given the knots and coefficients of a B-spline representation, evaluate the value of the smoothing polynomial and its derivatives. This is a wrapper around the FORTRAN routines splev and splder of FITPACK.

Parameters:
x : array_like

An array of points at which to return the value of the smoothed spline or its derivatives. If tck was returned from splprep, then the parameter values, u should be given.

tck : 3-tuple or a BSpline object

If a tuple, then it should be a sequence of length 3 returned by splrep or splprep containing the knots, coefficients, and degree of the spline. (Also see Notes.)

der : int, optional

The order of derivative of the spline to compute (must be less than or equal to k).

ext : int, optional

Controls the value returned for elements of x not in the interval defined by the knot sequence.

  • if ext=0, return the extrapolated value.
  • if ext=1, return 0
  • if ext=2, raise a ValueError
  • if ext=3, return the boundary value.

The default value is 0.

Returns:
y : ndarray or list of ndarrays

An array of values representing the spline function evaluated at the points in x. If tck was returned from splprep, then this is a list of arrays representing the curve in N-dimensional space.

Notes

Manipulating the tck-tuples directly is not recommended. In new code, prefer using BSpline objects.

References

[1]C. de Boor, “On calculating with b-splines”, J. Approximation Theory, 6, p.50-62, 1972.
[2]M. G. Cox, “The numerical evaluation of b-splines”, J. Inst. Maths Applics, 10, p.134-149, 1972.
[3]P. Dierckx, “Curve and surface fitting with splines”, Monographs on Numerical Analysis, Oxford University Press, 1993.