| • Science | • People | • Locations | • Timeline |
| Contents | ||
In the mathematical subfield of numerical analysis interpolation is a method of constructing new data points from a discrete set of known data points. According to the Oxford English Dictionary, to interpolate is
In engineering and science one often has a number of data points, as obtained by sampling or some experiment, and tries to construct a function which closely fits those data points - see curve fitting.
A different problem which is closely related to interpolation is the approximation of a complicated function by a simple function. Suppose we know the function but it is too complex to evaluate efficiently. Then we could pick a few known data points from the complicated function and try to interpolate those data points to construct a simpler function. Of course when using the simple function to calculate new data points we usually do not receive the same result as when using the orginal function, but depending on the problem domain and the interpolation method used the gain in simplicity might offset the error.
Given a sequence of n distinct numbers xk called nodes and for each xk a second number yk, we are looking for a function f so that
A pair xk,yk is called a data point and f is called the interpolant for the data points.
When the yk are given by a known function we sometimes write fk.
For example, suppose we have a table like this, which gives some values of an known function f.
| x | f(x) |
|---|---|
| 0 | 0 |
| 1 | 0.8415 |
| 2 | 0.9093 |
| 3 | 0.1411 |
| 4 | −0.7568 |
| 5 | −0.9589 |
| 6 | −0.2794 |
What value does the function have at, say, x = 2.5? Interpolation answers questions like this.
There are many different interpolation methods, some of which are described below. Some of the things to take into account when choosing an appropriate algorithm are: How accurate is the method? How expensive is it? How smooth is the interpolant? How many data points are needed?
Main article: Linear interpolation
One of the simplest methods is linear interpolation (sometimes known as lerp). Consider the above example of determining f(2.5). Since 2.5 is midway between 2 and 3, it is reasonable to take f(2.5) midway between f(2) = 0.9093 and f(3) = 0.1411, which yields 0.5252.
Generally, linear interpolation takes two data points, say (xa,ya) and (xb,yb), and the interpolant is given by
This formula can be interpreted as a weighted average.
Linear interpolation is quick and easy, but it is not very precise. Another disadvantage is that the interpolant is not differentiableCalculus In mathematics, the derivative of a function is one of the two central concepts of calculus. The inverse of a derivative is called the antiderivative, or indefinite integral. The derivative of a function at a certain point is a measure of the rat at the point xk.
The following error estimate shows that linear interpolation is not very precise. Denote the function which we want to interpolate by g, and suppose that x lies between xa and xb and that g is twice continuously differentiable. Then the linear interpolation error is
In words, the error is proportional to the square of the distance between the data points. The error of some other methods, including polynomial interpolation and spline interpolation (described below), is proportional to higher powers of the distance between the data points. These methods also produce smoother interpolants.