Namensräume
Varianten
Aktionen

casinhf, casinh, casinhl

Von cppreference.com
< c‎ | numeric‎ | complex
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 in Header <tgmath.h>
#define asinh( z )
(4) (seit C99)
1-3) Berechnet den komplexen hyperbolischen Arkussinus von z mit Schnittlinien außerhalb des Intervalls [−i; +i] entlang der imaginären Achse.
4) Typgenerische 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 und implementiert die Formel asinh(iy) = i asin(y), und der Rückgabetyp ist imaginär.

Inhalt

[edit] Parameter

z - complex argument

[edit] Rückgabewert

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

[edit] Fehlerbehandlung und spezielle Werte

Fehler werden konsistent mit math_errhandling gemeldet.

Wenn die Implementierung IEEE-Gleitkomma-Arithmetik unterstützt,

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

[edit] Anmerkungen

Obwohl der C-Standard diese Funktion als "komplexer hyperbolischer Arkussinus" bezeichnet, sind die Umkehrfunktionen der hyperbolischen Funktionen die Flächenfunktionen. Ihr Argument ist die Fläche eines hyperbolischen Sektors, nicht eines Bogens. Der korrekte Name ist "komplexer inverser hyperbolischer Sinus" und seltener "komplexer hyperbolischer Flächensinus".

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

Die mathematische Definition des Hauptwertes des inversen hyperbolischen Sinus ist asinh z = ln(z + 1+z2
)

Für jedes z gilt asinh(z) =
asin(iz)
i

[edit] 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

[edit] Referenzen

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

[edit] Siehe auch

(C99)(C99)(C99)
berechnet den komplexen inversen hyperbolischen Kosinus
(Funktion) [bearbeiten]
(C99)(C99)(C99)
berechnet den komplexen inversen hyperbolischen Tangens
(Funktion) [bearbeiten]
(C99)(C99)(C99)
berechnet den komplexen hyperbolischen Sinus
(Funktion) [bearbeiten]
(C99)(C99)(C99)
berechnet inversen Sinus hyperbolicus (arsinh(x))
(Funktion) [bearbeiten]