- naginterfaces.library.numdiff.rcomm(xval, fval)[source]¶
rcommcalculates a set of derivatives (up to order ) of a function at a point with respect to a single variable. A corresponding set of error estimates is also returned. Derivatives are calculated using an extension of the Neville algorithm. This function differs from
fwd(), in that the abscissae and corresponding function values must be calculated before this function is called. The abscissae may be generated using
For full information please refer to the NAG Library document for d04ba
- derfloat, ndarray, shape
The derivative estimates.
- erestfloat, ndarray, shape
The error estimates for the derivatives.
- (errno )
The derived is below tolerance.
Derived is required. Derived .
- (errno )
On entry, the values of are not correctly spaced.
rcommprovides a set of approximations:
to the derivatives:
of a real valued function at a real abscissa , together with a set of error estimates:
which hopefully satisfy:
The results and are based on function values:
The abscissae and the corresponding function values should be passed into
rcommas the vectors and respectively. The step size is derived from the abscissae in . See Further Comments for a discussion of how the derived value of may affect the results of
rcomm. The order in which the abscissae and function values are stored in and is irrelevant, provided that the function value at any given index corresponds to the value of the abscissa at the same index. Abscissae may be automatically generated using
sample()if desired. For each derivative
rcommemploys an extension of the Neville Algorithm (see Lyness and Moler (1969)) to obtain a selection of approximations.
For example, for odd derivatives, this function calculates a set of numbers:
each of which is an approximation to . A specific approximation is of polynomial degree and is based on polynomial interpolation using function values , for . In the absence of round-off error, the better approximations would be associated with the larger values of and of . However, round-off error in function values has an increasingly contaminating effect for successively larger values of . This function proceeds to make a judicious choice between all the approximations in the following way.
For a specified value of , let:
where and , for , and let be such that , for .
This function returns:
where is a safety factor which has been assigned the values:
on the basis of performance statistics.
The even order derivatives are calculated in a precisely analogous manner.
Lyness, J N and Moler, C B, 1969, Generalised Romberg methods for integrals of derivatives, Numer. Math. (14), 1–14