TEST_INTERP_ND 
 Test Functions for Multidimensional Interpolation
    
    
    
      TEST_INTERP_ND
      is a C library which
      provides test functions for multidimensional interpolation.
    
    
      All the functions are defined over the unit hypercube [0,1]^M, for arbitrary
      spatial dimension M.  They include:
      
        - 
          Oscillatory;
        
- 
          Product Peak;
        
- 
          Corner Peak;
        
- 
          Gaussian;
        
- 
          Continuous;
        
- 
          Discontinuous;
        
      For each function, methods are provided to evaluate:
      
        - 
          the function, f(x);
        
- 
          the derivative with respect to any coordinate, dfdx(i);
        
- 
          the integral of f(x) over the unit hypercube;
        
      Most of the functions include a shift vector w whose entries can be
      chosen randomly in the unit hypercube, and a coefficient vector c
      whose entries should be positive, and for which the integration problem
      becomes harder as the sum of the entries increases.
    
    
      TEST_INTERP_ND requires access to the R8LIB library.
    
    
      Licensing:
    
    
      The computer code and data files described and made available on this
      web page are distributed under
      the GNU LGPL license.
    
    
      Languages:
    
    
      TEST_INTERP_ND is available in
      a C version and
      a C++ version and
      a FORTRAN90 version and
      a MATLAB version.
    
    
      Related Data and Programs:
    
    
      
      LAGRANGE_INTERP_ND,
      a C library which
      defines and evaluates the Lagrange polynomial p(x) 
      which interpolates a set of data depending on a multidimensional argument x
      that was evaluated on a product grid, so that p(x(i)) = z(i).
    
    
      
      R8LIB,
      a C library which
      contains many utility routines using double precision real (R8) arithmetic.
    
    
      
      RBF_INTERP_ND,
      a C library which
      defines and evaluates radial basis function (RBF) interpolants to
      multidimensional data.
    
    
      
      SHEPARD_INTERP_ND,
      a C library which
      defines and evaluates Shepard interpolants to multidimensional data,
      based on inverse distance weighting.
    
    
      
      SPARSE_INTERP_ND
      a C library which
      can be used to define a sparse interpolant to a function f(x) of a 
      multidimensional argument.
    
    
      
      SPINTERP,
      a MATLAB library which
      carries out piecewise multilinear hierarchical sparse grid interpolation;
      an earlier version of this software is ACM TOMS Algorithm 847,
      by Andreas Klimke;
    
    
      
      TEST_INTERP_1D,
      a C library which
      defines test problems for interpolation of data y(x),
      depending on a 1D argument.
    
    
      
      TEST_INTERP_2D,
      a C library which
      defines test problems for interpolation of data z(x,y)),
      depending on a 2D argument.
    
    
      Reference:
    
    
      
        - 
          Alan Genz,
 Testing Multidimensional Integration Routines,
 in Tools, Methods, and Languages for Scientific and
          Engineering Computation,
 edited by B Ford, JC Rault, F Thomasset,
 North-Holland, 1984, pages 81-94,
 ISBN: 0444875700,
 LC: Q183.9.I53.
- 
          Alan Genz,
 A Package for Testing Multiple Integration Subroutines,
 in Numerical Integration:
          Recent Developments, Software and Applications,
 edited by Patrick Keast, Graeme Fairweather,
 Reidel, 1987, pages 337-340,
 ISBN: 9027725144,
 LC: QA299.3.N38.
      Source Code:
    
    
      
    
    
      Examples and Tests:
    
    
      
    
    
      List of Routines:
    
    
      
        - 
          CSEVL evaluates a Chebyshev series.
        
- 
          I4VEC_SUM sums the entries of an I4VEC.
        
- 
          INITS initializes a Chebyshev series.
        
- 
          P00_CW computes a random C parameter vector for any problem.
        
- 
          P00_D returns a derivative component of any function.
        
- 
          P00_F returns the value of any function.
        
- 
          P00_PROB_NUM returns the number of test functions available.
        
- 
          P00_Q returns the integral of any function.
        
- 
          P00_TITLE returns the title for any function.
        
- 
          P00_W computes a random W parameter vector for any problem.
        
- 
          P01_D evaluates any derivative component for problem p01.
        
- 
          P01_F evaluates the function for problem p01.
        
- 
          P01_Q evaluates the integral for problem p01.
        
- 
          P01_TITLE returns the name of problem p01.
        
- 
          P02_D evaluates an derivative component for problem p02.
        
- 
          P02_F evaluates the function for problem p02.
        
- 
          P02_Q evaluates the integral for problem p02.
        
- 
          P02_TITLE returns the title of problem p02.
        
- 
          P03_D evaluates any derivative component for problem p03.
        
- 
          P03_F evaluates the function for problem p03.
        
- 
          P03_Q evaluates the integral for problem p03.
        
- 
          P03_TITLE returns the title of problem p03.
        
- 
          P04_D evaluates any derivative component for problem p04.
        
- 
          P04_F evaluates the function for problem p04.
        
- 
          P04_Q evaluates the integral for problem p04.
        
- 
          P04_TITLE returns the title of problem p04.
        
- 
          P05_D evaluates any derivative component for problem p05.
        
- 
          P05_F evaluates the function for problem p05.
        
- 
          P05_Q evaluates the integral for problem p05.
        
- 
          P05_TITLE returns the title of problem p05.
        
- 
          P06_D evaluates any derivative component for problem p06.
        
- 
          P06_F evaluates the function for problem p06.
        
- 
          P06_Q evaluates the integral for problem p06.
        
- 
          P06_TITLE returns the title of problem p06.
        
- 
          R8_ERROR evaluates the error function of an R8 argument.
        
- 
          R8_ERRORC evaluates the co-error function of an R8 argument.
        
- 
          R8_MACH returns double precision real machine constants.
        
- 
          TUPLE_NEXT computes the next element of a tuple space.
        
      You can go up one level to 
      the C source codes.
    
    
    
      Last revised on 07 October 2012.