std::sinh(std::complex)

来自cppreference.com
< cpp‎ | numeric‎ | complex
 
 
 
 
在标头 <complex> 定义
template< class T >
complex<T> sinh( const complex<T>& z );
(C++11 起)

计算复数值 z 的复双曲正弦。

参数

z - 复数值

返回值

若不出现错误,则返回 z 的复双曲正弦。

错误处理及特殊值

报告的错误与 math_errhandling 一致。

若实现支持 IEEE 浮点算术,则

  • std::sinh(std::conj(z)) == std::conj(std::sinh(z))
  • std::sinh(z) == -std::sinh(-z)
  • z(+0,+0),则结果为 (+0,+0)
  • z(+0,+∞),则结果为 (±0,NaN)(实部符号未指定)并引发 FE_INVALID
  • z(+0,NaN),则结果为 (±0,NaN)
  • z(x,+∞)(对于任何有限正 x),则结果为 (NaN,NaN) 并引发 FE_INVALID
  • z(x,NaN)(对于任何有限正 x),则结果为 (NaN,NaN) 并可能引发 FE_INVALID
  • z(+∞,+0),则结果为 (+∞,+0)
  • z(+∞,y)(对于任何有限正 y),则结果为 +∞cis(y)
  • z(+∞,+∞),则结果为 (±∞,NaN)(实部符号未指定)并引发 FE_INVALID
  • z(+∞,NaN),则结果为 (±∞,NaN)(实部符号未指定)
  • z(NaN,+0),则结果为 (NaN,+0)
  • z(NaN,y)(对于任何有限非零 y),则结果为 (NaN,NaN) 并可能引发 FE_INVALID
  • z(NaN,NaN),则结果为 (NaN,NaN)

其中 cis(y)cos(y) + i sin(y)

注解

双曲正弦的数学定义是 sinh z =
ez
-e-z
2

双曲正弦在复平面上是整函数而无分支切割。它相对于虚部是周期的,周期为 2πi。

示例

#include <cmath>
#include <complex>
#include <iostream>
 
int main()
{
    std::cout << std::fixed;
    std::complex<double> z(1.0, 0.0); // 表现类似沿实轴的 sinh
    std::cout << "sinh" << z << " = " << std::sinh(z)
              << " (sinh(1) = " << std::sinh(1) << ")\n";
 
    std::complex<double> z2(0.0, 1.0); // 表现类似沿虚轴的正弦
    std::cout << "sinh" << z2 << " = " << std::sinh(z2)
              << " ( sin(1) = " << std::sin(1) << ")\n";
}

输出:

sinh(1.000000,0.000000) = (1.175201,0.000000) (sinh(1) = 1.175201)
sinh(0.000000,1.000000) = (0.000000,0.841471) ( sin(1) = 0.841471)

参阅

计算复数的双曲余弦(cosh(z)
(函数模板)
计算复数的双曲正切(tanh(z)
(函数模板)
计算复数的反双曲正弦(arsinh(z)
(函数模板)
(C++11)(C++11)
计算双曲正弦(sinh(x)
(函数)
valarray 的每个元素应用 std::sinh 函数
(函数模板)