Namespaces
Variants

ctanf, ctan, ctanl

From cppreference.net
Definido en el encabezado <complex.h>
float complex ctanf ( float complex z ) ;
(1) (desde C99)
double complex ctan ( double complex z ) ;
(2) (desde C99)
long double complex ctanl ( long double complex z ) ;
(3) (desde C99)
Definido en el encabezado <tgmath.h>
#define tan( z )
(4) (desde C99)
1-3) Calcula la tangente compleja de z .
4) Macro genérico de tipos: Si z tiene tipo long double complex , ctanl es llamado. Si z tiene tipo double complex , ctan es llamado. Si z tiene tipo float complex , ctanf es llamado. Si z es real o entero, entonces el macro invoca la función real correspondiente ( tanf , tan , tanl ). Si z es imaginario, entonces el macro invoca la versión real correspondiente de la función tanh , implementando la fórmula tan(iy) = i tanh(y) , y el tipo de retorno es imaginario.

Contenidos

Parámetros

z - argumento complejo

Valor de retorno

Si no ocurren errores, se devuelve la tangente compleja de z .

Los errores y casos especiales se manejan como si la operación estuviera implementada por - i * ctanh ( i * z ) , donde i es la unidad imaginaria.

Notas

La tangente es una función analítica en el plano complejo y no tiene cortes de rama. Es periódica con respecto al componente real, con período πi, y tiene polos de primer orden a lo largo de la línea real, en coordenadas (π(1/2 + n), 0) . Sin embargo, ninguna representación común de punto flotante puede representar π/2 exactamente, por lo tanto no existe ningún valor del argumento para el cual ocurra un error de polo.

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

Ejemplo

#include <stdio.h>
#include <math.h>
#include <complex.h>
int main(void)
{
    double complex z = ctan(1);  // se comporta como tangente real a lo largo del eje real
    printf("tan(1+0i) = %f%+fi ( tan(1)=%f)\n", creal(z), cimag(z), tan(1));
    double complex z2 = ctan(I); // se comporta como tanh a lo largo del eje imaginario
    printf("tan(0+1i) = %f%+fi (tanh(1)=%f)\n", creal(z2), cimag(z2), tanh(1));
}

Salida:

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

Referencias

  • Estándar C11 (ISO/IEC 9899:2011):
  • 7.3.5.6 Las funciones ctan (p: 192)
  • 7.25 Complejo genérico de tipos <tgmath.h> (p: 373-375)
  • G.7 Matemáticas genéricas de tipos <tgmath.h> (p: 545)
  • Estándar C99 (ISO/IEC 9899:1999):
  • 7.3.5.6 Las funciones ctan (p: 174)
  • 7.22 Complejo genérico de tipos <tgcomplex.h> (p: 335-337)
  • G.7 Matemáticas genéricas de tipos <tgmath.h> (p: 480)

Véase también

(C99) (C99) (C99)
calcula la tangente hiperbólica compleja
(función)
(C99) (C99) (C99)
calcula el seno complejo
(función)
(C99) (C99) (C99)
calcula el coseno complejo
(función)
(C99) (C99) (C99)
calcula el arcotangente complejo
(función)
(C99) (C99)
calcula la tangente ( tan(x) )
(función)