The following interpolator types all operate on regular grids.

- The
`BilinearInterpolator`

and`BicubicInterpolator`

will work with any regular, unevenly spaced grids. - The
`BicubicSplineInterpolator`

expects uniform spacing in each dimension, although the spacing on one axis doesn't have to match the other. This interpolator estimates derivatives using finite differences to construct the splines. - The
`BichebyshevInterpolator`

must have the usual Chebyshev spacing in each direction, but it can have a different number of points on each axis.

Interpolators | Method |
---|---|

`BilinearInterpolator` | piecewise linear |

`BicubicInterpolator` | piecewise cubic (no smoothness guarantee) |

`BichebyshevInterpolator` | Chebyshev expansions |

`BasicInterpolators.BilinearInterpolator`

— Type`BilinearInterpolator(x, y, Z, boundaries=StrictBoundaries())`

Construct a `BilinearInterpolator`

for the grid of points points defined by coordinates `x`

,`y`

and values `Z`

.

`BilinearInterpolator(f, xa, xb, nx, ya, yb, ny, boundaries=StrictBoundaries())`

Construct a `BilinearInterpolator`

for the function `f`

using a grid of `nx`

points evenly spaced on the first axis in [`xa`

,`xb`

] and `ny`

points evenly spaced on the second axis in [`ya`

,`yb`

].

`BasicInterpolators.BicubicInterpolator`

— Type`BicubicInterpolator(x, y, Z, boundaries=StrictBoundaries())`

Construct a `BicubicInterpolator`

for the grid of points points defined by coordinates `x`

,`y`

and values `Z`

.

`BicubicInterpolator(f, xa, xb, nx, ya, yb, ny, boundaries=StrictBoundaries())`

Construct a `BicubicInterpolator`

for the function `f`

using a grid of `nx`

points evenly spaced on the first axis in [`xa`

,`xb`

] and `ny`

points evenly spaced on the second axis in [`ya`

,`yb`

].

`BasicInterpolators.BichebyshevInterpolator`

— Type`BichebyshevInterpolator(x, y, Z)`

Construct a `BichebyshevInterpolator`

for the grid of points defined by coordinates (`x`

,`y`

) and values `Z`

. The given points must lie on a chebyshev grid in each direction. These can be generated with the `chebygrid`

function or the interpolator can be constructed directly from a function using the method below.

The Bichebyshev interpolator is *not thread-safe*. It computes a cosine expansion and does some linear algebra in-place using arrays stored with the object. A single `BichebyshevInterpolator`

should never be called by multiple threads at once.

`BichebyshevInterpolator(f, xa, xb, nx, ya, yb, ny)`

Construct a `BichebyshevInterpolator`

for the function `f`

using a grid of `nx`

points on the first axis in [`xa`

,`xb`

] and `ny`

points on the second axis in [`ya`

,`yb`

].