Namespaces
Variants

std:: tanh (std::complex)

From cppreference.net
헤더 파일에 정의됨 <complex>
template < class T >
complex < T > tanh ( const complex < T > & z ) ;
(C++11 이후)

복소수 값 z 의 복소 쌍곡탄젠트를 계산합니다.

목차

매개변수

z - 복소수 값

반환값

오류가 발생하지 않으면, 복소 쌍곡탄젠트 함수의 z 에 대한 결과값이 반환됩니다.

오류 처리 및 특수 값

오류는 math_errhandling 과 일관되게 보고됩니다.

구현이 IEEE 부동 소수점 연산을 지원하는 경우,

  • std:: tanh ( std:: conj ( z ) ) == std:: conj ( std:: tanh ( z ) ) .
  • std:: tanh ( - z ) == - std:: tanh ( z ) .
  • 만약 z (+0,+0) 이면, 결과는 (+0,+0) 입니다.
  • 만약 z (x,+∞) (임의의 [1] 유한한 x에 대해)이면, 결과는 (NaN,NaN) 이며 FE_INVALID 가 발생합니다.
  • 만약 z (x,NaN) (임의의 [2] 유한한 x에 대해)이면, 결과는 (NaN,NaN) 이며 FE_INVALID 가 발생할 수 있습니다.
  • 만약 z (+∞,y) (임의의 유한한 양수 y에 대해)이면, 결과는 (1,+0) 입니다.
  • 만약 z (+∞,+∞) 이면, 결과는 (1,±0) 입니다 (허수부의 부호는 지정되지 않음).
  • 만약 z (+∞,NaN) 이면, 결과는 (1,±0) 입니다 (허수부의 부호는 지정되지 않음).
  • 만약 z (NaN,+0) 이면, 결과는 (NaN,+0) 입니다.
  • 만약 z (NaN,y) (임의의 0이 아닌 y에 대해)이면, 결과는 (NaN,NaN) 이며 FE_INVALID 가 발생할 수 있습니다.
  • 만약 z (NaN,NaN) 이면, 결과는 (NaN,NaN) 입니다.
  1. C11 DR471 에 따르면, 이는 0이 아닌 x에 대해서만 성립합니다. 만약 z (0,∞) 인 경우, 결과는 (0,NaN) 이어야 합니다.
  2. C11 DR471 에 따르면, 이는 0이 아닌 x에 대해서만 성립합니다. 만약 z (0,NaN) 인 경우, 결과는 (0,NaN) 이어야 합니다.

참고 사항

Mathematical definition of hyperbolic tangent is tanh z =
e z
-e -z
e z
+e -z
.

쌍곡 탄젠트는 복소 평면에서의 해석 함수이며 가지 절단이 없습니다. 이 함수는 허수 성분에 대해 주기 πi를 가지며, 좌표 (0, π(1/2 + n)) 에서 허수선을 따라 1차 극점을 가집니다. 그러나 일반적인 부동소수점 표현 방식으로는 π/2 를 정확히 표현할 수 없으므로, 극점 오류가 발생하는 인수 값은 존재하지 않습니다.

예제

#include <cmath>
#include <complex>
#include <iostream>
int main()
{
    std::cout << std::fixed;
    std::complex<double> z(1.0, 0.0); // 실수 축을 따라 실제 tanh처럼 동작함
    std::cout << "tanh" << z << " = " << std::tanh(z)
              << " (tanh(1) = " << std::tanh(1) << ")\n";
    std::complex<double> z2(0.0, 1.0); // 허수 축을 따라 tangent처럼 동작함
    std::cout << "tanh" << z2 << " = " << std::tanh(z2)
              << " ( tan(1) = " << std::tan(1) << ")\n";
}

출력:

tanh(1.000000,0.000000) = (0.761594,0.000000) (tanh(1) = 0.761594)
tanh(0.000000,1.000000) = (0.000000,1.557408) ( tan(1) = 1.557408)

참고 항목

복소수의 쌍곡사인을 계산합니다 ( sinh(z) )
(함수 템플릿)
복소수의 쌍곡코사인을 계산합니다 ( cosh(z) )
(함수 템플릿)
복소수의 영역 쌍곡탄젠트를 계산합니다 ( artanh(z) )
(함수 템플릿)
(C++11) (C++11)
쌍곡탄젠트를 계산합니다 ( tanh(x) )
(함수)
함수 std::tanh 을 valarray의 각 요소에 적용합니다
(함수 템플릿)
C 문서 for ctanh