7.4.14 < complex.h>

各種の複素数計算を行います。float型の複素数の場合は、定義名の最後に’f’、long double型の複素数の場合は、定義名の最後に’l’、double型の複素数の場合は、定義名が関数名になります。

種別

定義名

説明

関数

cacos <-lang=c99>

複素数逆余弦を計算します。

casin <-lang=c99>

複素数逆正弦を計算します。

catan <-lang=c99>

複素数逆正接を計算します。

ccos <-lang=c99>

複素数余弦を計算します。

csin <-lang=c99>

複素数正弦を計算します。

ctan <-lang=c99>

複素数正接を計算します。

cacosh <-lang=c99>

複素数逆双曲線余弦を計算します。

casinh <-lang=c99>

複素数逆双曲線正弦を計算します。

catanh <-lang=c99>

複素数逆双曲線正接を計算します。

ccosh <-lang=c99>

複素数双曲線余弦を計算します。

csinh <-lang=c99>

複素数双曲線正弦を計算します。

ctanh <-lang=c99>

複素数双曲線正接を計算します。

cexp <-lang=c99>

複素数自然対数の底eのz乗を計算します。

clog <-lang=c99>

複素数自然対数を計算します。

cabs <-lang=c99>

複素数絶対値を計算します。

cpow <-lang=c99>

複素数べき乗を計算します。

csqrt <-lang=c99>

複素数平方根を計算します。

carg <-lang=c99>

偏角を計算します。

cimag <-lang=c99>

虚部を計算します。

conj <-lang=c99>

虚部の符号を反転させて複素共役を計算します。

cproj <-lang=c99>

リーマン球面上への射影を計算します。

creal <-lang=c99>

実部を計算します。

cacosf/ cacos/ cacosl

複素数逆余弦を計算します。

 

[指定形式]

#include <complex.h>

float complex cacosf(float complex z);

double complex cacos(double complex z);

long double complex cacosl(long double complex z);

 

[引数]

z 複素数逆余弦を求める複素数

 

[戻り値]

正常:zの逆余弦値

異常:定義域エラーの時は、非数を返します

 

[備考]

zの値が[-1.0,1.0]の範囲を超えている時、定義域エラーになります。

acos関数のリターン値の実軸方向の範囲は[0,π]、虚軸方向の範囲は無限の区間です。

 

casinf/ casin/ casinl

複素数逆正弦を計算します。

 

[指定形式]

#include <complex.h>

float complex casinf(float complex z);

double complex casin(double complex z);

long double complex casinl(long double complex z);

 

[引数]

z 複素数逆正弦を求める複素数

 

[戻り値]

正常:zの複素数逆正弦値

異常:定義域エラーの時は、非数を返します

 

[備考]

zの値が[-1.0,1.0]の範囲を超えている時、定義域エラーになります。

casin関数のリターン値の実軸方向の範囲は[-π/2,π/2]、虚軸方向の範囲は無限の空間です。

 

catanf/ catan/ catanl

複素数逆正接を計算します。

 

[指定形式]

#include <complex.h>

float complex catanf(float complex z);

double complex catan(double complex z);

long double complex catanl(long double complex z);

 

[引数]

z 複素数逆正接を求める複素数

 

[戻り値]

正常:zの複素数逆正接値

 

[備考]

catan関数のリターン値の実軸方向の範囲は[-π/2,π/2]、虚軸方向の範囲は無限の空間です。

 

ccosf/ ccos/ ccosl

複素数余弦を計算します。

 

[指定形式]

#include <complex.h>

float complex ccosf(float complex z);

double complex ccos(double complex z);

long double complex ccosl(long double complex z);

 

[引数]

z 複素数余弦を求める複素数

 

[戻り値]

zの複素数余弦値

 

csinf/ csin/ csinl

複素数正弦を計算します。

 

[指定形式]

#include <complex.h>

float complex csinf(float complex z);

double complex csin(double complex z);

long double complex csinl(long double complex z);

 

[引数]

z 複素数正弦を求める複素数

 

[戻り値]

zの複素数正弦値

 

ctanf/ ctan/ ctanl

複素数正接を計算します。

 

[指定形式]

#include <complex.h>

float complex ctanf(float complex z);

double complex ctan(double complex z) ;

long double complex ctanl(long double complex z);

 

[引数]

z 複素数正接を求める複素数

 

[戻り値]

zの複素数正接値

 

cacoshf/ cacosh/ cacoshl

複素数逆双曲線余弦を計算します。

 

[指定形式]

#include <complex.h>

float complex cacoshf(float complex z);

double complex cacosh(double complex z);

long double complex cacoshl(long double complex z);

 

[引数]

z 複素数逆双曲線余弦を求める複素数

 

[戻り値]

正常: zの複素数逆双曲線余弦値

異常: 定義域エラーの時は、非数を返します。

 

[備考]

zの値が[-1.0, 1.0]の範囲を超えている時、定義域エラーになります。

cacoshf関数群のリターン値の範囲は[0, π]です。

 

casinhf/ casinh/ casinhl

複素数逆双曲線正弦を計算します。

 

[指定形式]

#include <complex.h>

float complex casinhf(float complex z);

double complex casinh(double complex z);

long double complex casinhl(long double complex z);

 

[引数]

z 複素数逆双曲線正弦を求める複素数

 

[戻り値]

zの複素数逆双曲線正弦値

 

catanhf/ catanh/ catanhl

複素数逆双曲線正接を計算します。

 

[指定形式]

#include <complex.h>

float complex catanhf(float complex z);

double complex catanh(double complex z);

long double complex catanhl(long double complex z);

 

[引数]

z 複素数逆双曲線正接を求める複素数

 

[戻り値]

zの複素数逆双曲線正接値

 

ccoshf/ ccosh/ ccoshl

複素数双曲線余弦を計算します。

 

[指定形式]

#include <complex.h>

float complex ccoshf(float complex z);

double complex ccosh(double complex z);

long double complex ccoshl(long double complex z);

 

[引数]

z 双曲線余弦を求める複素数

 

[戻り値]

zの複素数双曲線余弦値

 

csinhf/ csinh/ csinhl

複素数双曲線正弦を計算します。

 

[指定形式]

#include <complex.h>

float complex csinhf(float complex z);

double complex csinh(double complex z);

long double complex csinhl(long double complex z);

 

[引数]

z 双曲線正弦を求める複素数

 

[戻り値]

zの複素数双曲線正弦値

 

ctanhf/ ctanh/ ctanhl

複素数双曲線正接を計算します。

 

[指定形式]

#include <complex.h>

float complex ctanhf(float complex z);

double complex ctanh(double complex z);

long double complex ctanhl(long double complex z);

 

[引数]

z 双曲線正接を求める複素数

 

[戻り値]

zの複素数双曲線正接値

 

cexpf/ cexp/ cexpl

複素数の指数関数を計算します。

 

[指定形式]

#include <complex.h>

float complex cexpf(float complex z);

double complex cexp(double complex z);

long double complex cexpl(long double complex z);

 

[引数]

z 指数関数を求める複素数

 

[戻り値]

zの指数関数値

 

clogf/ clog/ clogl

複素数の自然対数を計算します。

 

[指定形式]

#include <complex.h>

float complex clogf(float complex z);

double complex clog(double complex z);

long double complex clogl(long double complex z);

 

[引数]

z 複素数自然対数を求める複素数

 

[戻り値]

正常: zの複素数自然対数値

異常: 定義域エラーの時は、非数を返します。

 

[備考]

zの値が負の時、定義域エラーになります。

zの値が0.0の時、範囲エラーになります。

clog関数群のリターン値の実軸方向の範囲は無限の区間、虚軸方向の範囲は[-iπ,+iπ]です。

 

cabsf/ cabs/ cabsl

複素数絶対値を計算します。

 

[指定形式]

#include <complex.h>

float cabsf(float complex z);

double cabs(double complex z);

long double cabsl(long double complex z);

 

[引数]

z 複素数絶対値を求める複素数

 

[戻り値]

zの複素数絶対値

 

cpowf/ cpow/ cpowl

複素数べき乗を計算します。

 

[指定形式]

#include <complex.h>

float complex cpowf(float complex x, float complex y);

double complex cpow(double complex x, double complex y);

long double complex cpowl(long double complex x, long double complex y);

 

[引数]

x べき乗される値

y べき乗する値

[戻り値]

正常: xのy乗の値

異常: 定義域エラーの時は、非数を返します。

 

[備考]

xの値が0.0で、かつyの値が0.0以下の時、あるいはxの値が負でyの値が整数値でない時、定義域エラーになります。

cpow関数群の第1仮引数に対する分岐切断線は負の実軸に沿っています。

 

csqrtf/ csqrt/ csqrtl

複素数平方根を計算します。

 

[指定形式]

#include <complex.h>

float complex csqrtf(float complex z);

double complex csqrt(double complex z);

long double complex csqrtl(long double complex z);

 

[引数]

z 平方根関数値を求める複素数

 

[戻り値]

正常: zの複素数平方根値

異常: 定義域エラーの時は、非数を返します。

 

[備考]

zの値が負の値の時、定義域エラーになります。

csqrt関数群の分岐分断線は負の実軸に沿っています。

csqrt関数群のリターン値の領域は虚軸を含む右半平面です。

 

cargf/ carg/ cargl

偏角を計算します。

 

[指定形式]

#include <complex.h>

float cargf(float complex z);

double carg(double complex z);

long double cargl(long double complex z);

 

[引数]

z 偏角値を求める複素数

 

[戻り値]

zの偏角値

 

[備考]

carg関数群の分岐切断線はは負の実軸に沿っています。

carg関数群のリターン値の範囲は区間[-π,+π]です。

 

cimagf/ cimag/ cimagl

虚部を計算します。

[指定形式]

 

#include <complex.h>

float cimagf(float complex z);

double cimag(double complex z);

long double cimagl(long double complex z);

 

[引数]

z 虚部を求める複素数

 

[戻り値]

実数としてのzの虚部値

 

conjf/ conj/ conjl

虚部の符号を反転させて複素共役を計算します。

 

[指定形式]

#include <complex.h>

float complex conjf(float complex z);

double complex conj(double complex z);

long double complex conjl(long double complex z);

 

[引数]

z 複素共役値を求める複素数

 

[戻り値]

zの複素共役値

 

cprojf/ cproj/ cprojl

リーマン球面上への射影を計算します。

 

[指定形式]

#include <complex.h>

float complex cprojf(float complex z);

double complex cproj(double complex z);

long double complex cprojl(long double complex z);

 

[引数]

z リーマン球面上への射影値を求める複素数

 

[戻り値]

リーマン球面上へのzの射影値

 

crealf/ creal/ creall

実部を計算します。

 

[指定形式]

#include <complex.h>

float crealf(float complex z);

double creal(double complex z);

long double creall(long double complex z);

 

[引数]

z 実部値を求める複素数

[戻り値]

 

zの実部値