pwl_interp_2d, an Octave code which evaluates a piecewise linear interpolant of data depending on a 2D argument, defined on on a product grid, so that p(x(i),y(j)) = z(i,j).

The code 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 is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:


lagrange_interp_2d, a FORTRAN90 library 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).

padua, an Octave code which returns the points and weights for Padu sets, useful for interpolation in 2D. MATLAB graphics are used to plot the points.

pwl_interp_1d, an Octave code which interpolates a set of data using a piecewise linear function.

r8lib, an Octave code which contains many utility routines using double precision real (R8) arithmetic.

rbf_interp_2d, an Octave code which defines and evaluates radial basis function (RBF) interpolants to 2D data.

shepard_interp_2d, an Octave code which defines and evaluates Shepard interpolants to 2D data, based on inverse distance weighting.

test_interp_2d, an Octave code which defines test problems for interpolation of data z(x,y), depending on a 2D argument.

toms886, an Octave code which defines the Padua points for interpolation in a 2D region, including the rectangle, triangle, and ellipse, by Marco Caliari, Stefano de Marchi, Marco Vianello. This is a MATLAB version of ACM TOMS algorithm 886.

vandermonde_interp_2d, an Octave 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.


  1. Kendall Atkinson,
    An Introduction to Numerical Analysis,
    Prentice Hall, 1989,
    ISBN: 0471624896,
    LC: QA297.A94.1989.
  2. Philip Davis,
    Interpolation and Approximation,
    Dover, 1975,
    ISBN: 0-486-62495-1,
    LC: QA221.D33
  3. David Kahaner, Cleve Moler, Steven Nash,
    Numerical Methods and Software,
    Prentice Hall, 1989,
    ISBN: 0-13-627258-4,
    LC: TA345.K34.

Source Code:

Last revised on 18 June 2023.