2 .\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
3 .\" and Copyright 2008, Linux Foundation, written by Michael Kerrisk
4 .\" <mtk.manpages@gmail.com>
6 .\" SPDX-License-Identifier: Linux-man-pages-copyleft
8 .\" References consulted:
9 .\" Linux libc source code
10 .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
12 .\" Modified 1993-07-24 by Rik Faith (faith@cs.unc.edu)
13 .\" Modified 2002-07-27 by Walter Harms
14 .\" (walter.harms@informatik.uni-oldenburg.de)
16 .TH atanh 3 (date) "Linux man-pages (unreleased)"
18 atanh, atanhf, atanhl \- inverse hyperbolic tangent function
21 .RI ( libm ", " \-lm )
26 .BI "double atanh(double " x );
27 .BI "float atanhf(float " x );
28 .BI "long double atanhl(long double " x );
32 Feature Test Macro Requirements for glibc (see
33 .BR feature_test_macros (7)):
38 _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
39 || _XOPEN_SOURCE >= 500
40 .\" || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
41 || /* Since glibc 2.19: */ _DEFAULT_SOURCE
42 || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
48 _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
49 || /* Since glibc 2.19: */ _DEFAULT_SOURCE
50 || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
53 These functions calculate the inverse hyperbolic tangent of
55 that is the value whose hyperbolic tangent is
58 On success, these functions return the inverse hyperbolic tangent of
63 is a NaN, a NaN is returned.
67 is +0 (\-0), +0 (\-0) is returned.
73 and the functions return
78 respectively, with the mathematically correct sign.
80 If the absolute value of
83 a domain error occurs,
84 and a NaN is returned.
86 .\" POSIX.1-2001 documents an optional range error for subnormal x;
87 .\" glibc 2.8 does not do this.
91 for information on how to determine whether an error has occurred
92 when calling these functions.
94 The following errors can occur:
96 Domain error: \fIx\fP less than \-1 or greater than +1
100 An invalid floating-point exception
104 Pole error: \fIx\fP is +1 or \-1
109 A divide-by-zero floating-point exception
113 For an explanation of the terms used in this section, see
119 Interface Attribute Value
126 T} Thread safety MT-Safe
133 The variant returning
138 In glibc 2.9 and earlier,
139 .\" Bug: https://www.sourceware.org/bugzilla/show_bug.cgi?id=6759
140 .\" This can be seen in sysdeps/ieee754/k_standard.c
141 when a pole error occurs,
145 instead of the POSIX-mandated
147 Since glibc 2.10, glibc does the right thing.