Namespaces
Variants

ctanf, ctan, ctanl

From cppreference.net
헤더 파일에 정의됨 <complex.h>
float complex ctanf ( float complex z ) ;
(1) (C99부터)
double complex ctan ( double complex z ) ;
(2) (C99부터)
long double complex ctanl ( long double complex z ) ;
(3) (C99부터)
헤더 파일에 정의됨 <tgmath.h>
#define tan( z )
(4) (C99부터)
1-3) z 의 복소 탄젠트를 계산합니다.
4) 타입-제네릭 매크로: z 의 타입이 long double complex 인 경우 ctanl 이 호출됩니다. z 의 타입이 double complex 인 경우 ctan 이 호출됩니다. z 의 타입이 float complex 인 경우 ctanf 이 호출됩니다. z 가 실수 또는 정수인 경우, 매크로는 해당 실수 함수( tanf , tan , tanl )를 호출합니다. z 가 허수인 경우, 매크로는 함수 tanh 의 해당 실수 버전을 호출하여 공식 tan(iy) = i tanh(y) 를 구현하며, 반환 타입은 허수입니다.

목차

매개변수

z - 복소 인수

반환값

오류가 발생하지 않으면, z 의 복소 탄젠트가 반환됩니다.

오류 및 특수 사례는 해당 연산이 - i * ctanh ( i * z ) 로 구현된 것처럼 처리됩니다. 여기서 i 는 허수 단위입니다.

참고 사항

탄젠트는 복소 평면에서의 해석 함수이며 가지 절단(branch cut)이 없습니다. 이 함수는 실수 성분에 대해 주기 πi를 가지며, 실수 축 상의 (π(1/2 + n), 0) 좌표에서 1차 극점(poles of the first order)을 가집니다. 그러나 일반적인 부동 소수점 표현으로는 π/2를 정확히 표현할 수 없기 때문에, 극점 오류(pole error)가 발생하는 인수 값은 존재하지 않습니다.

Mathematical definition of the tangent is tan z =
i(e -iz
-e iz
)
e -iz
+e iz

예제

#include <stdio.h>
#include <math.h>
#include <complex.h>
int main(void)
{
    double complex z = ctan(1);  // 실수 축에서 실제 탄젠트처럼 동작함
    printf("tan(1+0i) = %f%+fi ( tan(1)=%f)\n", creal(z), cimag(z), tan(1));
    double complex z2 = ctan(I); // 허수 축에서 tanh처럼 동작함
    printf("tan(0+1i) = %f%+fi (tanh(1)=%f)\n", creal(z2), cimag(z2), tanh(1));
}

출력:

tan(1+0i) = 1.557408+0.000000i ( tan(1)=1.557408)
tan(0+1i) = 0.000000+0.761594i (tanh(1)=0.761594)

참고문헌

  • C11 표준 (ISO/IEC 9899:2011):
  • 7.3.5.6 The ctan functions (p: 192)
  • 7.25 Type-generic complex <tgmath.h> (p: 373-375)
  • G.7 Type-generic math <tgmath.h> (p: 545)
  • C99 표준 (ISO/IEC 9899:1999):
  • 7.3.5.6 The ctan functions (p: 174)
  • 7.22 Type-generic complex <tgcomplex.h> (p: 335-337)
  • G.7 Type-generic math <tgmath.h> (p: 480)

참고 항목

(C99) (C99) (C99)
복소 쌍곡탄젠트를 계산함
(함수)
(C99) (C99) (C99)
복소 사인을 계산함
(함수)
(C99) (C99) (C99)
복소 코사인을 계산함
(함수)
(C99) (C99) (C99)
복소 아크탄젠트를 계산함
(함수)
(C99) (C99)
탄젠트를 계산함 ( tan(x) )
(함수)
C++ 문서 for tan