Namespaces
Variants

std:: sinh (std::complex)

From cppreference.net
Определено в заголовке <complex>
template < class T >
complex < T > sinh ( const complex < T > & z ) ;
(начиная с C++11)

Вычисляет комплексный гиперболический синус комплексного значения z .

Содержание

Параметры

z - комплексное значение

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

Если ошибок не возникает, возвращается комплексный гиперболический синус от z .

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

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

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

  • std:: sinh ( std:: conj ( z ) ) == std:: conj ( std:: sinh ( z ) )
  • std:: sinh ( z ) == - std:: sinh ( - z )
  • Если z равен (+0,+0) , результат (+0,+0)
  • Если z равен (+0,+∞) , результат (±0,NaN) (знак действительной части не определён) и возбуждается FE_INVALID
  • Если z равен (+0,NaN) , результат (±0,NaN)
  • Если z равен (x,+∞) (для любого положительного конечного x), результат (NaN,NaN) и возбуждается FE_INVALID
  • Если z равен (x,NaN) (для любого положительного конечного x), результат (NaN,NaN) и может быть возбуждено FE_INVALID
  • Если z равен (+∞,+0) , результат (+∞,+0)
  • Если z равен (+∞,y) (для любого положительного конечного y), результат +∞cis(y)
  • Если z равен (+∞,+∞) , результат (±∞,NaN) (знак действительной части не определён) и возбуждается FE_INVALID
  • Если z равен (+∞,NaN) , результат (±∞,NaN) (знак действительной части не определён)
  • Если z равен (NaN,+0) , результат (NaN,+0)
  • Если z равен (NaN,y) (для любого конечного ненулевого y), результат (NaN,NaN) и может быть возбуждено FE_INVALID
  • Если z равен (NaN,NaN) , результат (NaN,NaN)

где cis(y) это cos(y) + i sin(y) .

Примечания

Mathematical definition of hyperbolic sine is sinh z =
e z
-e -z
2
.

Гиперболический синус является целой функцией в комплексной плоскости и не имеет точек ветвления. Он периодичен по мнимой составляющей с периодом 2πi .

Пример

#include <cmath>
#include <complex>
#include <iostream>
int main()
{
    std::cout << std::fixed;
    std::complex<double> z(1.0, 0.0); // ведет себя как вещественный sinh вдоль вещественной оси
    std::cout << "sinh" << z << " = " << std::sinh(z)
              << " (sinh(1) = " << std::sinh(1) << ")\n";
    std::complex<double> z2(0.0, 1.0); // ведет себя как синус вдоль мнимой оси
    std::cout << "sinh" << z2 << " = " << std::sinh(z2)
              << " ( sin(1) = " << std::sin(1) << ")\n";
}

Вывод:

sinh(1.000000,0.000000) = (1.175201,0.000000) (sinh(1) = 1.175201)
sinh(0.000000,1.000000) = (0.000000,0.841471) ( sin(1) = 0.841471)

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

вычисляет гиперболический косинус комплексного числа ( cosh(z) )
(шаблон функции)
вычисляет гиперболический тангенс комплексного числа ( tanh(z) )
(шаблон функции)
вычисляет гиперболический арксинус комплексного числа ( arsinh(z) )
(шаблон функции)
(C++11) (C++11)
вычисляет гиперболический синус ( sinh(x) )
(функция)
применяет функцию std::sinh к каждому элементу valarray
(шаблон функции)