std::cosh(std::complex)
来自cppreference.com
<tbody>
</tbody>
| 在标头 <complex> 定义
|
||
template< class T > complex<T> cosh( const complex<T>& z ); |
(C++11 起) | |
计算复数值 z 的复双曲余弦。
参数
| z | - | 复数值 |
返回值
若不发生错误,则返回 z 的复双曲余弦。
错误处理及特殊值
报告的错误与 math_errhandling 一致。
若实现支持 IEEE 浮点算术,则,
std::cosh(std::conj(z)) == std::conj(std::cosh(z))std::cosh(z) == std::cosh(-z)- 若
z为(+0,+0),则结果为(1,+0) - 若
z为(+0,+∞),则结果为(NaN,±0)(虚部符号未指定)并引发 FE_INVALID - 若
z为(+0,NaN),则结果为(NaN,±0)((虚部符号未指定) - 若
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)。
注解
双曲余弦的数学定义是
cosh 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); // 表现如沿实轴的实 cosh
std::cout << "cosh" << z << " = " << std::cosh(z)
<< " (cosh(1) = " << std::cosh(1) << ")\n";
std::complex<double> z2(0, 1); // 表现如沿虚轴的实余弦
std::cout << "cosh" << z2 << " = " << std::cosh(z2)
<< " ( cos(1) = " << std::cos(1) << ")\n";
}
输出:
cosh(1.000000,0.000000) = (1.543081,0.000000) (cosh(1) = 1.543081)
cosh(0.000000,1.000000) = (0.540302,0.000000) ( cos(1) = 0.540302)
参阅
| 计算复数的双曲正弦(sinh(z)) (函数模板) | |
| 计算复数的双曲正切(tanh(z)) (函数模板) | |
(C++11) |
计算复数的反双曲余弦(arcosh(z)) (函数模板) |
(C++11)(C++11) |
计算双曲余弦(cosh(x)) (函数) |
应用函数 std::cosh 到 valarray 的每个元素 (函数模板) | |
ccosh 的 C 文档
| |