NAG Library Routine Document
S15AGF
1 Purpose
S15AGF returns the value of the scaled complementary error function , via the function name.
2 Specification
REAL (KIND=nag_wp) S15AGF |
INTEGER |
IFAIL |
REAL (KIND=nag_wp) |
X |
|
3 Description
S15AGF calculates an approximate value for the scaled complementary error function
Let
be the root of the equation
(then
). For
the value of
is based on the following rational Chebyshev expansion for
:
where
denotes a rational function of degree
in the numerator and
in the denominator.
For
the value of
is based on a rational Chebyshev expansion for
: for
the value is based on the expansion
and for
it is based on the expansion
For each expansion, the specific values of
and
are selected to be minimal such that the maximum relative error in the expansion is of the order
, where
is the maximum number of decimal digits that can be accurately represented for the particular implementation (see
X02BEF).
Asymptotically,
. There is a danger of setting underflow in
whenever
, where
is the largest positive model number (see
X02ALF) and
is the smallest positive model number (see
X02AKF). In this case S15AGF exits with
and returns
. For
in the range
, where
is the
machine precision, the asymptotic value
is returned for
and S15AGF exits with
.
There is a danger of setting overflow in whenever . In this case S15AGF exits with and returns .
The values of
,
and
are given in the
Users' Note for your implementation.
4 References
Abramowitz M and Stegun I A (1972) Handbook of Mathematical Functions (3rd Edition) Dover Publications
Cody W J (1969) Rational Chebyshev approximations for the error function Math.Comp. 23 631–637
5 Parameters
- 1: X – REAL (KIND=nag_wp)Input
On entry: the argument of the function.
- 2: IFAIL – INTEGERInput/Output
-
On entry:
IFAIL must be set to
,
. If you are unfamiliar with this parameter you should refer to
Section 3.3 in the Essential Introduction for details.
For environments where it might be inappropriate to halt program execution when an error is detected, the value
is recommended. If the output of error messages is undesirable, then the value
is recommended. Otherwise, because for this routine the values of the output parameters may be useful even if
on exit, the recommended value is
.
When the value is used it is essential to test the value of IFAIL on exit.
On exit:
unless the routine detects an error or a warning has been flagged (see
Section 6).
6 Error Indicators and Warnings
If on entry
or
, explanatory error messages are output on the current error message unit (as defined by
X04AAF).
Note: S15AGF may return useful information for one or more of the following detected errors or warnings.
Errors or warnings detected by the routine:
On entry,
(see
Section 3). On soft failure the function value returned is
.
On entry,
(see
Section 3). On soft failure the function value returned is
.
On entry,
(see
Section 3). On soft failure the function value returned is the largest positive model number.
7 Accuracy
The relative error in computing
may be estimated by evaluating
where
denotes repeated integration. Empirical results suggest that on the interval
the loss in base
significant digits for maximum relative error is around
, while for root-mean-square relative error on that interval it is
(see
X02BHF for the definition of the model parameter
). On the interval
the values are around
for maximum and
for root-mean-square relative errors; note that on these two intervals
is the primary computation. See also
Section 7 in S15ADF.
None.
9 Example
This example reads values of the argument from a file, evaluates the function at each value of and prints the results.
9.1 Program Text
Program Text (s15agfe.f90)
9.2 Program Data
Program Data (s15agfe.d)
9.3 Program Results
Program Results (s15agfe.r)