catanf, catan, catanl
|
Определено в заголовке
<complex.h>
|
||
| (1) | (начиная с C99) | |
| (2) | (начиная с C99) | |
| (3) | (начиная с C99) | |
|
Определено в заголовке
<tgmath.h>
|
||
|
#define atan( z )
|
(4) | (начиная с C99) |
z
с разрезами ветвей вне интервала
[−i,+i]
вдоль мнимой оси.
z
имеет тип
long
double
complex
,
catanl
вызывается. Если
z
имеет тип
double
complex
,
catan
вызывается. Если
z
имеет тип
float
complex
,
catanf
вызывается. Если
z
является вещественным или целочисленным, то макрос вызывает соответствующую вещественную функцию (
atanf
,
atan
,
atanl
). Если
z
является мнимым, то макрос вызывает соответствующую вещественную версию функции
atanh
, реализуя формулу
atan(iy) = i atanh(y)
, и возвращаемый тип макроса является мнимым.
Содержание |
Параметры
| z | - | комплексный аргумент |
Возвращаемое значение
Если ошибок не возникает, возвращается комплексный арктангенс
z
в пределах полосы, неограниченной вдоль мнимой оси и в интервале
[−π/2; +π/2]
вдоль действительной оси.
Ошибки и особые случаи обрабатываются так, как если бы операция была реализована с помощью - I * catanh ( I * z ) .
Примечания
Арктангенс является многозначной функцией и требует разреза на комплексной плоскости. Разрез традиционно проводится по отрезкам (-∞i,-i) и (+i,+∞i) мнимой оси.
The mathematical definition of the principal value of inverse tangent is atan z = -| 1 |
| 2 |
Пример
#include <stdio.h> #include <float.h> #include <complex.h> int main(void) { double complex z = catan(2*I); printf("catan(+0+2i) = %f%+fi\n", creal(z), cimag(z)); double complex z2 = catan(-conj(2*I)); // or CMPLX(-0.0, 2) printf("catan(-0+2i) (the other side of the cut) = %f%+fi\n", creal(z2), cimag(z2)); double complex z3 = 2*catan(2*I*DBL_MAX); // or CMPLX(0, INFINITY) printf("2*catan(+0+i*Inf) = %f%+fi\n", creal(z3), cimag(z3)); }
Вывод:
catan(+0+2i) = 1.570796+0.549306i catan(-0+2i) (the other side of the cut) = -1.570796+0.549306i 2*catan(+0+i*Inf) = 3.141593+0.000000i
Ссылки
- Стандарт C11 (ISO/IEC 9899:2011):
-
- 7.3.5.3 Функции catan (стр. 191)
-
- 7.25 Обобщенная математика <tgmath.h> (стр. 373-375)
-
- G.7 Обобщенная математика <tgmath.h> (стр. 545)
- Стандарт C99 (ISO/IEC 9899:1999):
-
- 7.3.5.3 Функции catan (стр. 173)
-
- 7.22 Обобщенная математика <tgmath.h> (стр. 335-337)
-
- G.7 Обобщенная математика <tgmath.h> (стр. 480)
Смотри также
|
(C99)
(C99)
(C99)
|
вычисляет комплексный арксинус
(функция) |
|
(C99)
(C99)
(C99)
|
вычисляет комплексный арккосинус
(функция) |
|
(C99)
(C99)
(C99)
|
вычисляет комплексный тангенс
(функция) |
|
(C99)
(C99)
|
вычисляет арктангенс (
arctan(x)
)
(функция) |
|
Документация C++
для
atan
|
|