casinf, casin, casinl
|
Определено в заголовочном файле
<complex.h>
|
||
| (1) | (начиная с C99) | |
| (2) | (начиная с C99) | |
| (3) | (начиная с C99) | |
|
Определено в заголовочном файле
<tgmath.h>
|
||
|
#define asin( z )
|
(4) | (начиная с C99) |
z
с разрезами ветвей вне интервала
[−1,+1]
вдоль действительной оси.
z
имеет тип
long
double
complex
,
casinl
вызывается. Если
z
имеет тип
double
complex
,
casin
вызывается. Если
z
имеет тип
float
complex
,
casinf
вызывается. Если
z
является вещественным или целочисленным, то макрос вызывает соответствующую вещественную функцию (
asinf
,
asin
,
asinl
). Если
z
является мнимым, то макрос вызывает соответствующую вещественную версию функции
asinh
, реализуя формулу
arcsin(iy) = i arsinh(y)
, и возвращаемый тип макроса является мнимым.
Содержание |
Параметры
| z | - | комплексный аргумент |
Возвращаемое значение
Если ошибок не возникает, возвращается комплексный арксинус
z
в пределах полосы, неограниченной вдоль мнимой оси и в интервале
[−π/2; +π/2]
вдоль действительной оси.
Ошибки и особые случаи обрабатываются так, как если бы операция была реализована через - I * casinh ( I * z )
Примечания
Обратный синус (или арксинус) является многозначной функцией и требует разреза ветви на комплексной плоскости. Разрез ветви традиционно располагается на отрезках (-∞,-1) и (1,∞) вещественной оси.
Математическое определение главного значения арксинуса:
arcsin z = -
i
ln(
i
z +
√
1-z
2
)
| π |
| 2 |
Пример
#include <stdio.h> #include <math.h> #include <complex.h> int main(void) { double complex z = casin(-2); printf("casin(-2+0i) = %f%+fi\n", creal(z), cimag(z)); double complex z2 = casin(conj(-2)); // или CMPLX(-2, -0.0) printf("casin(-2-0i) (the other side of the cut) = %f%+fi\n", creal(z2), cimag(z2)); // для любого z, asin(z) = acos(-z) - pi/2 double pi = acos(-1); double complex z3 = csin(cacos(conj(-2))-pi/2); printf("csin(cacos(-2-0i)-pi/2) = %f%+fi\n", creal(z3), cimag(z3)); }
Вывод:
casin(-2+0i) = -1.570796+1.316958i casin(-2-0i) (the other side of the cut) = -1.570796-1.316958i csin(cacos(-2-0i)-pi/2) = 2.000000+0.000000i
Ссылки
- Стандарт C11 (ISO/IEC 9899:2011):
-
- 7.3.5.2 Функции casin (стр. 190)
-
- 7.25 Обобщённая математика <tgmath.h> (стр. 373-375)
-
- G.7 Обобщённая математика <tgmath.h> (стр. 545)
- Стандарт C99 (ISO/IEC 9899:1999):
-
- 7.3.5.2 Функции casin (стр. 172)
-
- 7.22 Обобщённая математика <tgmath.h> (стр. 335-337)
-
- G.7 Обобщённая математика <tgmath.h> (стр. 480)
Смотри также
|
(C99)
(C99)
(C99)
|
вычисляет комплексный арккосинус
(функция) |
|
(C99)
(C99)
(C99)
|
вычисляет комплексный арктангенс
(функция) |
|
(C99)
(C99)
(C99)
|
вычисляет комплексный синус
(функция) |
|
(C99)
(C99)
|
вычисляет арксинус (
arcsin(x)
)
(функция) |
|
Документация C++
для
asin
|
|