nag_arctanh (s11aac) (PDF version)
s Chapter Contents
s Chapter Introduction
NAG C Library Manual

NAG Library Function Document

nag_arctanh (s11aac)

+ Contents

    1  Purpose
    7  Accuracy

1  Purpose

nag_arctanh (s11aac) returns the value of the inverse hyperbolic tangent, arctanhx .

2  Specification

#include <nag.h>
#include <nags.h>
double  nag_arctanh (double x, NagError *fail)

3  Description

nag_arctanh (s11aac) calculates an approximate value for the inverse hyperbolic tangent of its argument, arctanhx .
For x 2 1 2  the function is based on a Chebyshev expansion.
For 1 2 < x 2 < 1 ,
arctanhx = 1 2 ln 1+x 1-x .

4  References

Abramowitz M and Stegun I A (1972) Handbook of Mathematical Functions (3rd Edition) Dover Publications

5  Arguments

1:     xdoubleInput
On entry: the argument x  of the function.
Constraint: x < 1.0 .
2:     failNagError *Input/Output
The NAG error argument (see Section 3.6 in the Essential Introduction).

6  Error Indicators and Warnings

On entry, x  must not be greater than or equal to 1.0: x=value .
The function has been called with an argument greater than or equal to 1.0 in magnitude, for which arctanh is not defined. The result is returned as zero.

7  Accuracy

If δ  and ε  are the relative errors in the argument and result, respectively, then in principle
ε x 1 - x 2 arctanhx δ .
That is, the relative error in the argument, x , is amplified by at least a factor
x 1 - x 2 arctanhx
in the result. The equality should hold if δ  is greater than the machine precision ( δ  due to data errors etc.), but if δ  is simply due to round-off in the machine representation then it is possible that an extra figure may be lost in internal calculation round-off.
The factor is not significantly greater than one except for arguments close to x = 1 . However, in the region where x  is close to one, 1 - x δ , the above analysis is inapplicable since x  is bounded by definition, x < 1 . In this region where arctanh is tending to infinity we have
ε 1 / lnδ
which implies an obvious, unavoidable serious loss of accuracy near x 1 , e.g., if x  and 1 agree to 6 significant figures, the result for arctanhx  would be correct to at most about one figure.

8  Further Comments


9  Example

The following program reads values of the argument x  from a file, evaluates the function at each value of x  and prints the results.

9.1  Program Text

Program Text (s11aace.c)

9.2  Program Data

Program Data (s11aace.d)

9.3  Program Results

Program Results (s11aace.r)

nag_arctanh (s11aac) (PDF version)
s Chapter Contents
s Chapter Introduction
NAG C Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2012