]> git.ipfire.org Git - thirdparty/man-pages.git/blobdiff - man3/catanh.3
fanotify_init.2, fanotify.7: Document FAN_REPORT_TID
[thirdparty/man-pages.git] / man3 / catanh.3
index 9998ae02310e271ead022dd8ef35ec83f4653175..ff9a2434bf44ba50ceed4af5b1e06115049927f3 100644 (file)
@@ -1,29 +1,87 @@
 .\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
+.\" and Copyright (C) 2011 Michael Kerrisk <mtk.manpages@gmail.com>
+.\"
+.\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
 .\" Distributed under GPL
+.\" %%%LICENSE_END
 .\"
-.TH CATANH 3 2002-07-28 "" "complex math routines"
+.TH CATANH 3 2015-04-19 "" "Linux Programmer's Manual"
 .SH NAME
 catanh, catanhf, catanhl \- complex arc tangents hyperbolic
 .SH SYNOPSIS
 .B #include <complex.h>
-.sp
-.BI "double complex catanh(double complex " z ); 
+.PP
+.BI "double complex catanh(double complex " z );
 .br
 .BI "float complex catanhf(float complex " z );
 .br
 .BI "long double complex catanhl(long double complex " z );
-.sp
-Link with \-lm.
+.PP
+Link with \fI\-lm\fP.
 .SH DESCRIPTION
-The catanh() function calculates the complex atanh().
-If y = catanh(z), then z = ctanh(y).
-The imaginary part of y is chosen in the interval [\-pi/2,pi/2].
-.LP
-One has catanh(z) = 0.5*clog((1+z)/(1\-z)).
-.SH "CONFORMING TO"
-C99
-.SH "SEE ALSO"
+These functions calculate the complex arc hyperbolic tangent of
+.IR z .
+If \fIy\ =\ catanh(z)\fP, then \fIz\ =\ ctanh(y)\fP.
+The imaginary part of
+.I y
+is chosen in the interval [\-pi/2,pi/2].
+.PP
+One has:
+.PP
+.nf
+    catanh(z) = 0.5 * (clog(1 + z) \- clog(1 \- z))
+.fi
+.SH VERSIONS
+These functions first appeared in glibc in version 2.1.
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lbw30 lb lb
+l l l.
+Interface      Attribute       Value
+T{
+.BR catanh (),
+.BR catanhf (),
+.BR catanhl ()
+T}     Thread safety   MT-Safe
+.TE
+.SH CONFORMING TO
+C99, POSIX.1-2001, POSIX.1-2008.
+.SH EXAMPLE
+.EX
+/* Link with "\-lm" */
+
+#include <complex.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <stdio.h>
+
+int
+main(int argc, char *argv[])
+{
+    double complex z, c, f;
+
+    if (argc != 3) {
+        fprintf(stderr, "Usage: %s <real> <imag>\\n", argv[0]);
+        exit(EXIT_FAILURE);
+    }
+
+    z = atof(argv[1]) + atof(argv[2]) * I;
+
+    c = catanh(z);
+    printf("catanh() = %6.3f %6.3f*i\\n", creal(c), cimag(c));
+
+    f = 0.5 * (clog(1 + z) \- clog(1 \- z));
+    printf("formula  = %6.3f %6.3f*i\\n", creal(f2), cimag(f2));
+
+    exit(EXIT_SUCCESS);
+}
+.EE
+.SH SEE ALSO
 .BR atanh (3),
 .BR cabs (3),
 .BR cimag (3),
-.BR complex (5)
+.BR ctanh (3),
+.BR complex (7)