Namespaces
Variants

casinhf, casinh, casinhl

From cppreference.net
Definiert im Header <complex.h>
float complex casinhf ( float complex z ) ;
(1) (seit C99)
double complex casinh ( double complex z ) ;
(2) (seit C99)
long double complex casinhl ( long double complex z ) ;
(3) (seit C99)
Definiert im Header <tgmath.h>
#define asinh( z )
(4) (seit C99)
1-3) Berechnet den komplexen Areahyperbelsinus von z mit Verzweigungsschnitten außerhalb des Intervalls [−i; +i] entlang der imaginären Achse.
4) Typgenerisches Makro: Wenn z den Typ long double complex hat, wird casinhl aufgerufen. Wenn z den Typ double complex hat, wird casinh aufgerufen. Wenn z den Typ float complex hat, wird casinhf aufgerufen. Wenn z reell oder ganzzahlig ist, ruft das Makro die entsprechende reelle Funktion auf ( asinhf , asinh , asinhl ). Wenn z imaginär ist, ruft das Makro die entsprechende reelle Version der Funktion asin auf, implementiert die Formel asinh(iy) = i asin(y) , und der Rückgabetyp ist imaginär.

Inhaltsverzeichnis

Parameter

z - komplexes Argument

Rückgabewert

Wenn keine Fehler auftreten, wird der komplexe Areahyperbelsinus von z zurückgegeben, im Bereich eines mathematisch entlang der reellen Achse unbeschränkten Streifens und im Intervall [−iπ/2; +iπ/2] entlang der imaginären Achse.

Fehlerbehandlung und spezielle Werte

Fehler werden gemeldet konsistent mit math_errhandling

Wenn die Implementierung IEEE-Gleitkommaarithmetik unterstützt,

  • casinh ( conj ( z ) ) == conj ( casinh ( z ) )
  • casinh ( - z ) == - casinh ( z )
  • Wenn z gleich +0+0i ist, ist das Ergebnis +0+0i
  • Wenn z gleich x+∞i ist (für jedes positive endliche x), ist das Ergebnis +∞+π/2
  • Wenn z gleich x+NaNi ist (für jedes endliche x), ist das Ergebnis NaN+NaNi und FE_INVALID kann ausgelöst werden
  • Wenn z gleich +∞+yi ist (für jedes positive endliche y), ist das Ergebnis +∞+0i
  • Wenn z gleich +∞+∞i ist, ist das Ergebnis +∞+iπ/4
  • Wenn z gleich +∞+NaNi ist, ist das Ergebnis +∞+NaNi
  • Wenn z gleich NaN+0i ist, ist das Ergebnis NaN+0i
  • Wenn z gleich NaN+yi ist (für jedes endliche y ungleich null), ist das Ergebnis NaN+NaNi und FE_INVALID kann ausgelöst werden
  • Wenn z gleich NaN+∞i ist, ist das Ergebnis ±∞+NaNi (das Vorzeichen des Realteils ist nicht spezifiziert)
  • Wenn z gleich NaN+NaNi ist, ist das Ergebnis NaN+NaNi

Hinweise

Obwohl der C-Standard diese Funktion als "komplexen Areahyperbelsinus" bezeichnet, sind die Umkehrfunktionen der hyperbolischen Funktionen die Areafunktionen. Ihr Argument ist die Fläche eines hyperbelsektors, nicht ein Bogen. Der korrekte Name ist "komplexer inverser hyperbolischer Sinus" und, weniger gebräuchlich, "komplexer Areahyperbelsinus".

Der inverse hyperbolische Sinus ist eine mehrwertige Funktion und erfordert einen Verzweigungsschnitt in der komplexen Ebene. Der Verzweigungsschnitt wird konventionell auf den Liniensegmenten (- i ∞,- i ) und ( i , i ∞) der imaginären Achse platziert.

Die mathematische Definition des Hauptwerts des Areasinushyperbolicus lautet asinh z = ln(z + 1+z 2
)

For any z, asinh(z) =
asin(iz)
i

Beispiel

#include <stdio.h>
#include <complex.h>
int main(void)
{
    double complex z = casinh(0+2*I);
    printf("casinh(+0+2i) = %f%+fi\n", creal(z), cimag(z));
    double complex z2 = casinh(-conj(2*I)); // or casinh(CMPLX(-0.0, 2)) in C11
    printf("casinh(-0+2i) (the other side of the cut) = %f%+fi\n", creal(z2), cimag(z2));
    // for any z, asinh(z) = asin(iz)/i
    double complex z3 = casinh(1+2*I);
    printf("casinh(1+2i) = %f%+fi\n", creal(z3), cimag(z3));
    double complex z4 = casin((1+2*I)*I)/I;
    printf("casin(i * (1+2i))/i = %f%+fi\n", creal(z4), cimag(z4));
}

Ausgabe:

casinh(+0+2i) = 1.316958+1.570796i
casinh(-0+2i) (the other side of the cut) = -1.316958+1.570796i
casinh(1+2i) = 1.469352+1.063440i
casin(i * (1+2i))/i =  1.469352+1.063440i

Referenzen

  • C11-Standard (ISO/IEC 9899:2011):
  • 7.3.6.2 The casinh functions (S. 192-193)
  • 7.25 Typgenerische Mathematik <tgmath.h> (S. 373-375)
  • G.6.2.2 The casinh functions (S. 540)
  • G.7 Typgenerische Mathematik <tgmath.h> (S. 545)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.3.6.2 The casinh functions (S. 174-175)
  • 7.22 Typgenerische Mathematik <tgmath.h> (S. 335-337)
  • G.6.2.2 The casinh functions (S. 475)
  • G.7 Typgenerische Mathematik <tgmath.h> (S. 480)

Siehe auch

(C99) (C99) (C99)
berechnet den komplexen Areakosinus Hyperbolicus
(Funktion)
(C99) (C99) (C99)
berechnet den komplexen Areatangens Hyperbolicus
(Funktion)
(C99) (C99) (C99)
berechnet den komplexen Sinus Hyperbolicus
(Funktion)
(C99) (C99) (C99)
berechnet den Areasin Hyperbolicus ( arsinh(x) )
(Funktion)