casinf, casin, casinl
|
Definiert im Header
<complex.h>
|
||
| (1) | (seit C99) | |
| (2) | (seit C99) | |
| (3) | (seit C99) | |
|
Definiert im Header
<tgmath.h>
|
||
|
#define asin( z )
|
(4) | (seit C99) |
z
mit Verzweigungsschnitten außerhalb des Intervalls
[−1,+1]
entlang der reellen Achse.
z
den Typ
long
double
complex
hat, wird
casinl
aufgerufen. Wenn
z
den Typ
double
complex
hat, wird
casin
aufgerufen. Wenn
z
den Typ
float
complex
hat, wird
casinf
aufgerufen. Wenn
z
reell oder ganzzahlig ist, ruft das Makro die entsprechende reelle Funktion auf (
asinf
,
asin
,
asinl
). Wenn
z
imaginär ist, ruft das Makro die entsprechende reelle Version der Funktion
asinh
auf, implementiert die Formel
arcsin(iy) = i arsinh(y)
, und der Rückgabetyp des Makros ist imaginär.
Inhaltsverzeichnis |
Parameter
| z | - | komplexes Argument |
Rückgabewert
Wenn keine Fehler auftreten, wird der komplexe Arkussinus von
z
zurückgegeben, im Bereich eines Streifens, der entlang der imaginären Achse unbeschränkt und im Intervall
[−π/2; +π/2]
entlang der reellen Achse liegt.
Fehler und Sonderfälle werden behandelt, als ob die Operation durch - I * casinh ( I * z )
Hinweise
Arkussinus (oder Arcussinus) ist eine mehrdeutige Funktion und erfordert einen Verzweigungsschnitt in der komplexen Ebene. Der Verzweigungsschnitt wird konventionell auf den Liniensegmenten (-∞,-1) und (1,∞) der reellen Achse platziert.
Die mathematische Definition des Hauptwerts des Arkussinus ist
arcsin z = -
i
ln(
i
z +
√
1-z
2
)
| π |
| 2 |
Beispiel
#include <stdio.h> #include <math.h> #include <complex.h> int main(void) { double complex z = casin(-2); printf("casin(-2+0i) = %f%+fi\n", creal(z), cimag(z)); double complex z2 = casin(conj(-2)); // oder CMPLX(-2, -0.0) printf("casin(-2-0i) (the other side of the cut) = %f%+fi\n", creal(z2), cimag(z2)); // für jedes z gilt: asin(z) = acos(-z) - pi/2 double pi = acos(-1); double complex z3 = csin(cacos(conj(-2))-pi/2); printf("csin(cacos(-2-0i)-pi/2) = %f%+fi\n", creal(z3), cimag(z3)); }
Ausgabe:
casin(-2+0i) = -1.570796+1.316958i casin(-2-0i) (the other side of the cut) = -1.570796-1.316958i csin(cacos(-2-0i)-pi/2) = 2.000000+0.000000i
Referenzen
- C11-Standard (ISO/IEC 9899:2011):
-
- 7.3.5.2 Die casin-Funktionen (S. 190)
-
- 7.25 Typgenerische Mathematik <tgmath.h> (S. 373-375)
-
- G.7 Typgenerische Mathematik <tgmath.h> (S. 545)
- C99-Standard (ISO/IEC 9899:1999):
-
- 7.3.5.2 Die casin-Funktionen (S. 172)
-
- 7.22 Typgenerische Mathematik <tgmath.h> (S. 335-337)
-
- G.7 Typgenerische Mathematik <tgmath.h> (S. 480)
Siehe auch
|
(C99)
(C99)
(C99)
|
berechnet den komplexen Arkuskosinus
(Funktion) |
|
(C99)
(C99)
(C99)
|
berechnet den komplexen Arkustangens
(Funktion) |
|
(C99)
(C99)
(C99)
|
berechnet den komplexen Sinus
(Funktion) |
|
(C99)
(C99)
|
berechnet den Arkussinus (
arcsin(x)
)
(Funktion) |
|
C++-Dokumentation
für
asin
|
|