Spec-Zone.ru › C

casinhf, casinh, casinhl

Определено в заголовочном файле <complex.h>
float complex       casinhf( float complex z );
(1) (с C99)
double complex      casinh( double complex z );
(2) (с C99)
long double complex casinhl( long double complex z );
(3) (с C99)
Определено в заголовочном файле <tgmath.h>
#define asinh( z )
(4) (с C99)
1-3) Вычисляет комплексную обратную гиперболическую синус z с разрезами ветвей вне интервала [−i; +i] вдоль мнимой оси.
4) Универсальная макрокоманда для типов: Если z имеет тип long double complex, вызывается casinhl. Если z имеет тип double complex, вызывается casinh. Если z имеет тип float complex, вызывается casinhf. Если z является вещественным или целочисленным, то макрос вызывает соответствующую вещественную функцию (asinhf, asinh, asinhl). Если z является мнимым, то макрос вызывает соответствующую вещественную версию функции asin, реализуя формулу asinh(iy) = i asin(y), и возвращаемый тип будет мнимым.

Параметры

z - комплексное аргумент

Значение результата

Если ошибки не произошли, возвращается комплексная обратная гиперболическая синус от z, в диапазоне полосы, математически неограниченной вдоль вещественной оси и в интервале [−iπ/2; +iπ/2] вдоль мнимой оси.

Обработка ошибок и специальные значения

Ошибки сообщаются в соответствии с math_errhandling

Если реализация поддерживает арифметику с плавающей запятой IEEE,

  • casinh(conj(z)) == conj(casinh(z))
  • casinh(-z) == -casinh(z)
  • Если z равно +0+0i, результат равен +0+0i
  • Если z равно x+∞i (для любого положительного конечного x), результат равен +∞+π/2
  • Если z равно x+NaNi (для любого конечного x), результат равен NaN+NaNi, и может быть возбуждено FE_INVALID
  • Если z равно +∞+yi (для любого положительного конечного y), результат равен +∞+0i
  • Если z равно +∞+∞i, результат равен +∞+iπ/4
  • Если z равно +∞+NaNi, результат равен +∞+NaNi
  • Если z равно NaN+0i, результат равен NaN+0i
  • Если z равно NaN+yi (для любого конечного ненулевого y), результат равен NaN+NaNi, и может быть возбуждено FE_INVALID
  • Если z равно NaN+∞i, результат равен ±∞+NaNi (знак вещественной части не определён)
  • Если z равно NaN+NaNi, результат равен NaN+NaNi

Примечания

Хотя C стандарт называет эту функцию "комплексной обратной гиперболической синусом", обратные функции гиперболических функций являются функциями площади. Их аргумент — это площадь гиперболического сектора, а не дуги. Правильное название — "комплексная обратная гиперболическая синус", и, реже, "комплексная площадь гиперболической синус".

Обратная гиперболическая синус — многозначная функция и требует разреза ветви на комплексной плоскости. Разрез ветви обычно размещается на отрезках прямых (-i∞,-i) и (i,i∞) мнимой оси.

Математическое определение главного значения обратной гиперболической синуса: asinh z = ln(z + √1+z2) Для любого z, asinh(z) =

asin(iz)/i

Пример

#include <stdio.h>
#include <complex.h>
 
int main(void)
{
    double complex z = casinh(0+2*I);
    printf("casinh(+0+2i) = %f%+fi\n", creal(z), cimag(z));
 
    double complex z2 = casinh(-conj(2*I)); // or casinh(CMPLX(-0.0, 2)) in C11
    printf("casinh(-0+2i) (the other side of the cut) = %f%+fi\n", creal(z2), cimag(z2));
 
    // for any z, asinh(z) = asin(iz)/i
    double complex z3 = casinh(1+2*I);
    printf("casinh(1+2i) = %f%+fi\n", creal(z3), cimag(z3));
    double complex z4 = casin((1+2*I)*I)/I;
    printf("casin(i * (1+2i))/i = %f%+fi\n", creal(z4), cimag(z4));
}

Вывод:

casinh(+0+2i) = 1.316958+1.570796i
casinh(-0+2i) (the other side of the cut) = -1.316958+1.570796i
casinh(1+2i) = 1.469352+1.063440i
casin(i * (1+2i))/i =  1.469352+1.063440i

Ссылки

  • Стандарт C11 (ISO/IEC 9899:2011):
    • 7.3.6.2 Функции casinh (стр: 192-193)
    • 7.25 Универсальные математические функции <tgmath.h> (стр: 373-375)
    • G.6.2.2 Функции casinh (стр: 540)
    • G.7 Универсальные математические функции <tgmath.h> (стр: 545)
  • Стандарт C99 (ISO/IEC 9899:1999):
    • 7.3.6.2 Функции casinh (стр: 174-175)
    • 7.22 Универсальные математические функции <tgmath.h> (стр: 335-337)
    • G.6.2.2 Функции casinh (стр: 475)
    • G.7 Универсальные математические функции <tgmath.h> (стр: 480)

См. также

cacoshcacoshfcacoshl
(C99)(C99)(C99)
вычисляет комплексную обратную гиперболическую косинус
(функция)
catanhcatanhfcatanhl
(C99)(C99)(C99)
вычисляет комплексную обратную гиперболическую тангенс
(функция)
csinhcsinhfcsinhl
(C99)(C99)(C99)
вычисляет комплексную гиперболическую синус
(функция)
asinhasinhfasinhl
(C99)(C99)(C99)
вычисляет обратную гиперболическую синус (\({\small\operatorname{arsinh}{x} }\)arsinh(x))
(функция)
Документация C++ для asinh

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/numeric/complex/casinh

Spec-Zone.ru

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