pwl_interp_2d_scattered, a MATLAB code which produces a piecewise linear interpolant to 2D scattered data, that is, data that is not guaranteed to lie on a regular grid.
This program computes a Delaunay triangulation of the data points, and then constructs an interpolant triangle by triangle. Over a given triangle, the interpolant is the linear function which matches the data already given at the vertices of the triangle.
PWL_INTERP_2D requires the R8LIB library. The test code requires the TEST_INTERP_2D library.
The computer code and data files described and made available on this web page are distributed under the MIT license
pwl_interp_2d_scattered is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version.
lagrange_interp_2d, a MATLAB code which defines and evaluates the Lagrange polynomial p(x,y) which interpolates a set of data depending on a 2D argument that was evaluated on a product grid, so that p(x(i),y(j)) = z(i,j).
pwl_interp_2d, a MATLAB code which evaluates a piecewise linear interpolant to data defined on a regular 2D grid.
rbf_interp_2d, a MATLAB code which defines and evaluates radial basis function (RBF) interpolants to scattered 2D data.
shepard_interp_2d, a MATLAB code which defines and evaluates Shepard interpolants to scattered 2D data, based on inverse distance weighting.
test_interp_2d, a MATLAB code which defines test problems for interpolation of regular or scattered data z(x,y), depending on a 2D argument.
triangulation, a MATLAB code which performs various operations on order 3 (linear) or order 6 (quadratic) triangulations.
triangulation_order3_contour, a MATLAB code which makes contour plot of scattered data, or of data defined on an order 3 triangulation.
vandermonde_interp_2d, a MATLAB code which finds a polynomial interpolant to data z(x,y) of a 2D argument by setting up and solving a linear system for the polynomial coefficients, involving the Vandermonde matrix.