std::tan(std::complex)
定义于头文件 <complex>
|
||
template< class T > complex<T> tan( const complex<T>& z ); |
||
计算复数值 z
的复正切。
参数
z | - | 复数值 |
返回值
若无错误发生,则返回 z
的复正切。
错误和特殊情况如同运算实现为 -i * std::tanh(i*z)
一般处理,其中 i
是虚数单位。
注意
正切是复平面上的解析函数,而无分支切割。它对于实部是周期的,周期为 πi ,而且沿实轴有一阶极点,位于坐标 (π(1/2 + n), 0) 。然而无常用浮点表示能准确表示 π/2 ,故而没有值使得极点错误出现。
正切的数学定义是 tan z =i(e-iz -eiz ) |
e-iz +eiz |
示例
运行此代码
#include <iostream> #include <cmath> #include <complex> int main() { std::cout << std::fixed; std::complex<double> z(1, 0); // 表现类似沿实轴的实正切 std::cout << "tan" << z << " = " << std::tan(z) << " ( tan(1) = " << std::tan(1) << ")\n"; std::complex<double> z2(0, 1); // 表现类似沿虚轴的 tanh std::cout << "tan" << z2 << " = " << std::tan(z2) << " (tanh(1) = " << std::tanh(1) << ")\n"; }
输出:
tan(1.000000,0.000000) = (1.557408,0.000000) ( tan(1) = 1.557408) tan(0.000000,1.000000) = (0.000000,0.761594) (tanh(1) = 0.761594)
参阅
计算复数的正弦( sin(z) ) (函数模板) | |
计算复数的余弦( cos(z) ) (函数模板) | |
(C++11) |
计算复数的反正切( arctan(z) ) (函数模板) |
(C++11)(C++11) |
计算正切( tan(x) ) (函数) |
应用函数 std::tan 到 valarray 的每个元素 (函数模板) |