XLPack 7.0
XLPack Numerical Library (C API) Reference Manual
Loading...
Searching...
No Matches

◆ pchfe()

void pchfe ( int  n,
double  x[],
double  f[],
double  d[],
int  incfd,
int  skip,
int  ne,
double  xe[],
double  fe[],
int *  info 
)

Evaluation of function values for piecewise cubic Hermite (and cubic spline) interpolation

Purpose
This routine evaluates a piecewise cubic Hermite function at an array of points. May be used by itself for Hermite interpolation, or as an evaluator for pchim, pchic, pchsp or pchse.
Parameters
[in]nNumber of data points. (n >= 2)
[in]x[]Array x[lx] (lx >= n)
Independent variable values. The elements of x[] must be strictly increasing.
[in]f[]Array f[lf] (lf >= incfd*(n - 1) + 1)
Function values. f[i*incfd] is the value corresponding to x[i] (i = 0 to n - 1).
[in]d[]Array d[ld] (ld >= incfd*(n - 1) + 1)
Derivative values. d[i*incfd] is the value corresponding to x[i] (i = 0 to n - 1).
[in]incfdIncrement between successive values in f[] and d[]. (incfd >= 1)
[in]skipLogical variable which should be set to true (1) if the user wishes to skip checks for validity of preceding parameters, or to false (0) otherwise. This will save time in case these checks have already been performed (say, in pchim, pchic, pchsp or pchse).
[in]neNumber of evaluation points. (ne >= 1)
[in]xe[]Array xe[lxe] (lxe >= ne)
Points at which the function is to be evaluated.
Notes:
  1. The evaluation will be most efficient if the elements of xe[] are increasing relative to x[]; that is, xe[j] >= x[i] implies xe[k] >= x[i], all k >= j.
  2. If any of the xe[] are outside the interval [ x[0], x[n-1] ], values are extrapolated from the nearest extreme cubic, and a warning error is returned.
[out]fe[]Array fe[lfe] (lfe >= ne)
Values of the cubic Hermite function defined by n, x[], f[], d[] at the points xe[].
[out]info= 0: Successful exit
= -1: The argument n had an illegal value (n < 2)
= -2: The argument x[] had an illegal value (not strictly increasing)
= -5: The argument incfd had an illegal value (incfd < 1)
= -7: The argument ne had an illegal value (ne < 1)
= i > 0: Extrapolation was performed at i points
Reference
SLATEC (PCHIP)