csinhf, csinh, csinhl
Определено в заголовочном файле <complex.h> | ||
|---|---|---|
float complex csinhf( float complex z ); | (1) | (начиная с C99) |
double complex csinh( double complex z ); | (2) | (начиная с C99) |
long double complex csinhl( long double complex z ); | (3) | (начиная с C99) |
Определено в заголовочном файле <tgmath.h> | ||
#define sinh( z ) | (4) | (начиная с C99) |
1-3) Вычисляет комплексный гиперболический синус
z.
4) Типообобщённый макрос: если
z имеет тип long double complex, вызывается csinhl. Если z имеет тип double complex, вызывается csinh, а если z имеет тип float complex, вызывается csinhf. Если z является вещественным числом или целым числом, макрос вызывает соответствующую функцию для вещественных чисел (sinhf, sinh, sinhl). Если z является мнимым числом, макрос вызывает соответствующую вещественную версию функции sin, реализуя формулу sinh(iy) = i sin(y); возвращаемый тип — мнимый.Параметры
| z | - | комплексный аргумент |
Возвращаемое значение
Если ошибки не возникают, возвращается комплексный гиперболический синус z
Обработка ошибок и особые значения
Об ошибках сообщается в соответствии с math_errhandling
Если реализация поддерживает арифметику с плавающей запятой IEEE,
csinh(conj(z)) == conj(csinh(z))csinh(z) == -csinh(-z)- Если
zравно+0+0i, результатом является+0+0i - Если
zравно+0+∞i, результатом является±0+NaNi(знак вещественной части не определён), и возникает исключениеFE_INVALID - Если
zравно+0+NaNi, результатом является±0+NaNi - Если
zравноx+∞i(для любого положительного конечного x), результатом являетсяNaN+NaNi, и возникает исключениеFE_INVALID - Если
zравноx+NaNi(для любого положительного конечного x), результатом являетсяNaN+NaNi, и может возникнуть исключениеFE_INVALID - Если
zравно+∞+0i, результатом является+∞+0i - Если
zравно+∞+yi(для любого положительного конечного y), результатом является+∞cis(y) - Если
zравно+∞+∞i, результатом является±∞+NaNi(знак вещественной части не определён), и возникает исключениеFE_INVALID - Если
zравно+∞+NaNi, результатом является±∞+NaNi(знак вещественной части не определён) - Если
zравноNaN+0i, результатом являетсяNaN+0i - Если
zравноNaN+yi(для любого конечного ненулевого y), результатом являетсяNaN+NaNi, и может возникнуть исключениеFE_INVALID - Если
zравноNaN+NaNi, результатом являетсяNaN+NaNi
где cis(y) = cos(y) + i sin(y)
Примечания
Математическое определение гиперболического синуса: sinh z =
ez-e-z/2Гиперболический синус является целой функцией на комплексной плоскости и не имеет разрезов ветвей. Он периодичен по мнимой составляющей с периодом 2πi
Пример
#include <stdio.h>
#include <math.h>
#include <complex.h>
int main(void)
{
double complex z = csinh(1); // behaves like real sinh along the real line
printf("sinh(1+0i) = %f%+fi (sinh(1)=%f)\n", creal(z), cimag(z), sinh(1));
double complex z2 = csinh(I); // behaves like sine along the imaginary line
printf("sinh(0+1i) = %f%+fi ( sin(1)=%f)\n", creal(z2), cimag(z2), sin(1));
}
Вывод:
sinh(1+0i) = 1.175201+0.000000i (sinh(1)=1.175201) sinh(0+1i) = 0.000000+0.841471i ( sin(1)=0.841471)
Ссылки
- Стандарт C11 (ISO/IEC 9899:2011):
- 7.3.6.5 Функции csinh (стр. 194)
- 7.25 Типообобщённая математика <tgmath.h> (стр. 373–375)
- G.6.2.5 Функции csinh (стр. 541–542)
- G.7 Типообобщённая математика <tgmath.h> (стр. 545)
- Стандарт C99 (ISO/IEC 9899:1999):
- 7.3.6.5 Функции csinh (стр. 175–176)
- 7.22 Типообобщённая математика <tgmath.h> (стр. 335–337)
- G.6.2.5 Функции csinh (стр. 476–477)
- G.7 Типообобщённая математика <tgmath.h> (стр. 480)
См. также
|
(C99)(C99)(C99) | вычисляет комплексный гиперболический косинус (функция) |
|
(C99)(C99)(C99) | вычисляет комплексный гиперболический тангенс (функция) |
|
(C99)(C99)(C99) | вычисляет комплексный обратный гиперболический синус (функция) |
|
(C99)(C99) | вычисляет гиперболический синус (\({\small\sinh{x} }\)sinh(x)) (функция) |
Документация C++ для sinh |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/c/numeric/complex/csinh