NEAREST_INTERP_1D is a MATLAB library which interpolates a set of data using a piecewise constant interpolant defined by the nearest neighbor criterion.
NEAREST_INTERP_1D needs the R8LIB library. The test also needs the TEST_INTERP library.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
NEAREST_INTERP_1D is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version and a Python version.
BARYCENTRIC_INTERP_1D, a MATLAB library which defines and evaluates the barycentric Lagrange polynomial p(x) which interpolates a set of data, so that p(x(i)) = y(i). The barycentric approach means that very high degree polynomials can safely be used.
CHEBYSHEV_INTERP_1D, a MATLAB library which determines the combination of Chebyshev polynomials which interpolates a set of data, so that p(x(i)) = y(i).
LAGRANGE_INTERP_1D, a MATLAB library which defines and evaluates the Lagrange polynomial p(x) which interpolates a set of data, so that p(x(i)) = y(i).
NEAREST_NEIGHBOR, a MATLAB library which works in a given M-dimensional space, seeking, for each point in a set S, the nearest point in a set R, by Richard Brown.
NEWTON_INTERP_1D, a MATLAB library which finds a polynomial interpolant to data using Newton divided differences.
PWL_INTERP_1D, a MATLAB library which interpolates a set of data using a piecewise linear interpolant.
R8LIB, a MATLAB library which contains many utility routines using double precision real (R8) arithmetic.
RBF_INTERP_1D, a MATLAB library which defines and evaluates radial basis function (RBF) interpolants to 1D data.
SHEPARD_INTERP_1D, a MATLAB library which defines and evaluates Shepard interpolants to 1D data, which are based on inverse distance weighting.
TEST_INTERP, a MATLAB library which defines a number of test problems for interpolation, provided as a set of (x,y) data.
TEST_INTERP_1D, a MATLAB library which defines test problems for interpolation of data y(x), depending on a 2D argument.
VANDERMONDE_INTERP_1D, a MATLAB library which finds a polynomial interpolant to a function of 1D data by setting up and solving a linear system for the polynomial coefficients, involving the Vandermonde matrix.
The test code requires the test_interp library as well.
nearest_interp_1d_test01() plots a piecewise linear interpolant to the original data, and the nearest neighbor interpolant.
You can go up one level to the MATLAB source codes.