man-pages/man3/catanh.3

41 lines
925 B
Groff
Raw Normal View History

2004-11-03 13:51:07 +00:00
.\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
.\" Distributed under GPL
.\"
cacos.3, cacosh.3, catan.3, catanh.3: Fix formula describing function The man pages for cacos(), cacosh(), catan(), catanh() contain incorrect formulae describing the functions. As reported by Richard B. Kreckel: cacos, cacosf, cacosl: The formula given in the man page cacos(z) = -i clog(z + csqrt(z * z - 1)) gives wrong results in second and fourth quadrant of complex plain. The formula cacos(z) = -i clog(z + I*csqrt(1 - z * z)) gives correct results. catan, catanf, catanl: The formula given in the man page catan(z) = 1 / 2i clog((1 + iz) / (1 - iz)) gives wrong results on the negative imaginary axis beginning at -I (along one of the two branch cuts). Besides, the formula is written in an ambiguous way. The formula catan(z) = (clog(1 + iz) - clog(1 - iz)) / 2i gives correct results. cacosh, cacoshf, cacoshl: The formula given in the man page cacosh(z) = (0.5) * clog((1 + z) / (1 - z)) gives wrong results everywhere in the complex plain. (The formula seems to be copied from the one for catanh, where it is sometimes correct.) The formula cacosh(z) = 2 * clog(csqrt((z + 1)/2) + csqrt((z - 1)/2)) gives correct results. catanh, catanhf, catanhl: The formula given in the man page catanh(z) = 0.5 * clog((1 + z) / (1 - z)) gives wrong results on the positive real axis beginning at 1 (along one of the two branch cuts). The formula catanh(z) = 0.5 * (clog(1 + z) - clog(1 - z)) gives correct results. I've also checked casin, casinf, casinl, casinh, casinhf, and casinhl and the formulae given there casin(z) = -i clog(iz + csqrt(1 - z * z)) casinh(z) = clog(z + csqrt(z * z + 1)) are actually correct. Reported-by: Richard B. Kreckel <kreckel@ginac.de> Reviewed-by: Andries Brouwer <Andries.Brouwer@cwi.nl> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2011-09-15 10:35:56 +00:00
.TH CATANH 3 2011-09-15 "" "Linux Programmer's Manual"
2004-11-03 13:51:07 +00:00
.SH NAME
catanh, catanhf, catanhl \- complex arc tangents hyperbolic
.SH SYNOPSIS
.B #include <complex.h>
.sp
.BI "double complex catanh(double complex " z );
.br
2004-11-03 13:51:07 +00:00
.BI "float complex catanhf(float complex " z );
.br
2004-11-03 13:51:07 +00:00
.BI "long double complex catanhl(long double complex " z );
.sp
2007-07-21 05:25:03 +00:00
Link with \fI\-lm\fP.
2004-11-03 13:51:07 +00:00
.SH DESCRIPTION
The
.BR catanh ()
2008-01-01 07:47:49 +00:00
function calculates the complex arc hyperbolic tangent of
2007-12-24 11:27:43 +00:00
.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].
2004-11-03 13:51:07 +00:00
.LP
2007-12-24 11:27:43 +00:00
One has:
.nf
cacos.3, cacosh.3, catan.3, catanh.3: Fix formula describing function The man pages for cacos(), cacosh(), catan(), catanh() contain incorrect formulae describing the functions. As reported by Richard B. Kreckel: cacos, cacosf, cacosl: The formula given in the man page cacos(z) = -i clog(z + csqrt(z * z - 1)) gives wrong results in second and fourth quadrant of complex plain. The formula cacos(z) = -i clog(z + I*csqrt(1 - z * z)) gives correct results. catan, catanf, catanl: The formula given in the man page catan(z) = 1 / 2i clog((1 + iz) / (1 - iz)) gives wrong results on the negative imaginary axis beginning at -I (along one of the two branch cuts). Besides, the formula is written in an ambiguous way. The formula catan(z) = (clog(1 + iz) - clog(1 - iz)) / 2i gives correct results. cacosh, cacoshf, cacoshl: The formula given in the man page cacosh(z) = (0.5) * clog((1 + z) / (1 - z)) gives wrong results everywhere in the complex plain. (The formula seems to be copied from the one for catanh, where it is sometimes correct.) The formula cacosh(z) = 2 * clog(csqrt((z + 1)/2) + csqrt((z - 1)/2)) gives correct results. catanh, catanhf, catanhl: The formula given in the man page catanh(z) = 0.5 * clog((1 + z) / (1 - z)) gives wrong results on the positive real axis beginning at 1 (along one of the two branch cuts). The formula catanh(z) = 0.5 * (clog(1 + z) - clog(1 - z)) gives correct results. I've also checked casin, casinf, casinl, casinh, casinhf, and casinhl and the formulae given there casin(z) = -i clog(iz + csqrt(1 - z * z)) casinh(z) = clog(z + csqrt(z * z + 1)) are actually correct. Reported-by: Richard B. Kreckel <kreckel@ginac.de> Reviewed-by: Andries Brouwer <Andries.Brouwer@cwi.nl> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2011-09-15 10:35:56 +00:00
catanh(z) = 0.5 * (clog(1 + z) \- clog(1 \- z))
2007-12-24 11:27:43 +00:00
.fi
.SH VERSIONS
These functions first appeared in glibc in version 2.1.
2004-11-03 13:51:07 +00:00
.SH "CONFORMING TO"
C99.
2004-11-03 13:51:07 +00:00
.SH "SEE ALSO"
.BR atanh (3),
.BR cabs (3),
.BR cimag (3),
2006-04-21 01:24:06 +00:00
.BR complex (7)