1 Fundamentals

Interpolation is the process of constructing a function that matches given data at specified points and provides estimates between them. It is a core idea in numerical analysis because many scientific and engineering problems supply values only at discrete locations, while calculations often require information at intermediate points.

1.1 Definition and purpose

The main purpose of interpolation is to produce a practical approximation from sampled data. If values of a quantity are known at certain positions, an interpolant can estimate the quantity elsewhere within the same range. This makes interpolation useful for drawing smooth curves, evaluating tabulated functions, and supporting computational models that depend on continuous input.

1.2 Interpolation versus extrapolation

Interpolation refers to estimating values inside the interval covered by the known data, while extrapolation extends beyond that interval. Interpolation is usually more reliable because it relies on local information from observed points. Extrapolation is more uncertain, since behavior outside the data range may differ sharply from the pattern within it.

1.3 Interpolating function and data points

An interpolating function is a formula or algorithm chosen so that it agrees exactly with the supplied data points. These points are often called nodes or sample points. In one common setting, the data consist of pairs \((x_i, y_i)\), and the interpolant is required to satisfy \(f(x_i) = y_i\) for each index \(i\).

1.4 Assumptions and smoothness requirements

Different interpolation methods assume different levels of regularity in the underlying function. Some methods require only that the data be ordered, while others work best when the function is continuous or differentiable. Smoothness assumptions influence the choice of interpolant, the accuracy of the estimate, and the visual quality of the resulting curve.

2 One-dimensional interpolation

One-dimensional interpolation concerns data that vary along a single independent variable. It includes the simplest line-based formulas as well as higher-order constructions that achieve greater accuracy by using more sample points.

2.1 Linear interpolation

Linear interpolation joins two neighboring data points with a straight segment and uses that segment to estimate intermediate values. It is easy to compute, stable in many practical settings, and widely used when high precision is not required. Its simplicity makes it a common default method for tables, graphics, and basic numerical routines.

2.2 Polynomial interpolation

Polynomial interpolation constructs a single polynomial that passes through all selected data points. For a set of \(n+1\) points, there is a unique polynomial of degree at most \(n\) that fits them exactly, provided the nodes are distinct. Although this approach can be highly accurate for smooth data, large degrees may lead to oscillation and numerical sensitivity.

2.2.1 Lagrange form

The Lagrange form expresses the interpolating polynomial as a sum of basis polynomials, each associated with one data point. Every basis function equals 1 at its own node and 0 at the others, which makes the formula conceptually clear. This representation is useful for theoretical derivations and small-scale problems.

2.2.2 Newton form

The Newton form builds the interpolating polynomial incrementally, adding one term at a time. It is often preferred in computation because new data points can be incorporated without recomputing the entire expression. The nested structure also makes the polynomial efficient to evaluate.

2.2.3 Divided differences

Divided differences provide the coefficients used in Newton interpolation. They are computed recursively from the data and summarize how the function changes across the nodes. This table-based method is especially convenient for constructing the polynomial and for updating it when additional points are introduced.

2.3 Piecewise interpolation

Piecewise interpolation divides the domain into subintervals and uses a separate formula on each part. This approach can reduce oscillations and improve flexibility compared with a single global polynomial. It is especially effective when the data vary unevenly or when local control is more important than a single closed-form expression.

2.3.1 Stepwise methods

Stepwise methods use simple local rules, such as holding a value constant over each interval or selecting the nearest sample. These techniques are inexpensive and easy to implement, though they may produce discontinuities or abrupt transitions. They are often suitable for coarse approximations and real-time applications.

2.3.2 Higher-order segments

Higher-order piecewise methods use polynomials of degree greater than one on each subinterval. By fitting local curvature, they can produce smoother and more accurate approximations than linear segments. Their design typically balances fidelity to the data against the risk of overfitting or excessive oscillation.

3 Spline interpolation

Spline interpolation uses piecewise polynomials joined under continuity constraints. It is widely valued because it combines local control with smooth transitions, yielding curves that are both accurate and visually natural.

3.1 Piecewise polynomial splines

A spline is a function made from polynomial pieces connected at knots. The pieces are chosen so that the overall curve remains well behaved across the whole interval. Compared with high-degree global polynomials, splines usually offer better numerical stability and easier adjustment of local features.

3.2 Cubic splines

Cubic splines are among the most common interpolation tools. Each segment is a cubic polynomial, and the pieces are matched so that the function and its first two derivatives remain continuous at the knots. This produces a smooth curve with moderate computational cost and strong practical performance.

3.3 Boundary conditions

To determine a spline uniquely, additional conditions must be specified at the ends of the interval. These boundary conditions control how the curve behaves near the endpoints and can influence the overall shape. Different choices are used depending on the available information and the desired smoothness.

3.3.1 Natural spline

A natural spline imposes zero second derivative at the endpoints. This choice creates a relaxed end behavior and is often used when no endpoint slope information is known. It tends to reduce curvature near the boundaries.

3.3.2 Clamped spline

A clamped spline specifies the first derivative at the endpoints. When endpoint slopes are available from measurement or theory, this method can improve accuracy and better reflect the expected shape of the function. It is useful when boundary behavior is important.

3.3.3 Not-a-knot spline

A not-a-knot spline removes the distinction between the first two and last two polynomial pieces by requiring higher smoothness at the first and last interior knots. This condition is common in software because it avoids imposing artificial endpoint constraints and often gives good results automatically.

3.4 Spline smoothness and continuity

The appeal of spline interpolation lies in its smoothness. Depending on the construction, a spline may be continuous in the function value alone or also in several derivatives. Greater continuity usually produces a more natural curve, though it may also require stronger assumptions about the data.

4 Specialized interpolation methods

Beyond standard polynomial and spline techniques, many specialized methods have been developed for particular kinds of data or mathematical structure. These methods often trade generality for efficiency, accuracy, or ease of implementation in specific contexts.

4.1 Hermite interpolation

Hermite interpolation matches both function values and derivative values at selected nodes. By incorporating slope information, it can achieve higher accuracy than value-only methods with the same number of points. It is useful when derivative data are available from theory, measurement, or previous computation.

4.2 Rational interpolation

Rational interpolation uses a ratio of polynomials rather than a single polynomial. This form can represent sharp changes, poles, and other features that are difficult for ordinary polynomials to capture. It is sometimes more flexible than polynomial methods, though it may be more delicate to compute.

4.3 Trigonometric interpolation

Trigonometric interpolation represents periodic data using sums of sine and cosine functions. It is especially appropriate for periodic signals and functions defined on circular domains. When the data are smooth and periodic, it can offer excellent accuracy and efficient evaluation.

4.4 Nearest-neighbor interpolation

Nearest-neighbor interpolation assigns to an intermediate point the value of the closest sample. It is the simplest local method and requires minimal computation. Although it can create visible discontinuities, it is useful when speed matters more than smoothness.

4.5 Interpolation on irregular grids

When data are not evenly spaced, interpolation must adapt to irregular node placement. Such cases arise in experimental measurements, adaptive meshes, and scattered data settings. Methods for irregular grids often require careful organization of the points to maintain accuracy and computational efficiency.

5 Multivariate interpolation

Multivariate interpolation extends interpolation to functions of two or more variables. It is used for surfaces, volumetric data, and multidimensional numerical models, where values are known only at grid points or scattered locations.

5.1 Bilinear interpolation

Bilinear interpolation estimates values on a rectangle by interpolating first in one direction and then in the other. It is simple, fast, and common in image resampling and grid-based computation. The resulting surface is continuous but not smoothly curved across cell boundaries.

5.2 Bicubic interpolation

Bicubic interpolation uses cubic polynomials in two variables, typically over a rectangular neighborhood. It produces smoother results than bilinear interpolation and is often chosen when visual quality or derivative continuity is important. The method is widely used in image scaling and surface approximation.

5.3 Tensor-product methods

Tensor-product methods build multidimensional interpolants from one-dimensional components. They are convenient on regular grids because they allow separable construction and evaluation. Their structure can simplify implementation, though the amount of data needed grows rapidly with dimension.

5.4 Interpolation in higher dimensions

In dimensions above two, interpolation becomes more complex because the geometry of the data and the number of neighboring points increase. Methods may use simplices, scattered-data schemes, or hierarchical grids. Computational cost and data organization become major concerns as dimension grows.

6 Error analysis

Error analysis studies how closely an interpolant approximates the target function and how that error depends on the data and method. It is essential for deciding whether an interpolation scheme is suitable for a given problem.

6.1 Interpolation error formula

Interpolation error formulas express the difference between the original function and its interpolant in terms of derivatives and node placement. Such formulas show how accuracy improves when the function is smooth and the nodes are chosen well. They also help explain why some methods perform better than others on the same dataset.

6.2 Convergence behavior

Convergence describes how the interpolation error decreases as more data points are used. For well-behaved functions, finer node spacing or higher-order schemes can lead to rapid improvement. However, convergence may be uneven if the function has sharp features or if the node distribution is poor.

6.3 Runge phenomenon

The Runge phenomenon is the tendency of high-degree polynomial interpolation to oscillate strongly near the edges of an interval, especially with equally spaced nodes. It demonstrates that adding more points does not always improve a global polynomial approximation. Spline and Chebyshev-type approaches are often used to avoid this behavior.

6.4 Stability and conditioning

Stability concerns how errors in the data or arithmetic affect the computed interpolant. Conditioning measures how sensitive the interpolation problem is to small perturbations. A method may be mathematically correct yet still perform poorly in finite-precision arithmetic if it is ill-conditioned.

7 Numerical implementation

Practical interpolation requires algorithms that are both accurate and efficient. Implementation choices affect speed, memory use, robustness, and the ability to handle large or irregular datasets.

7.1 Algorithmic considerations

Good interpolation algorithms minimize redundant computation and reduce sensitivity to rounding error. They often use recursive formulas, local neighborhoods, or precomputed coefficients. The best choice depends on the size of the dataset, the desired smoothness, and whether the interpolant must be updated repeatedly.

7.2 Computational complexity

The cost of interpolation varies widely by method. Simple local schemes are fast to evaluate, while global polynomial fits and multivariate constructions may require more time and memory. Complexity becomes especially important in applications involving large grids or real-time processing.

7.3 Interpolation software and libraries

Many mathematical and scientific software systems provide built-in interpolation routines. These libraries typically include linear, spline, and multidimensional methods, along with options for boundary conditions and grid structure. Standard tools help ensure reliable implementations and reduce the need for custom coding.

7.4 Handling missing or noisy data

Real datasets may contain missing entries or measurement noise. Interpolation can fill gaps, but exact matching to noisy values may produce unrealistic results. In such cases, practitioners may combine interpolation with smoothing, filtering, or robust fitting to obtain a more meaningful approximation.

8 Applications

Interpolation appears in nearly every area of computational science where continuous values must be inferred from discrete samples. Its versatility makes it a foundational tool for modeling, visualization, and numerical simulation.

8.1 Scientific computing

In scientific computing, interpolation helps evaluate tabulated functions, transfer data between grids, and support numerical solvers. It is frequently used in simulations that require values at points not directly stored in memory. Accurate interpolation can improve both efficiency and overall solution quality.

8.2 Computer graphics and image processing

Graphics and imaging rely heavily on interpolation for scaling, rotation, texture mapping, and resampling. Smooth methods such as bicubic interpolation can improve visual appearance, while simpler methods may be chosen for speed. The choice of technique affects sharpness, blur, and artifact formation.

8.3 Engineering and physics

Engineers and physicists use interpolation to analyze experimental measurements, estimate intermediate states, and approximate material or system behavior. It is common in control systems, finite element workflows, and data-driven modeling. Reliable interpolation supports calibration, simulation, and design.

8.4 Data analysis and curve fitting

Interpolation is often used to connect observed data points with a smooth curve for visualization or exploratory analysis. While curve fitting may intentionally approximate noisy data without passing through every point, interpolation provides exact agreement at the samples. This distinction is important when the goal is either faithful reconstruction or statistical summarization.