std:: atan (std::complex)
|
Определено в заголовке
<complex>
|
||
|
template
<
class
T
>
complex < T > atan ( const complex < T > & z ) ; |
(начиная с C++11) | |
Вычисляет комплексный арктангенс комплексного значения z . Разрез ветвления существует вне интервала [−i, +i] вдоль мнимой оси.
Содержание |
Параметры
| z | - | комплексное значение |
Возвращаемое значение
Если ошибок не возникает, возвращается комплексный арктангенс z в пределах полосы, неограниченной вдоль мнимой оси и в интервале [−π/2, +π/2] вдоль действительной оси.
Ошибки и особые случаи обрабатываются так, как если бы операция была реализована с помощью
-
i
*
std::atanh
(
i
*
z
)
, где
i
является мнимой единицей.
Примечания
Арктангенс является многозначной функцией и требует разреза на комплексной плоскости. Разрез традиционно проводится по отрезкам (-∞i,-i) и (+i,+∞i) мнимой оси.
The mathematical definition of the principal value of inverse tangent is atan z = -| 1 |
| 2 |
Пример
#include <cmath> #include <complex> #include <iostream> int main() { std::cout << std::fixed; std::complex<double> z1(0.0, 2.0); std::cout << "atan" << z1 << " = " << std::atan(z1) << '\n'; std::complex<double> z2(-0.0, 2.0); std::cout << "atan" << z2 << " (the other side of the cut) = " << std::atan(z2) << '\n'; std::complex<double> z3(0.0, INFINITY); std::cout << "2 * atan" << z3 << " = " << 2.0 * std::atan(z3) << '\n'; }
Вывод:
atan(0.000000,2.000000) = (1.570796,0.549306) atan(-0.000000,2.000000) (the other side of the cut) = (-1.570796,0.549306) 2 * atan(0.000000,inf) = (3.141593,0.000000)
Смотрите также
|
(C++11)
|
вычисляет арксинус комплексного числа (
arcsin(z)
)
(шаблон функции) |
|
(C++11)
|
вычисляет арккосинус комплексного числа (
arccos(z)
)
(шаблон функции) |
|
вычисляет тангенс комплексного числа (
tan(z)
)
(шаблон функции) |
|
|
(C++11)
(C++11)
|
вычисляет арктангенс (
arctan(x)
)
(функция) |
|
применяет функцию
std::atan
к каждому элементу valarray
(шаблон функции) |
|
|
Документация C
для
catan
|
|