d04 Chapter Contents
d04 Chapter Introduction
NAG Library Manual

# NAG Library Function Documentnag_numdiff_1d_real_absci (d04bbc)

## 1  Purpose

nag_numdiff_1d_real_absci (d04bbc) generates abscissae about a target abscissa ${x}_{0}$ for use in a subsequent call to nag_numdiff_1d_real_eval (d04bac).

## 2  Specification

 #include #include
 void nag_numdiff_1d_real_absci (double x_0, double hbase, double xval[])

## 3  Description

nag_numdiff_1d_real_absci (d04bbc) may be used to generate the necessary abscissae about a target abscissa ${x}_{0}$ for the calculation of derivatives using nag_numdiff_1d_real_eval (d04bac).
For a given ${x}_{0}$ and $h$, the abscissae correspond to the set $\left\{{x}_{0},{x}_{0}±\left(2\mathit{j}-1\right)h\right\}$, for $\mathit{j}=1,2,\dots ,10$. These $21$ points will be returned in ascending order in xval. In particular, ${\mathbf{xval}}\left[10\right]$ will be equal to ${x}_{0}$.

## 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_0doubleInput
On entry: the abscissa ${x}_{0}$ at which derivatives are required.
2:     hbasedoubleInput
On entry: the chosen step size $h$. If $h<10\epsilon$, where $\epsilon ={\mathbf{nag_machine_precision}}$, then the default $h={\epsilon }^{\left(1/4\right)}$ will be used.
3:     xval[$21$]doubleOutput
On exit: the abscissae for passing to nag_numdiff_1d_real_eval (d04bac).

None.

Not applicable.

## 8  Parallelism and Performance

Not applicable.

The results computed by nag_numdiff_1d_real_eval (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 ${x}_{0}$ 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.