NAG CL Interface
d04bbc (sample)

1 Purpose

d04bbc generates abscissae about a target abscissa x0 for use in a subsequent call to d04bac.

2 Specification

#include <nag.h>
void  d04bbc (double x_0, double hbase, double xval[])
The function may be called by the names: d04bbc, nag_numdiff_sample or nag_numdiff_1d_real_absci.

3 Description

d04bbc may be used to generate the necessary abscissae about a target abscissa x0 for the calculation of derivatives using d04bac.
For a given x0 and h, the abscissae correspond to the set x0, x0 ± 2j-1 h , for j=1,2,,10. These 21 points will be returned in ascending order in xval. In particular, xval[10] will be equal to x0.

4 References

Lyness J N and Moler C B (1969) Generalised Romberg methods for integrals of derivatives Numer. Math. 14 1–14

5 Arguments

1: x_0 double Input
On entry: the abscissa x0 at which derivatives are required.
2: hbase double Input
On entry: the chosen step size h. If h<10ε, where ε=nag_machine_precision, the default h=ε1/4 will be used.
3: xval[21] double Output
On exit: the abscissae for passing to d04bac.

6 Error Indicators and Warnings


7 Accuracy

Not applicable.

8 Parallelism and Performance

d04bbc is not threaded in any implementation.

9 Further Comments

The results computed by d04bac depend very critically on the choice of the user-supplied step length h. The overall accuracy is diminished as h becomes small (because of the effect of round-off error) and as h becomes large (because the discretization error also becomes large). If the process of calculating derivatives is repeated four or five times with different values of h one can find a reasonably good value. A process in which the value of h is successively halved (or doubled) is usually quite effective. Experience has shown that in cases in which the Taylor series for for the objective function about x0 has a finite radius of convergence R, the choices of h>R/19 are not likely to lead to good results. In this case some function values lie outside the circle of convergence.

10 Example

See Section 10 in d04bac.