Namespaces
Variants

csinhf, csinh, csinhl

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

Inhaltsverzeichnis

Parameter

z - komplexes Argument

Rückgabewert

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

Fehlerbehandlung und spezielle Werte

Fehler werden gemeldet konsistent mit math_errhandling

Wenn die Implementierung IEEE-Gleitkommaarithmetik unterstützt,

  • csinh ( conj ( z ) ) == conj ( csinh ( z ) )
  • csinh ( z ) == - csinh ( - z )
  • Wenn z gleich +0+0i ist, ist das Ergebnis +0+0i
  • Wenn z gleich +0+∞i ist, ist das Ergebnis ±0+NaNi (das Vorzeichen des Realteils ist nicht spezifiziert) und FE_INVALID wird ausgelöst
  • Wenn z gleich +0+NaNi ist, ist das Ergebnis ±0+NaNi
  • Wenn z gleich x+∞i ist (für jedes positive endliche x), ist das Ergebnis NaN+NaNi und FE_INVALID wird ausgelöst
  • Wenn z gleich x+NaNi ist (für jedes positive endliche x), ist das Ergebnis NaN+NaNi und FE_INVALID kann ausgelöst werden
  • Wenn z gleich +∞+0i ist, ist das Ergebnis +∞+0i
  • Wenn z gleich +∞+yi ist (für jedes positive endliche y), ist das Ergebnis +∞cis(y)
  • Wenn z gleich +∞+∞i ist, ist das Ergebnis ±∞+NaNi (das Vorzeichen des Realteils ist nicht spezifiziert) und FE_INVALID wird ausgelöst
  • Wenn z gleich +∞+NaNi ist, ist das Ergebnis ±∞+NaNi (das Vorzeichen des Realteils ist nicht spezifiziert)
  • 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+NaNi ist, ist das Ergebnis NaN+NaNi

wobei cis(y) für cos(y) + i sin(y) steht

Hinweise

Mathematical definition of hyperbolic sine is sinh z =
e z
-e -z
2

Der hyperbolische Sinus ist eine ganze Funktion in der komplexen Ebene und weist keine Verzweigungsschnitte auf. Er ist periodisch bezüglich der imaginären Komponente mit der Periode 2πi

Beispiel

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

Ausgabe:

sinh(1+0i) = 1.175201+0.000000i (sinh(1)=1.175201)
sinh(0+1i) = 0.000000+0.841471i ( sin(1)=0.841471)

Referenzen

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

Siehe auch

(C99) (C99) (C99)
berechnet den komplexen hyperbolischen Kosinus
(Funktion)
(C99) (C99) (C99)
berechnet den komplexen hyperbolischen Tangens
(Funktion)
(C99) (C99) (C99)
berechnet den komplexen Areahyperbelsinus
(Funktion)
(C99) (C99)
berechnet den hyperbolischen Sinus ( sinh(x) )
(Funktion)