PWL_APPROX_1D
Approximation in 1D using Piecewise Linear Functions
PWL_APROX_1D
is a MATLAB library which
defines and evaluates a piecewise linear function, using NC "control points",
which approximates a set of ND data points (x(i),y(i)).
PWL_APPROX_1D needs access to the R8LIB library.
The test code also needs access to the TEST_INTERP_1D library.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
PWL_APPROX_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:
BERNSTEIN_POLYNOMIAL,
a MATLAB library which
evaluates the Bernstein polynomials,
useful for uniform approximation of functions;
LAGRANGE_APPROX_1D,
a MATLAB library which
defines and evaluates the Lagrange polynomial p(x) of degree m
which approximates a set of nd data points (x(i),y(i)).
PWL_INTERP_1D,
a MATLAB library which
interpolates a set of data using a piecewise linear function.
R8LIB,
a MATLAB library which
contains many utility routines using double precision real (R8) arithmetic.
SPLINE,
a MATLAB library which
constructs and evaluates spline interpolants and approximants.
TEST_APPROX,
a MATLAB library which
defines test problems for approximation,
provided as a set of (x,y) data.
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_APPROX_1D,
a MATLAB library which
finds a polynomial approximant to data of a 1D argument
by setting up and solving an overdetermined linear system for the polynomial coefficients,
involving the Vandermonde matrix.
Reference:

Kendall Atkinson,
An Introduction to Numerical Analysis,
Prentice Hall, 1989,
ISBN: 0471624896,
LC: QA297.A94.1989.

Philip Davis,
Interpolation and Approximation,
Dover, 1975,
ISBN: 0486624951,
LC: QA221.D33

David Kahaner, Cleve Moler, Steven Nash,
Numerical Methods and Software,
Prentice Hall, 1989,
ISBN: 0136272584,
LC: TA345.K34.
Source Code:
Examples and Tests:
The test code requires the test_interp_1d library.
pwl_approx_1d_test01() uses nc evenly spaced control points to approximate
a set of nd data values.

p01_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p01;

p01_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p01;

p01_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p01;

p01_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p01;

p01_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p01;

p01_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p01;

p01_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p01;

p01_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p01;

p02_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p02;

p02_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p02;

p02_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p02;

p02_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p02;

p02_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p02;

p02_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p02;

p02_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p02;

p02_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p02;

p03_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p03;

p03_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p03;

p03_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p03;

p03_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p03;

p03_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p03;

p03_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p03;

p03_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p03;

p03_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p03;

p04_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p04;

p04_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p04;

p04_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p04;

p04_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p04;

p04_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p04;

p04_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p04;

p04_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p04;

p04_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p04;

p05_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p05;

p05_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p05;

p05_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p05;

p05_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p05;

p05_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p05;

p05_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p05;

p05_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p05;

p05_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p05;

p06_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p06;

p06_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p06;

p06_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p06;

p06_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p06;

p06_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p06;

p06_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p06;

p06_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p06;

p06_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p06;

p07_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p07;

p07_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p07;

p07_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p07;

p07_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p07;

p07_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p07;

p07_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p07;

p07_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p07;

p07_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p07;

p08_pwl_02_16.png,
a plot of the piecewise linear approximant with 2 control points approximating
16 data values for problem p08;

p08_pwl_04_16.png,
a plot of the piecewise linear approximant with 4 control points approximating
16 data values for problem p08;

p08_pwl_08_16.png,
a plot of the piecewise linear approximant with 8 control points approximating
16 data values for problem p08;

p08_pwl_16_16.png,
a plot of the piecewise linear approximant with 16 control points approximating
16 data values for problem p08;

p08_pwl_02_64.png,
a plot of the piecewise linear approximant with 2 control points approximating
64 data values for problem p08;

p08_pwl_04_64.png,
a plot of the piecewise linear approximant with 4 control points approximating
64 data values for problem p08;

p08_pwl_08_64.png,
a plot of the piecewise linear approximant with 8 control points approximating
64 data values for problem p08;

p08_pwl_16_64.png,
a plot of the piecewise linear approximant with 16 control points approximating
64 data values for problem p08;
You can go up one level to
the MATLAB source codes.
Last modified on 18 August 2012.