asinh¶
- asinh(x: array, /) array¶
Calculates an implementation-dependent approximation to the inverse hyperbolic sine for each element
x_iin the input arrayx.Note
The principal value of the inverse hyperbolic sine of a complex number \(z\) is
\[\operatorname{asinh}(z) = \ln(z + \sqrt{1+z^2})\]For any \(z\),
\[\operatorname{asinh}(z) = \frac{\operatorname{asin}(zj)}{j}\]Note
For complex floating-point operands,
asinh(conj(x))must equalconj(asinh(x))andasinh(-z)must equal-asinh(z).Note
The inverse hyperbolic sine is a multi-valued function and requires a branch cut on the complex plane. By convention, a branch cut is placed at the line segments \((-\infty j, -j)\) and \((j, \infty j)\) of the imaginary axis.
Accordingly, for complex arguments, the function returns the inverse hyperbolic sine in the range of a strip unbounded along the real axis and in the interval \([-\pi j/2, +\pi j/2]\) along the imaginary axis.
Note: branch cuts follow C99 and have provisional status (see Branch Cuts).
- Parameters:
x (array) – input array whose elements each represent the area of a hyperbolic sector. Should have a floating-point data type.
- Returns:
out (array) – an array containing the inverse hyperbolic sine of each element in
x. The returned array must have a floating-point data type determined by Type Promotion Rules.
Notes
Special cases
For real-valued floating-point operands,
If
x_iisNaN, the result isNaN.If
x_iis+0, the result is+0.If
x_iis-0, the result is-0.If
x_iis+infinity, the result is+infinity.If
x_iis-infinity, the result is-infinity.
For complex floating-point operands, let
a = real(x_i),b = imag(x_i), andIf
ais+0andbis+0, the result is+0 + 0j.If
ais a positive (i.e., greater than0) finite number andbis+infinity, the result is+infinity + πj/2.If
ais a finite number andbisNaN, the result isNaN + NaN j.If
ais+infinityandbis a positive (i.e., greater than0) finite number, the result is+infinity + 0j.If
ais+infinityandbis+infinity, the result is+infinity + πj/4.If
aisNaNandbis+0, the result isNaN + 0j.If
aisNaNandbis a nonzero finite number, the result isNaN + NaN j.If
aisNaNandbis+infinity, the result is±infinity + NaN j(sign of the real component is unspecified).If
aisNaNandbisNaN, the result isNaN + NaN j.
Changed in version 2022.12: Added complex data type support.