## Gridding and Interpolation

Given a set of tabulated data in n-dimensions with each dimension being described as follows:

1. {xi, yi = f (xi)},
2. {xi, yi, zi = f (xi, yi)}, or
3. {xi, yi, zi, wi = f (xi, yi, zi)}

it is possible to calculate intermediate values of the function f using interpolation. IDL includes a variety of routines to solve this type of problem.

The determination of intermediate values is based upon an interpolating function that establishes a relationship between the tabulated data points. Different algorithms employ different types of interpolating functions suitable for different types of data trends.

Unlike curve-fitting algorithms, interpolation requires that the interpolating function be an exact fit at each of the tabulated data points. Interpolation does not use any type of error analysis and its accuracy depends upon the behavior of the interpolating function between successive data points. Polynomial, spline, and nearest-neighbor are among the interpolation methods used in IDL. Kriging is another interpolation method, one which does not require an exact fit at each tabulated data point. Kriging applies a weighting to each of the tabulated data points based on spatial variance and trends among the points. Weights are computed by combining calculations of spatial continuity and anistropy within either an exponential or spherical semivariogram model.

Gridding, a topic closely related to interpolation, is the problem of creating uniformly-spaced planar data from irregularly-spaced data. IDL handles this type of problem by constructing a Delaunay triangulation. This method is highly accurate and has great utility since many of IDL's graphics routines require uniformly-gridded data. Extrapolation, the estimation of values outside the range of tabulated data, is also possible using this method.

### Routines for Gridding and Interpolation

Below is a brief description of IDL routines for gridding and interpolation.

Routine
Description
Computes array using bilinear interpolation.
Uses thin plate splines to interpolate a set of values over a regular 2D grid, from irregularly sampled data values.
Creates a regularly-gridded 3D dataset from a set of scattered 3D nodes.
Performs linear interpolation on vectors.
Returns an array of interpolates.
Interpolates set of points using kriging.
Interpolates points with a minimum curvature surface or a thin-plate-spline surface. Useful with CONTOUR.
Interpolates a surface from polar coordinates to rectangular coordinates.
Performs spherical gridding.
Establishes the type of interpolating spline.
Performs cubic spline interpolation (Numerical Recipes).
Performs cubic spline interpolation.
Performs parametric cubic spline interpolation.
Interpolates gridded set of points with a smooth quintic surface.
Constructs Delaunay triangulation of a planar set of points.
Interpolates irregularly-gridded data to a regular grid from a triangulation.
Finds the intervals within a given monotonic vector that brackets a given set of one or more search values.
Computes Voronoi polygon given Delaunay triangulation.