NAG FL Interface
s15aff returns a value for Dawson's Integral, , via the function name.
|Integer, Intent (Inout)
|Real (Kind=nag_wp), Intent (In)
|C Header Interface
s15aff_ (const double *x, Integer *ifail)
The routine may be called by the names s15aff or nagf_specfun_dawson.
evaluates an approximation for Dawson's Integral
The routine is based on two Chebyshev expansions:
, and for
. These approximations are used for those values of
for which the result is correct to machine precision
– Real (Kind=nag_wp)
On entry: the argument of the function.
must be set to
to set behaviour on detection of an error; these values have no effect when no error is detected.
A value of causes the printing of an error message and program execution will be halted; otherwise program execution continues. A value of means that an error message is printed while a value of means that it is not.
If halting is not appropriate, the value
is recommended. If message printing is undesirable, then the value
is recommended. Otherwise, the value
is recommended. When the value or is used it is essential to test the value of ifail on exit.
unless the routine detects an error or a warning has been flagged (see Section 6
Error Indicators and Warnings
Let and be the relative errors in the argument and result respectively.
is considerably greater than the machine precision
is due to data errors etc.), then
are approximately related by:
The following graph shows the behaviour of the error amplification factor
However, if is of the same order as machine precision, then rounding errors could make somewhat larger than the above relation indicates. In fact will be largely independent of or , but will be of the order of a few times the machine precision.
Parallelism and Performance
s15aff is not threaded in any implementation.
This example reads values of the argument from a file, evaluates the function at each value of and prints the results.