# sinh¶

sinh(x: array, /) array

Calculates an implementation-dependent approximation to the hyperbolic sine for each element x_i of the input array x.

The mathematical definition of the hyperbolic sine is

$\operatorname{sinh}(x) = \frac{e^x - e^{-x}}{2}$

Note

The hyperbolic sine is an entire function in the complex plane and has no branch cuts. The function is periodic, with period $$2\pi j$$, with respect to the imaginary component.

Parameters:

x (array) – input array whose elements each represent a hyperbolic angle. Should have a floating-point data type.

Returns:

out (array) – an array containing the 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

Note

For all operands, sinh(x) must equal -sinh(-x).

For real-valued floating-point operands,

• If x_i is NaN, the result is NaN.

• If x_i is +0, the result is +0.

• If x_i is -0, the result is -0.

• If x_i is +infinity, the result is +infinity.

• If x_i is -infinity, the result is -infinity.

For complex floating-point operands, let a = real(x_i), b = imag(x_i), and

Note

For complex floating-point operands, sinh(conj(x)) must equal conj(sinh(x)).

• If a is +0 and b is +0, the result is +0 + 0j.

• If a is +0 and b is +infinity, the result is 0 + NaN j (sign of the real component is unspecified).

• If a is +0 and b is NaN, the result is 0 + NaN j (sign of the real component is unspecified).

• If a is a positive (i.e., greater than 0) finite number and b is +infinity, the result is NaN + NaN j.

• If a is a positive (i.e., greater than 0) finite number and b is NaN, the result is NaN + NaN j.

• If a is +infinity and b is +0, the result is +infinity + 0j.

• If a is +infinity and b is a positive finite number, the result is +infinity * cis(b).

• If a is +infinity and b is +infinity, the result is infinity + NaN j (sign of the real component is unspecified).

• If a is +infinity and b is NaN, the result is infinity + NaN j (sign of the real component is unspecified).

• If a is NaN and b is +0, the result is NaN + 0j.

• If a is NaN and b is a nonzero finite number, the result is NaN + NaN j.

• If a is NaN and b is NaN, the result is NaN + NaN j.

where cis(v) is cos(v) + sin(v)*1j.

Changed in version 2022.12: Added complex data type support.