Namespaces
Variants

csinf, csin, csinl

From cppreference.net
ヘッダー <complex.h> で定義
float complex csinf ( float complex z ) ;
(1) (C99以降)
double complex csin ( double complex z ) ;
(2) (C99以降)
long double complex csinl ( long double complex z ) ;
(3) (C99以降)
ヘッダー <tgmath.h> で定義
#define sin( z )
(4) (C99以降)
1-3) 複素数 z の正弦を計算します。
4) 型総称マクロ: z の型が long double complex の場合、 csinl が呼び出される。 z の型が double complex の場合、 csin が呼び出される。 z の型が float complex の場合、 csinf が呼び出される。 z が実数または整数の場合、マクロは対応する実数関数( sinf sin sinl )を呼び出す。 z が虚数の場合、マクロは関数 sinh の対応する実数版を呼び出し、公式 sin(iy) = i ∙ sinh(y) を実装し、マクロの戻り値の型は虚数型となる。

目次

翻訳の説明: - 「Contents」を「目次」に翻訳しました - HTMLタグ、属性、 内のC++関連用語(Parameters、Return value、Notes、Example、References、See also)は翻訳せずに保持しました - 数値、構造、フォーマットは完全に保持されています - プロフェッショナルな技術文書としての正確性を維持しています

パラメータ

z - 複素引数

戻り値

エラーが発生しない場合、 z の複素正弦値。

エラーおよび特殊ケースは、この操作が以下のように実装されているかのように処理されます。 - I * csinh ( I * z )

注記

正弦関数は複素平面上で整関数であり、分岐切断を持ちません。

Mathematical definition of the sine is sin z =
e iz
-e -iz
2i

#include <stdio.h>
#include <math.h>
#include <complex.h>
int main(void)
{
    double complex z = csin(1);  // 実数軸上では実数の正弦関数のように振る舞う
    printf("sin(1+0i) = %f%+fi ( sin(1)=%f)\n", creal(z), cimag(z), sin(1));
    double complex z2 = csin(I); // 虚数軸上では双曲線正弦関数のように振る舞う
    printf("sin(0+1i) = %f%+fi (sinh(1)=%f)\n", creal(z2), cimag(z2), sinh(1));
}

出力:

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

参考文献

  • C17規格 (ISO/IEC 9899:2018):
  • 7.3.5.5 csin関数群 (p: 138-139)
  • 7.25 総称型数学 <tgmath.h> (p: 272-273)
  • G.7 総称型数学 <tgmath.h> (p: 397)
  • C11規格 (ISO/IEC 9899:2011):
  • 7.3.5.5 csin関数群 (p: 191-192)
  • 7.25 総称型数学 <tgmath.h> (p: 373-375)
  • G.7 総称型数学 <tgmath.h> (p: 545)
  • C99規格 (ISO/IEC 9899:1999):
  • 7.3.5.5 csin関数 (p: 173)
  • 7.22 総称型数学 <tgmath.h> (p: 335-337)
  • G.7 総称型数学 <tgmath.h> (p: 480)

関連項目

(C99) (C99) (C99)
複素余弦を計算する
(関数)
(C99) (C99) (C99)
複素正接を計算する
(関数)
(C99) (C99) (C99)
複素逆正弦を計算する
(関数)
(C99) (C99)
正弦を計算する ( sin(x) )
(関数)