asinh

Calculates the inverse hyperbolic sine of x.

Mathematically,

asinh(x) =  log( x + sqrt( x*x + 1 )) // if x >= +0
asinh(x) = -log(-x + sqrt( x*x + 1 )) // if x <= -0
Special Values
xasinh(x)
NaNNaN
±0±0
±∞±∞
  1. real asinh(real x)
    @safe pure nothrow @nogc
    real
    asinh
    (
    real x
    )
  2. double asinh(double x)
  3. float asinh(float x)

Examples

import std.math.traits : isIdentical, isNaN;

assert(isIdentical(asinh(0.0), 0.0));
assert(isIdentical(asinh(-0.0), -0.0));
assert(asinh(real.infinity) == real.infinity);
assert(asinh(-real.infinity) == -real.infinity);
assert(isNaN(asinh(real.nan)));

Meta