Namespaces
Variants

std:: tan (std::complex)

From cppreference.net
Определено в заголовке <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, поэтому не существует значения аргумента, при котором возникает ошибка полюса.

Mathematical definition of the tangent is tg z =
i(e -iz
-e iz
)
e -iz
+e iz
.

Пример

#include <cmath>
#include <complex>
#include <iostream>
int main()
{
    std::cout << std::fixed;
    std::complex<double> z(1.0, 0.0); // ведет себя как действительный тангенс вдоль действительной оси
    std::cout << "tan" << z << " = " << std::tan(z)
              << " ( tan(1) = " << std::tan(1) << ")\n";
    std::complex<double> z2(0.0, 1.0); // ведет себя как 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) )
(шаблон функции)
вычисляет арктангенс комплексного числа ( arctan(z) )
(шаблон функции)
(C++11) (C++11)
вычисляет тангенс ( tan(x) )
(функция)
применяет функцию std::tan к каждому элементу valarray
(шаблон функции)