Namespaces
Variants

cacoshf, cacosh, cacoshl

From cppreference.net
Определено в заголовке <complex.h>
float complex cacoshf ( float complex z ) ;
(1) (начиная с C99)
double complex cacosh ( double complex z ) ;
(2) (начиная с C99)
long double complex cacoshl ( long double complex z ) ;
(3) (начиная с C99)
Определено в заголовке <tgmath.h>
#define acosh( z )
(4) (начиная с C99)
1-3) Вычисляет комплексный гиперболический арккосинус от комплексного значения z с разрезом ветви при значениях меньше 1 вдоль вещественной оси.
4) Обобщенный макрос: Если z имеет тип long double complex , cacoshl вызывается. Если z имеет тип double complex , cacosh вызывается. Если z имеет тип float complex , cacoshf вызывается. Если z является вещественным или целочисленным, то макрос вызывает соответствующую вещественную функцию ( acoshf , acosh , acoshl ). Если z является мнимым, то макрос вызывает соответствующую версию для комплексных чисел, и тип возвращаемого значения является комплексным.

Содержание

Параметры

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

Возвращаемое значение

Комплексный гиперболический арккосинус от z в интервале [0; ∞) вдоль действительной оси и в интервале [−iπ; +iπ] вдоль мнимой оси.

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

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

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

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

Примечания

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

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

Математическое определение главного значения обратного гиперболического косинуса: acosh z = ln(z + z+1 z-1 )

For any z, acosh(z) =
z-1
1-z
acos(z)
, or simply i acos(z) in the upper half of the complex plane.

Пример

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

Вывод:

cacosh(+0.5+0i) = 0.000000-1.047198i
cacosh(+0.5-0i) (the other side of the cut) = 0.500000-0.000000i
casinh(1+1i) = 1.061275+0.666239i
I*asin(1+1i) = -1.061275+0.666239i

Ссылки

  • Стандарт C11 (ISO/IEC 9899:2011):
  • 7.3.6.1 Функции cacosh (стр. 192)
  • 7.25 Обобщенная математика <tgmath.h> (стр. 373-375)
  • G.6.2.1 Функции cacosh (стр. 539-540)
  • G.7 Обобщенная математика <tgmath.h> (стр. 545)
  • Стандарт C99 (ISO/IEC 9899:1999):
  • 7.3.6.1 Функции cacosh (стр. 174)
  • 7.22 Обобщенная математика <tgmath.h> (стр. 335-337)
  • G.6.2.1 Функции cacosh (стр. 474-475)
  • G.7 Обобщенная математика <tgmath.h> (стр. 480)

Смотрите также

(C99) (C99) (C99)
вычисляет комплексный арккосинус
(функция)
(C99) (C99) (C99)
вычисляет комплексный гиперболический арксинус
(функция)
(C99) (C99) (C99)
вычисляет комплексный гиперболический арктангенс
(функция)
(C99) (C99) (C99)
вычисляет комплексный гиперболический косинус
(функция)
(C99) (C99) (C99)
вычисляет обратный гиперболический косинус ( arcosh(x) )
(функция)