cexpf, cexp, cexpl
提供: cppreference.com
<tbody>
</tbody>
| ヘッダ <complex.h> で定義
|
||
float complex cexpf( float complex z ); |
(1) | (C99以上) |
double complex cexp( double complex z ); |
(2) | (C99以上) |
long double complex cexpl( long double complex z ); |
(3) | (C99以上) |
| ヘッダ <tgmath.h> で定義
|
||
#define exp( z ) |
(4) | (C99以上) |
1-3) e を底とする
z の複素指数関数を計算します。4) 型総称マクロ。
z が long double complex の場合は cexpl が呼ばれます。 z が double complex の場合は cexp が呼ばれます。 z が float complex の場合は cexpf が呼ばれます。 z が実数または整数型の場合は、このマクロは対応する実数の関数 (expf、 exp、 expl を呼びます。 z が虚数の場合は、対応する複素数引数版が呼ばれます。引数
| z | - | 複素数の引数 |
戻り値
エラーが発生しなければ、 e の z 乗 ez
が返されます。
エラー処理および特殊な値
エラーは math_errhandling と一貫性があるように報告されます。
処理系が IEEE 浮動小数点算術をサポートしている場合、
cexp(conj(z)) == conj(cexp(z))です。zが±0+0iであれば、結果は1+0iです。zがx+∞i(ただし x は任意の有限な値) であれば、結果はNaN+NaNiであり、 FE_INVALID が発生します。zがx+NaNi(ただし x は任意の有限な値) であれば、結果はNaN+NaNiであり、 FE_INVALID が発生するかもしれません。zが+∞+0iであれば、結果は+∞+0iです。zが-∞+yi(ただし y は任意の有限な値) であれば、結果は+0cis(y)です。zが+∞+yi(ただし y は任意の有限な非ゼロの値) であり、結果は+∞cis(y)です。zが-∞+∞iであれば、結果は±0±0i(符号は未規定) です。zが+∞+∞iであれば、結果は±∞+NaNi(実部の符号は未規定) であり、 FE_INVALID が発生します。zが-∞+NaNiであれば、結果は±0±0i(符号は未規定) です。zが+∞+NaNiであれば、結果は±∞+NaNi(実部の符号は未規定) です。zがNaN+0iであれば、結果はNaN+0iです。zがNaN+yi(ただし y は任意の非ゼロの値) であれば、結果はNaN+NaNiであり、 FE_INVALID が発生するかもしれません。zがNaN+NaNiであれば、結果はNaN+NaNiです。
ただし cis(y) は cos(y) + i sin(y) です。
ノート
z = x+iy に対する複素指数関数 ez
は、 ex
cis(y) すなわち ex
(cos(y) + i sin(y)) と等しくなります。
指数関数は複素平面上の整関数であり、分岐切断はありません。
例
Run this code
#include <stdio.h>
#include <math.h>
#include <complex.h>
int main(void)
{
double PI = acos(-1);
double complex z = cexp(I * PI); // Euler's formula
printf("exp(i*pi) = %.1f%+.1fi\n", creal(z), cimag(z));
}
出力:
exp(i*pi) = -1.0+0.0i
参考文献
- C11 standard (ISO/IEC 9899:2011):
- 7.3.7.1 The cexp functions (p: 194)
- 7.25 Type-generic math <tgmath.h> (p: 373-375)
- G.6.3.1 The cexp functions (p: 543)
- G.7 Type-generic math <tgmath.h> (p: 545)
- C99 standard (ISO/IEC 9899:1999):
- 7.3.7.1 The cexp functions (p: 176)
- 7.22 Type-generic math <tgmath.h> (p: 335-337)
- G.6.3.1 The cexp functions (p: 478)
- G.7 Type-generic math <tgmath.h> (p: 480)
関連項目
(C99)(C99)(C99) |
複素対数関数を計算します (関数) |
(C99)(C99) |
e の x 乗 (ex) を計算します (関数) |
exp の C++リファレンス
| |