Number.st
changeset 19768 55e36a939e1e
parent 19702 79ea925e1f35
child 19769 57962c690836
--- a/Number.st	Mon May 09 16:10:09 2016 +0200
+++ b/Number.st	Mon May 09 16:44:54 2016 +0200
@@ -2475,8 +2475,18 @@
     ^ (self class pi / 2) - self arcSin
 !
 
+arcCosech
+    "return the inverse hyperbolic cosecant of the receiver."
+
+    (self isLimitedPrecisionReal not
+    or:[self generality < 1.0 generality]) ifTrue:[
+        ^ self asFloat arcCosech.
+    ].
+    ^ ((1 + ((self*self)+1) sqrt) / self) ln
+!
+
 arcCosh
-    "return the hyperbolic arccosine of the receiver."
+    "return the inverse hyperbolic cosine of the receiver."
 
     (self isLimitedPrecisionReal not
     or:[self generality < 1.0 generality]) ifTrue:[
@@ -2485,6 +2495,26 @@
     ^ (self + (self*self-1) sqrt) ln.
 !
 
+arcCoth
+    "return the inverse hyperbolic cotangent of the receiver."
+
+    (self isLimitedPrecisionReal not
+    or:[self generality < 1.0 generality]) ifTrue:[
+        ^ self asFloat arcCoth.
+    ].
+    ^ ((self+1) / (self-1)) ln / 2
+!
+
+arcSech
+    "return the inverse hyperbolic secant of the receiver."
+
+    (self isLimitedPrecisionReal not
+    or:[self generality < 1.0 generality]) ifTrue:[
+        ^ self asFloat arcSech.
+    ].
+    ^ ((1 + (1-(self*self)) sqrt) / self) ln
+!
+
 arcSin
     "return the arcsine of the receiver (in radians)"
 
@@ -2496,7 +2526,7 @@
 !
 
 arcSinh
-    "return the hyperbolic arcsine of the receiver."
+    "return the inverse hyperbolic sine of the receiver."
 
     (self isLimitedPrecisionReal not
     or:[self generality < 1.0 generality]) ifTrue:[
@@ -2527,13 +2557,14 @@
 !
 
 arcTanh
-    "return the hyperbolic arctangent of the receiver."
+    "return the inverse hyperbolic tangent of the receiver."
 
     (self isLimitedPrecisionReal not
     or:[self generality < 1.0 generality]) ifTrue:[
         ^ self asFloat arcTanh.
     ].
-    ^ ((self + 1) ln / 2) - ((1 - self) ln / 2)
+    ^ ((1 + self) / (1 - self)) ln / 2
+    "/ s^ ((1 + self) ln / 2) - ((1 - self) ln / 2)
 !
 
 cos