Use of C99 extra long double math functions after r236148
Stephen Montgomery-Smith
stephen at missouri.edu
Sun Aug 12 23:12:38 UTC 2012
This is what I came up with for catanh. I seem to get a ULP less than 3.
On 07/22/2012 06:13 PM, Peter Jeremy wrote:
> The "normal" cases are (algorithmetically with '^' as exponentiation):
>
> catanh(z) = clog((1+z)/(1-z))/2
> = (clog(1+z) - clog(1-z))/2
> catanh(x+I*y) = log((y^2 + (1+x)^2)/(y^2 + (1-x)^2))/4 + I*atan2(y^2, 1-x^2-y^2)/2
>
> None of these approaches behave cleanly when |z| is close to 1. If
> you have some insights, feel free to work on it.
>
More information about the freebsd-numerics
mailing list