Spline Interpolation
Spline interpolation uses piecewise polynomials to achieve smooth approximation without the oscillations of high-degree polynomial interpolation, providing the foundation for modern computer graphics and CAD systems.
Given data points with , a cubic spline satisfies:
- is a cubic polynomial on each interval
- for all (interpolation condition)
- (continuity)
- (smooth first derivative)
- (smooth second derivative)
Additional boundary conditions are needed to make the system determined. Common choices include natural spline (), clamped spline (specified , ), or periodic spline.
Cubic splines balance computational efficiency with smoothness. Linear splines ( continuous) are simple but have discontinuous derivatives. Quadratic splines require asymmetric boundary conditions. Cubic splines provide continuity and are the lowest-degree polynomials achieving this naturally.
For three points , , , construct the natural cubic spline.
On : On :
The interpolation and continuity conditions give 6 equations in 8 unknowns. Natural boundary conditions and provide 2 more, yielding a tridiagonal linear system:
This spline is continuous at and interpolates all three points.
Optimality of Cubic Splines: Among all functions interpolating given data, the natural cubic spline minimizes:
This variational property models a thin elastic beam passing through the data points, explaining why splines appear "natural" and smooth. The minimization leads to a tridiagonal system that can be solved efficiently in operations.
Practical spline implementations use parametric representations for curves and surfaces. B-splines provide local control (changing one control point affects only nearby curve segments) and form the basis of NURBS (Non-Uniform Rational B-Splines) used in CAD/CAM systems. Tensor product splines extend to multidimensional approximation for image processing and scientific visualization.
Splines avoid the Runge phenomenon that plagues high-degree polynomial interpolation. While polynomial error grows as with degree and spacing , cubic spline error is , independent of the number of points. This makes splines practical for large datasets where high-degree polynomials would be numerically unstable.