public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug math/11521] New: Ctanh Returns Incorrect Values
@ 2010-04-19 17:43 tomdean at speakeasy dot org
  2010-04-22  3:52 ` [Bug math/11521] " jstorrs at gmail dot com
  2010-04-22 20:24 ` jstorrs at gmail dot com
  0 siblings, 2 replies; 5+ messages in thread
From: tomdean at speakeasy dot org @ 2010-04-19 17:43 UTC (permalink / raw)
  To: glibc-bugs

ctanh returns incorrect values.  Code below.

Build test-tanh: gcc test-tanh.c -o test-tanh -lm

./test-tanh-c 711
libc version 2.10.1
libc release stable
arg        = 7.110000e+02 + 7.110000e+02 * i
sinh (arg) = inf + inf * i
cosh (arg) = inf + inf * i
s/c         = nan + nan * i   (should be 1 + 0 * i)
tanh (arg) = 0.000000e+00 + 0.000000e+00 * i   (should be 1 + 0 * i)

==== test-tanh.c ========================================
#include <math.h>
#include <complex.h>
#include <stdio.h>
#define _GNU_SOURCE
#include <gnu/libc-version.h>

int main (int argc, char **argv)
{
  long double complex arg = 1 + _Complex_I;
  long double complex s, c, r, t;
  long mult;
  if (argc == 2) {
	mult = atol(argv[1]);
  } else {
	mult = 50000L;
  }

  arg *= mult;
  
  s = csinh (arg);
  c = ccosh (arg);
  r = s / c;
  t = ctanh (arg);
  
  printf ("libc version %s\n", gnu_get_libc_version ());
  printf ("libc release %s\n", gnu_get_libc_release ());
  printf ("arg        = %e + %e * i\n", creal (arg), cimag
		  (arg));
  printf ("sinh (arg) = %e + %e * i\n",
		  creal (s), cimag (s));
  printf ("cosh (arg) = %e + %e * i\n",
		  creal (c), cimag (c));
  printf("s/c         = %e + %e * i   (should be 1 + 0 * i)\n",
		 creal (r), cimag (r));
  printf ("tanh (arg) = %e + %e * i   (should be 1 + 0 * i)\n",
		  creal (t), cimag (t));
    
  return 0;
}

-- 
           Summary: Ctanh Returns Incorrect Values
           Product: glibc
           Version: 2.10
            Status: NEW
          Severity: normal
          Priority: P2
         Component: math
        AssignedTo: aj at suse dot de
        ReportedBy: tomdean at speakeasy dot org
                CC: glibc-bugs at sources dot redhat dot com,tomdean at
                    speakeasy dot org
  GCC host triplet: ubuntu 9.10
GCC target triplet: ubuntu 9.10


http://sourceware.org/bugzilla/show_bug.cgi?id=11521

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-06-30 18:14 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-11521-131@http.sourceware.org/bugzilla/>
2012-03-06 18:14 ` [Bug math/11521] Ctanh Returns Incorrect Values jsm28 at gcc dot gnu.org
2012-04-09 22:35 ` jsm28 at gcc dot gnu.org
2014-06-30 18:14 ` fweimer at redhat dot com
2010-04-19 17:43 [Bug math/11521] New: " tomdean at speakeasy dot org
2010-04-22  3:52 ` [Bug math/11521] " jstorrs at gmail dot com
2010-04-22 20:24 ` jstorrs at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).