Spec-Zone.ru › C

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)

См. также

ccoshccoshfccoshl
(C99)(C99)(C99)
вычисляет комплексную гиперболическую косинус
(функция)
ctanhctanhfctanhl
(C99)(C99)(C99)
вычисляет комплексную гиперболическую тангенс
(функция)
casinhcasinhfcasinhl
(C99)(C99)(C99)
вычисляет комплексную обратную гиперболический синус
(функция)
sinhsinhfsinhl
(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/w/c/numeric/complex/csinh

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API