csinf, csin, csinl - cppreference.com (original) (raw)
| Defined in header <complex.h> | ||
|---|---|---|
| float complex csinf( float complex z ); | (1) | (since C99) |
| double complex csin( double complex z ); | (2) | (since C99) |
| long double complex csinl( long double complex z ); | (3) | (since C99) |
| Defined in header <tgmath.h> | ||
| #define sin( z ) | (4) | (since C99) |
1-3) Computes the complex sine of z.
- Type-generic macro: If
zhas type long double complex,csinlis called. ifzhas type double complex,csinis called, ifzhas type float complex,csinfis called. Ifzis real or integer, then the macro invokes the corresponding real function (sinf, sin, sinl). Ifzis imaginary, then the macro invokes the corresponding real version of the function sinh, implementing the formula sin(iy) = i ∙ sinh(y), and the return type of the macro is imaginary.
[edit] Parameters
[edit] Return value
If no errors occur, the complex sine of z.
Errors and special cases are handled as if the operation is implemented by -I * csinh(I*z)
[edit] Notes
The sine is an entire function on the complex plane, and has no branch cuts.
Mathematical definition of the sine is sin z =
[edit] Example
#include <stdio.h> #include <math.h> #include <complex.h> int main(void) { double complex z = csin(1); // behaves like real sine along the real line printf("sin(1+0i) = %f%+fi ( sin(1)=%f)\n", creal(z), cimag(z), sin(1)); double complex z2 = csin(I); // behaves like sinh along the imaginary line printf("sin(0+1i) = %f%+fi (sinh(1)=%f)\n", creal(z2), cimag(z2), sinh(1)); }
Output:
sin(1+0i) = 0.841471+0.000000i ( sin(1)=0.841471) sin(0+1i) = 0.000000+1.175201i (sinh(1)=1.175201)
[edit] References
C17 standard (ISO/IEC 9899:2018):
7.3.5.5 The csin functions (p: 138-139)
7.25 Type-generic math <tgmath.h> (p: 272-273)
G.7 Type-generic math <tgmath.h> (p: 397)
C11 standard (ISO/IEC 9899:2011):
7.3.5.5 The csin functions (p: 191-192)
7.25 Type-generic math <tgmath.h> (p: 373-375)
G.7 Type-generic math <tgmath.h> (p: 545)
C99 standard (ISO/IEC 9899:1999):
7.3.5.5 The csin functions (p: 173)
7.22 Type-generic math <tgmath.h> (p: 335-337)
G.7 Type-generic math <tgmath.h> (p: 480)