INTERPOLATION
Datasets for Interpolation


INTERPOLATION is a dataset directory which contains examples of data for the interpolation problem.

The interpolation problem starts with a set of N data values, or "points", often 2-dimensional (x,y) pairs. The task is to determine a function y=f(x) which can be evaluated for any value of the argument x, with the property that yi=f(xi) for each data value.

When many data values are available, a piecewise linear interpolant function often looks like a smoothly varying curve. When the data is more sparse, or if there are occasional gaps in the data, the task of finding an interpolation function that "looks right" can be difficult.

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Related Data and Programs:

DIVDIF, a FORTRAN90 library which includes many routines to construct and evaluate divided difference interpolants.

HERMITE, a FORTRAN90 library which computes the Hermite interpolant, a polynomial that matches function values and derivatives.

INTERP, a FORTRAN90 library which can compute interpolants to data.

PPPACK, a FORTRAN90 library which implements Carl de Boor's piecewise polynomial functions, including, particularly, cubic splines.

SPLINE, a FORTRAN90 library which includes many routines to construct and evaluate spline interpolants and approximants.

TEST_APPROX, a FORTRAN90 library which defines tests for approximation and interpolation algorithms.

TEST_INTERP, a FORTRAN90 library which defines a number of test problems for interpolation.

Reference:

  1. Fred Fritsch, Ralph Carlson,
    Monotone Piecewise Cubic Interpolation,
    SIAM Journal on Numerical Analysis,
    Volume 17, Number 2, April 1980, pages 238-246.
  2. Larry Irvine, Samuel Marin, Philip Smith,
    Constrained Interpolation and Smoothing,
    Constructive Approximation,
    Volume 2, Number 1, December 1986, pages 129-151.
  3. ETY Lee,
    Choosing Nodes in Parametric Curve Interpolation,
    Computer-Aided Design,
    Volume 21, Number 6, July/August 1989, pages 363-370.
  4. Hans-Joerg Wenz,
    Interpolation of Curve Data by Blended Generalized Circles,
    Computer Aided Geometric Design,
    Volume 13, Number 8, November 1996, pages 673-680.

Files:

DATA01 is due to Hans-Joerg Wenz. It is an example of good data, which is dense enough in areas where the expected curvature of the interpolant is large. Good results can be expected with almost any reasonable interpolation method.

DATA02 is due to ETY Lee of Boeing. Data near the corners is more dense than in regions of small curvature. A local interpolation method will produce a more plausible interpolant than a nonlocal interpolation method, such as cubic splines.

DATA03 is due to Fred Fritsch and Ralph Carlson. This data can cause problems for interpolation methods. There are sudden changes in direction, and at the same time, sparsely-placed data. This can cause an interpolant to overshoot the data in a way that seems implausible.

DATA04 is due to Larry Irvine, Samuel Marin and Philip Smith. This data can cause problems for interpolation methods. There are sudden changes in direction, and at the same time, sparsely-placed data. This can cause an interpolant to overshoot the data in a way that seems implausible.

DATA05 is due to Larry Irvine, Samuel Marin and Philip Smith. This data can cause problems for interpolation methods. There are sudden changes in direction, and at the same time, sparsely-placed data. This can cause an interpolant to overshoot the data in a way that seems implausible.

DATA06 is known as Runge's problem. The function f(x) = 1/(1+25*x*x) is evaluated at N points X in [-1,+1]. The points X may be equally spaced, or Chebyshev points (cosines of angles equally spaced between 0 and pi). Interpolation at the equally spaced data points becomes increasingly oscillatory.

DATA07 is a "Dirac Delta" function that is 1 at 0, followed by 16 values of 0. A polynomial interpolant to this data will oscillate wildly.

You can go up one level to the DATASETS directory.


Last revised on 24 April 2011.