SHEPARD_INTERP_1D
Shepard Interpolation of 1D Data
SHEPARD_INTERP_1D
is a MATLAB library which
defines and evaluates Shepard interpolants to 1D data,
based on inverse distance weighting.
SHEPARD_INTERP_1D needs the R8LIB library. The test code
also needs the TEST_INTERP library.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
SHEPARD_INTERP_1D is available in
a C version and
a C++ version and
a FORTRAN77 version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
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).
DIVDIF,
a MATLAB library which
uses divided differences to compute the polynomial interpolant
to a given set of data.
HERMITE,
a MATLAB library which
computes the Hermite interpolant, a polynomial that matches function values
and derivatives.
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_INTERP_1D,
a MATLAB library which
interpolates a set of data using a piecewise constant interpolant
defined by the nearest neighbor criterion.
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_2D,
a MATLAB library which
defines and evaluates Shepard interpolants to 2D data,
based on inverse distance weighting.
SHEPARD_INTERP_ND,
a MATLAB library which
defines and evaluates Shepard interpolants to multidimensional data,
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.
Reference:
-
Richard Franke,
Scattered Data Interpolation: Tests of Some Methods,
Mathematics of Computation,
Volume 38, Number 157, January 1982, pages 181-200.
-
Donald Shepard,
A two-dimensional interpolation function for irregularly spaced data,
ACM '68: Proceedings of the 1968 23rd ACM National Conference,
ACM, pages 517-524, 1969.
Source Code:
Examples and Tests:
Running these tests requires access to the test_interp library.
Should that library be available in a directory at the same level, this
can be accomplished with the command "addpath ( '../test_interp' )".
shepard_interp_1d_test01 plots the data and Shepard interpolants.
-
p01_data.png,
the data for problem p01 with a linear interpolant.
-
p01_0_poly.png,
the Shepard interpolant for problem p01 with P = 0.
-
p01_1_poly.png,
the Shepard interpolant for problem p01 with P = 1.
-
p01_2_poly.png,
the Shepard interpolant for problem p01 with P = 2.
-
p01_4_poly.png,
the Shepard interpolant for problem p01 with P = 4.
-
p01_8_poly.png,
the Shepard interpolant for problem p01 with P = 8.
-
p02_data.png,
the data for problem p02 with a linear interpolant.
-
p02_0_poly.png,
the Shepard interpolant for problem p02 with P = 0.
-
p02_1_poly.png,
the Shepard interpolant for problem p02 with P = 1.
-
p02_2_poly.png,
the Shepard interpolant for problem p02 with P = 2.
-
p02_4_poly.png,
the Shepard interpolant for problem p02 with P = 4.
-
p02_8_poly.png,
the Shepard interpolant for problem p02 with P = 8.
-
p03_data.png,
the data for problem p03 with a linear interpolant.
-
p03_0_poly.png,
the Shepard interpolant for problem p03 with P = 0.
-
p03_1_poly.png,
the Shepard interpolant for problem p03 with P = 1.
-
p03_2_poly.png,
the Shepard interpolant for problem p03 with P = 2.
-
p03_4_poly.png,
the Shepard interpolant for problem p03 with P = 4.
-
p03_8_poly.png,
the Shepard interpolant for problem p03 with P = 8.
-
p04_data.png,
the data for problem p04 with a linear interpolant.
-
p04_0_poly.png,
the Shepard interpolant for problem p04 with P = 0.
-
p04_1_poly.png,
the Shepard interpolant for problem p04 with P = 1.
-
p04_2_poly.png,
the Shepard interpolant for problem p04 with P = 2.
-
p04_4_poly.png,
the Shepard interpolant for problem p04 with P = 4.
-
p04_8_poly.png,
the Shepard interpolant for problem p04 with P = 8.
-
p05_data.png,
the data for problem p05 with a linear interpolant.
-
p05_0_poly.png,
the Shepard interpolant for problem p05 with P = 0.
-
p05_1_poly.png,
the Shepard interpolant for problem p05 with P = 1.
-
p05_2_poly.png,
the Shepard interpolant for problem p05 with P = 2.
-
p05_4_poly.png,
the Shepard interpolant for problem p05 with P = 4.
-
p05_8_poly.png,
the Shepard interpolant for problem p05 with P = 8.
-
p06_data.png,
the data for problem p06 with a linear interpolant.
-
p06_0_poly.png,
the Shepard interpolant for problem p06 with P = 0.
-
p06_1_poly.png,
the Shepard interpolant for problem p06 with P = 1.
-
p06_2_poly.png,
the Shepard interpolant for problem p06 with P = 2.
-
p06_4_poly.png,
the Shepard interpolant for problem p06 with P = 4.
-
p06_8_poly.png,
the Shepard interpolant for problem p06 with P = 8.
-
p07_data.png,
the data for problem p07 with a linear interpolant.
-
p07_0_poly.png,
the Shepard interpolant for problem p07 with P = 0.
-
p07_1_poly.png,
the Shepard interpolant for problem p07 with P = 1.
-
p07_2_poly.png,
the Shepard interpolant for problem p07 with P = 2.
-
p07_4_poly.png,
the Shepard interpolant for problem p07 with P = 4.
-
p07_8_poly.png,
the Shepard interpolant for problem p07 with P = 8.
-
p08_data.png,
the data for problem p08 with a linear interpolant.
-
p08_0_poly.png,
the Shepard interpolant for problem p08 with P = 0.
-
p08_1_poly.png,
the Shepard interpolant for problem p08 with P = 1.
-
p08_2_poly.png,
the Shepard interpolant for problem p08 with P = 2.
-
p08_4_poly.png,
the Shepard interpolant for problem p08 with P = 4.
-
p08_8_poly.png,
the Shepard interpolant for problem p08 with P = 8.
shepard_interp_1d_test02 plots the Shepard basis functions.
-
p07_0_poly.png,
the Shepard basis functions for problem p07 with P = 0.
-
p07_1_poly.png,
the Shepard basis functions for problem p07 with P = 1.
-
p07_2_poly.png,
the Shepard basis functions for problem p07 with P = 2.
-
p07_4_poly.png,
the Shepard basis functions for problem p07 with P = 4.
-
p07_8_poly.png,
the Shepard basis functions for problem p07 with P = 8.
You can go up one level to
the MATLAB source codes.
Last modified on 15 October 2012.