version 1.1, 1996/10/06 22:24:14
|
version 1.2, 1996/12/14 14:21:19
|
Line 8 double atanh(double r1)
|
Line 8 double atanh(double r1)
|
double r3=log((r2/(1.0-r2)*2)+1)/2; |
double r3=log((r2/(1.0-r2)*2)+1)/2; |
|
|
return r1 < 0 ? -r3 : r3; |
return r1 < 0 ? -r3 : r3; |
// fdup f0< >r fabs 1. d>f fover f- f/ f2* flnp1 f2/ |
/* fdup f0< >r fabs 1. d>f fover f- f/ f2* flnp1 f2/ |
// r> IF fnegate THEN ; |
r> IF fnegate THEN ; |
|
*/ |
} |
} |
|
|
double asinh(double r1) |
double asinh(double r1) |
{ |
{ |
return atanh(r1/sqrt(1.0+r1*r1)); |
return atanh(r1/sqrt(1.0+r1*r1)); |
// fdup fdup f* 1. d>f f+ fsqrt f/ fatanh ; |
/* fdup fdup f* 1. d>f f+ fsqrt f/ fatanh ; */ |
} |
} |
|
|
double acosh(double r1) |
double acosh(double r1) |
{ |
{ |
return(log(r1+sqrt(r1*r1-1.0))); |
return(log(r1+sqrt(r1*r1-1.0))); |
// fdup fdup f* 1. d>f f- fsqrt f+ fln ; |
/* fdup fdup f* 1. d>f f- fsqrt f+ fln ; */ |
} |
} |