Skip to content

B-Spl Var knots

The B-Spline Var knots algorithm is part of the Estimate Gridded Data option in the Non-Parametric menu. This algorithm offers a form of smoothing.

Author

Carl de Boor
IMSL

References

Carl de Boor, "A Practical Guide to Splines", Springer-Velag, 1978, p332-358.
IMSL Library, BSLS2

Description

This option offers a variable knot least-squares two-dimensional tensor product B-Spline. The orders and knot count can be set separately for the X and Y directions. The default is a bicubic (order 3 in both X and Y). Orders two through five are available. The algorithm does not offer extrapolation.

Smoothing and Interpolation

The spline smoothes the data except at full knot counts where an exact interpolation occurs. The x and y knots will equal the number of x and y mesh values. Because of the oscillations which can occur with higher order splines, a bicubic spline is recommended unless a smooth second or higher derivative is needed.

A biquadratic order 2/2 spline offers a smooth surface and continuous but not smooth first partial derivatives.
A bicubic order 3/3 spline offers a smooth surface, smooth first partial derivatives, and continuous second derivatives.
A biquartic order 4/4 spline offers a smooth surface, smooth first and second partial derivatives, and continuous third derivatives.
A biquintic order 5/5 spline offers a smooth surface, smooth first, second, and third partial derivatives, and continuous fourth derivatives.

Note that the knots are placed linearly in the X and Y domain. A knot can occur very close to an individual data point, or quite removed from such. Because the residuals will vary with the proximity to knots, this algorithm should be regarded as a good smooth surface generator, but not as a data smoothing procedure.

Extrapolation

The algorithm offers no extrapolation. Points outside the rectangular bounds of the data are mapped to the bounds and evaluated there.

Estimated Partial Derivatives

The algorithm computes exact partial derivatives. These are used for graphing the partial derivative surfaces and for partial derivatives computed in the Evaluation procedure.

Estimated Volumes

The algorithm computes exact integrals within the bounds of the data. If any of the integration limits are outside the bounds, the spline is used to interpolate a uniform grid of 10,000 points. A full knot B-spline is fitted to this generated data and this second B-spline is then integrated. The precision error reported in the Evaluation procedure will be the fractional difference with a similar 2,500 node integration. Note that such integrations will involve values that have been forced to the bounds. A repeat evaluation with the same limits will use a numeric double integration procedure. A very fast double Gaussian quadrature procedure is first attempted to 1E-5 precision. If this is unsuccessful, a double adaptive quadrature procedure is then used. This second evaluation is offered as a verification of accuracy.

Considerations

This algorithm produces smooth interpolated surfaces and can aid in producing smooth derivative surfaces. It is not recommended for smoothing data for subsequent parametric fitting.

Algorithm Adjustments

This algorithm has four user adjustments, the order of the spline in the X and Y directions, and the knot count in the X and Y direction. Orders 2 through 5 are available. The knot count will range from 4 to the number of elements in the X or Y grid array.