Spec-Zone.ru › C++

std::cosh(std::complex)

Определено в заголовочном файле <complex>
template< class T > 
complex<T> cosh( const complex<T>& z );
(начиная с C++11)

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

Параметры

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

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

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

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

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

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

  • std::cosh(std::conj(z)) == std::conj(std::cosh(z))
  • std::cosh(z) == std::cosh(-z)
  • Если z равно (+0,+0), результатом является (1,+0)
  • Если z равно (+0,+∞), результатом является (NaN,±0) (знак мнимой части не определён), и возникает FE_INVALID
  • Если z равно (+0,NaN), результатом является (NaN,±0) (знак мнимой части не определён)
  • Если 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).

Примечания

Математическое определение гиперболического косинуса: cosh z =

ez+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); // behaves like real cosh along the real line
    std::cout << "cosh" << z << " = " << std::cosh(z)
              << " (cosh(1) = " << std::cosh(1) << ")\n";

    std::complex<double> z2(0.0, 1.0); // behaves like real cosine along the imaginary line
    std::cout << "cosh" << z2 << " = " << std::cosh(z2)
              << " ( cos(1) = " << std::cos(1) << ")\n";
}

Вывод:

cosh(1.000000,0.000000) = (1.543081,0.000000) (cosh(1) = 1.543081)
cosh(0.000000,1.000000) = (0.540302,0.000000) ( cos(1) = 0.540302)

См. также

sinh(std::complex)
вычисляет гиперболический синус комплексного числа (\({\small\sinh{z}}\)sinh(z))
(шаблон функции)
tanh(std::complex)
вычисляет гиперболический тангенс комплексного числа (\({\small\tanh{z}}\)tanh(z))
(шаблон функции)
acosh(std::complex)
(C++11)
вычисляет обратный гиперболический косинус комплексного числа (\({\small\operatorname{arcosh}{z}}\)arcosh(z))
(шаблон функции)
coshcoshfcoshl
(C++11)(C++11)
вычисляет гиперболический косинус (\({\small\cosh{x}}\)cosh(x))
(функция)
cosh(std::valarray)
применяет функцию std::cosh к каждому элементу valarray
(шаблон функции)
Документация C для ccosh

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

Spec-Zone.ru

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