Namespaces
Variants

ctanhf, ctanh, ctanhl

From cppreference.net
Definiert im Header <complex.h>
float complex ctanhf ( float complex z ) ;
(1) (seit C99)
double complex ctanh ( double complex z ) ;
(2) (seit C99)
long double complex ctanhl ( long double complex z ) ;
(3) (seit C99)
Definiert im Header <tgmath.h>
#define tanh( z )
(4) (seit C99)
1-3) Berechnet den komplexen hyperbolischen Tangens von z .
4) Typgenerisches Makro: Wenn z den Typ long double complex hat, wird ctanhl aufgerufen. Wenn z den Typ double complex hat, wird ctanh aufgerufen. Wenn z den Typ float complex hat, wird ctanhf aufgerufen. Wenn z reell oder ganzzahlig ist, ruft das Makro die entsprechende reelle Funktion auf ( tanhf , tanh , tanhl ). Wenn z imaginär ist, ruft das Makro die entsprechende reelle Version der Funktion tan auf, implementiert die Formel tanh(iy) = i tan(y) , und der Rückgabetyp ist imaginär.

Inhaltsverzeichnis

Parameter

z - komplexes Argument

Rückgabewert

Wenn keine Fehler auftreten, wird der komplexe hyperbolische Tangens von z zurückgegeben

Fehlerbehandlung und spezielle Werte

Fehler werden gemeldet konsistent mit math_errhandling

Wenn die Implementierung IEEE-Gleitkommaarithmetik unterstützt,

  • ctanh ( conj ( z ) ) == conj ( ctanh ( z ) )
  • ctanh ( - z ) == - ctanh ( z )
  • Wenn z gleich +0+0i ist, ist das Ergebnis +0+0i
  • Wenn z gleich x+∞i ist (für jedes [1] endliche x), ist das Ergebnis NaN+NaNi und FE_INVALID wird ausgelöst
  • Wenn z gleich x+NaN ist (für jedes [2] endliche x), ist das Ergebnis NaN+NaNi und FE_INVALID kann ausgelöst werden
  • Wenn z gleich +∞+yi ist (für jedes endliche positive y), ist das Ergebnis 1+0i
  • Wenn z gleich +∞+∞i ist, ist das Ergebnis 1±0i (das Vorzeichen des Imaginärteils ist nicht spezifiziert)
  • Wenn z gleich +∞+NaNi ist, ist das Ergebnis 1±0i (das Vorzeichen des Imaginärteils ist nicht spezifiziert)
  • Wenn z gleich NaN+0i ist, ist das Ergebnis NaN+0i
  • Wenn z gleich NaN+yi ist (für jedes y ungleich null), ist das Ergebnis NaN+NaNi und FE_INVALID kann ausgelöst werden
  • Wenn z gleich NaN+NaNi ist, ist das Ergebnis NaN+NaNi
  1. gemäß DR471 gilt dies nur für nicht-null x. Wenn z gleich 0+∞i ist, sollte das Ergebnis 0+NaNi sein
  2. gemäß DR471 gilt dies nur für nicht-null x. Wenn z gleich 0+NaNi ist, sollte das Ergebnis 0+NaNi sein

Hinweise

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

Der hyperbolische Tangens ist eine analytische Funktion auf der komplexen Ebene und weist keine Verzweigungsschnitte auf. Er ist periodisch bezüglich der imaginären Komponente mit der Periode πi und hat Pole erster Ordnung entlang der imaginären Linie bei den Koordinaten (0, π(1/2 + n)) . Allerdings kann keine gängige Gleitkommadarstellung π/2 exakt darstellen, daher gibt es keinen Argumentwert, bei dem ein Polfehler auftritt.

Beispiel

#include <stdio.h>
#include <math.h>
#include <complex.h>
int main(void)
{
    double complex z = ctanh(1);  // verhält sich wie reelles tanh entlang der reellen Achse
    printf("tanh(1+0i) = %f%+fi (tanh(1)=%f)\n", creal(z), cimag(z), tanh(1));
    double complex z2 = ctanh(I); // verhält sich wie Tangens entlang der imaginären Achse
    printf("tanh(0+1i) = %f%+fi ( tan(1)=%f)\n", creal(z2), cimag(z2), tan(1));
}

Ausgabe:

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

Referenzen

  • C11-Standard (ISO/IEC 9899:2011):
  • 7.3.6.6 The ctanh functions (S. 194)
  • 7.25 Type-generic math <tgmath.h> (S. 373-375)
  • G.6.2.6 The ctanh functions (S. 542)
  • G.7 Type-generic math <tgmath.h> (S. 545)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.3.6.6 The ctanh functions (S. 176)
  • 7.22 Type-generic math <tgmath.h> (S. 335-337)
  • G.6.2.6 The ctanh functions (S. 477)
  • G.7 Type-generic math <tgmath.h> (S. 480)

Siehe auch

(C99) (C99) (C99)
berechnet den komplexen hyperbolischen Sinus
(Funktion)
(C99) (C99) (C99)
berechnet den komplexen hyperbolischen Kosinus
(Funktion)
(C99) (C99) (C99)
berechnet den komplexen Areatangens hyperbolicus
(Funktion)
(C99) (C99)
berechnet den hyperbolischen Tangens ( tanh(x) )
(Funktion)