bundles / scipy 1.17.1 / scipy / interpolate / _fitpack_impl / bisplrep
function
scipy.interpolate._fitpack_impl:bisplrep
Signature
def bisplrep ( x , y , z , w = None , xb = None , xe = None , yb = None , ye = None , kx = 3 , ky = 3 , task = 0 , s = None , eps = 1e-16 , tx = None , ty = None , full_output = 0 , nxest = None , nyest = None , quiet = 1 ) Summary
Find a bivariate B-spline representation of a surface.
Extended Summary
Given a set of data points (x[i], y[i], z[i]) representing a surface z=f(x,y), compute a B-spline representation of the surface. Based on the routine SURFIT from FITPACK.
Parameters
x, y, z: ndarrayRank-1 arrays of data points.
w: ndarray, optionalRank-1 array of weights. By default
w=np.ones(len(x)).xb, xe: float, optionalEnd points of approximation interval in
x. By defaultxb = x.min(), xe=x.max().yb, ye: float, optionalEnd points of approximation interval in
y. By defaultyb=y.min(), ye = y.max().kx, ky: int, optionalThe degrees of the spline (1 <= kx, ky <= 5). Third order (kx=ky=3) is recommended.
task: int, optionalIf task=0, find knots in x and y and coefficients for a given smoothing factor, s. If task=1, find knots and coefficients for another value of the smoothing factor, s. bisplrep must have been previously called with task=0 or task=1. If task=-1, find coefficients for a given set of knots tx, ty.
s: float, optionalA non-negative smoothing factor. If weights correspond to the inverse of the standard-deviation of the errors in z, then a good s-value should be found in the range
(m-sqrt(2*m),m+sqrt(2*m))where m=len(x).eps: float, optionalA threshold for determining the effective rank of an over-determined linear system of equations (0 < eps < 1).
epsis not likely to need changing.tx, ty: ndarray, optionalRank-1 arrays of the knots of the spline for task=-1
full_output: int, optionalNon-zero to return optional outputs.
nxest, nyest: int, optionalOver-estimates of the total number of knots. If None then
nxest = max(kx+sqrt(m/2),2*kx+3),nyest = max(ky+sqrt(m/2),2*ky+3).quiet: int, optionalNon-zero to suppress printing of messages.
Returns
tck: array_likeA list [tx, ty, c, kx, ky] containing the knots (tx, ty) and coefficients (c) of the bivariate B-spline representation of the surface along with the degree of the spline.
fp: ndarrayThe weighted sum of squared residuals of the spline approximation.
ier: intAn integer flag about splrep success. Success is indicated if ier<=0. If ier in [1,2,3] an error occurred but was not raised. Otherwise an error is raised.
msg: strA message corresponding to the integer flag, ier.
Notes
See bisplev to evaluate the value of the B-spline given its tck representation.
If the input data is such that input dimensions have incommensurate units and differ by many orders of magnitude, the interpolant may have numerical artifacts. Consider rescaling the data before interpolation.
Array API Standard Support
bisplrep is not in-scope for support of Python Array API Standard compatible backends other than NumPy.
See dev-arrayapi for more information.
Examples
Examples are given :ref:`in the tutorial <tutorial-interpolate_2d_spline>`.See also
- BivariateSpline
- UnivariateSpline
- splev
- splint
- splprep
- splrep
- sproot
Aliases
-
scipy.interpolate.bisplrep