summaryrefslogtreecommitdiff
path: root/lib/libm/ctanh.c
blob: e2d550df02e84d551157f5989e7550ce4c9531f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <complex.h> // for complex, cimag, creal, ctanh, I
#include <math.h>    // for cos, cosh, sin, sinh

double complex ctanh(double complex z)
{
	double x, y, d;

	x = creal(z);
	y = cimag(z);
	d = cosh(2.0 * x) + cos(2.0 * y);

	return sinh(2.0 * x) / d + (sin(2.0 * y) / d) * (double complex)I;
}