Namespaces
Variants

ctanf, ctan, ctanl

From cppreference.net
Défini dans l'en-tête <complex.h>
float complex ctanf ( float complex z ) ;
(1) (depuis C99)
double complex ctan ( double complex z ) ;
(2) (depuis C99)
long double complex ctanl ( long double complex z ) ;
(3) (depuis C99)
Défini dans l'en-tête <tgmath.h>
#define tan( z )
(4) (depuis C99)
1-3) Calcule la tangente complexe de z .
4) Macro générique de type : Si z est de type long double complex , ctanl est appelé. Si z est de type double complex , ctan est appelé. Si z est de type float complex , ctanf est appelé. Si z est réel ou entier, alors la macro appelle la fonction réelle correspondante ( tanf , tan , tanl ). Si z est imaginaire, alors la macro appelle la version réelle correspondante de la fonction tanh , implémentant la formule tan(iy) = i tanh(y) , et le type de retour est imaginaire.

Table des matières

Paramètres

z - argument complexe

Valeur de retour

Si aucune erreur ne se produit, la tangente complexe de z est retournée.

Les erreurs et les cas particuliers sont traités comme si l'opération était implémentée par - i * ctanh ( i * z ) , où i est l'unité imaginaire.

Notes

La tangente est une fonction analytique sur le plan complexe et ne présente aucune coupure de branche. Elle est périodique par rapport à la composante réelle, avec une période de πi, et possède des pôles du premier ordre le long de l'axe réel, aux coordonnées (π(1/2 + n), 0) . Cependant, aucune représentation courante en virgule flottante ne peut représenter π/2 exactement, donc il n'existe aucune valeur de l'argument pour laquelle une erreur de pôle se produit.

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

Exemple

#include <stdio.h>
#include <math.h>
#include <complex.h>
int main(void)
{
    double complex z = ctan(1);  // se comporte comme la tangente réelle le long de l'axe réel
    printf("tan(1+0i) = %f%+fi ( tan(1)=%f)\n", creal(z), cimag(z), tan(1));
    double complex z2 = ctan(I); // se comporte comme tanh le long de l'axe imaginaire
    printf("tan(0+1i) = %f%+fi (tanh(1)=%f)\n", creal(z2), cimag(z2), tanh(1));
}

Sortie :

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

Références

  • Norme C11 (ISO/CEI 9899:2011) :
  • 7.3.5.6 Les fonctions ctan (p. 192)
  • 7.25 Mathématiques génériques de type <tgmath.h> (p. 373-375)
  • G.7 Mathématiques génériques de type <tgmath.h> (p. 545)
  • Norme C99 (ISO/CEI 9899:1999) :
  • 7.3.5.6 Les fonctions ctan (p. 174)
  • 7.22 Complexe générique de type <tgcomplex.h> (p. 335-337)
  • G.7 Mathématiques génériques de type <tgmath.h> (p. 480)

Voir aussi

(C99) (C99) (C99)
calcule la tangente hyperbolique complexe
(fonction)
(C99) (C99) (C99)
calcule le sinus complexe
(fonction)
(C99) (C99) (C99)
calcule le cosinus complexe
(fonction)
(C99) (C99) (C99)
calcule l'arc tangente complexe
(fonction)
(C99) (C99)
calcule la tangente ( tan(x) )
(fonction)