ctanhf, ctanh, ctanhl
|
Definiert im Header
<complex.h>
|
||
| (1) | (seit C99) | |
| (2) | (seit C99) | |
| (3) | (seit C99) | |
|
Definiert im Header
<tgmath.h>
|
||
|
#define tanh( z )
|
(4) | (seit C99) |
z
.
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
zgleich+0+0iist, ist das Ergebnis+0+0i -
Wenn
zgleichx+∞iist (für jedes [1] endliche x), ist das ErgebnisNaN+NaNiund FE_INVALID wird ausgelöst -
Wenn
zgleichx+NaNist (für jedes [2] endliche x), ist das ErgebnisNaN+NaNiund FE_INVALID kann ausgelöst werden -
Wenn
zgleich+∞+yiist (für jedes endliche positive y), ist das Ergebnis1+0i -
Wenn
zgleich+∞+∞iist, ist das Ergebnis1±0i(das Vorzeichen des Imaginärteils ist nicht spezifiziert) -
Wenn
zgleich+∞+NaNiist, ist das Ergebnis1±0i(das Vorzeichen des Imaginärteils ist nicht spezifiziert) -
Wenn
zgleichNaN+0iist, ist das ErgebnisNaN+0i -
Wenn
zgleichNaN+yiist (für jedes y ungleich null), ist das ErgebnisNaN+NaNiund FE_INVALID kann ausgelöst werden -
Wenn
zgleichNaN+NaNiist, ist das ErgebnisNaN+NaNi
-
↑
gemäß
DR471
gilt dies nur für nicht-null x. Wenn
zgleich0+∞iist, sollte das Ergebnis0+NaNisein -
↑
gemäß
DR471
gilt dies nur für nicht-null x. Wenn
zgleich0+NaNiist, sollte das Ergebnis0+NaNisein
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) |
|
C++-Dokumentation
für
tanh
|
|