指数関数

インテル® 数値演算ライブラリは、次の指数関数をサポートします:

CBRT

説明: cbrt 関数は、x の立方根を返します。

Calling interface:

double cbrt(double x);
long double cbrtl(long double x);
float cbrtf(float x);

EXP

説明: exp 関数は、ex 乗した値、ex を返します。この関数は、Itanium® コンパイラによってインライン化されます。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double exp(double x);
long double expl(long double x);
float expf(float x);

EXP10

説明: exp10 関数は、10を x 乗した値、10x を返します。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double exp10(double x);
long double exp10l(long double x);
float exp10f(float x);

EXP2

説明: exp2 関数は、2を x 乗した値、2x を返します。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double exp2(double x);
long double exp2l(long double x);
float exp2f(float x);

EXPM1

説明: expm1 関数は、ex 乗した値から 1 をマイナスした値、ex - 1 を返します。

errno: ERANGE、オーバーフロー状態の場合

呼び出しインターフェイス:

double expm1(double x);
long double expm1l(long double x);
float expm1f(float x);

FREXP

説明: frexp 関数は、x の浮動小数点数を、2 のべき乗を乗じた [1/2, 1) 範囲で符号付き正規化分数に変換します。符号付き正規化分数が返され、その整数の指数部分を exp に格納します。

呼び出しインターフェイス:

double frexp(double x, int *exp);
long double frexp(long double x, int *exp);
float frexpf(float x, int *exp);

HYPOT

説明: hypot 関数は、(x2 + y2) の平方根を返します。

errno: ERANGE、オーバーフロー状態の場合

呼び出しインターフェイス:

double hypot(double x, double y);
long double hypotl(long double x, long double y);
float hypotf(float x, float y);

ILOGB

説明: ilogb 関数は、x のべき指数を符号付 int 値として返します。

errno: ERANGE、x = 0 の場合

呼び出しインターフェイス:

int ilogb(double x);
int ilogbl(long double x);
int ilogbf(float x);

LDEXP

説明: ldexp 関数はx*2exp を返します。exp は整数値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double ldexp(double x, int exp);
long double ldexpl(long double x, int exp);
float ldexpf(float x, int exp);

LOG

説明: log 関数は、x の自然対数、ln(x) を返します。この関数は、Itanium コンパイラによってインライン化されます。

errno: EDOM、x < 0 の場合
errno:
ERANGE、x = 0 の場合

呼び出しインターフェイス:

double log(double x);
long double logl(long double x);
float logf(float x);

LOG10

説明: log10 関数は、基数 10 の x の対数、log 10(x) を返します。この関数は、Itanium コンパイラによってインライン化されます。

errno: EDOM、x < 0 の場合
errno:
ERANGE、x = 0 の場合

呼び出しインターフェイス:

double log10(double x);
long double log10l(long double x);
float log10f(float x);

LOG1P

説明: log1p 関数は、(x+1) の自然対数、ln(x + 1) を返します。

errno: EDOM、x < -1 の場合
errno:
ERANGE、x = -1 の場合

呼び出しインターフェイス:

double log1p(double x);
long double log1pl(long double x);
float log1pf(float x);

LOG2

説明: log2 関数は、基数 2 の x の対数、log 2(x) を返します。

errno: EDOM、x < 0 の場合
errno:
ERANGE、x = 0 の場合

呼び出しインターフェイス:

double log2(double x);
long double log2l(long double x);
float log2f(float x;

LOGB

説明: logb 関数は、x の符号付き指数を返します。

errno: EDOM、x = 0 の場合

呼び出しインターフェイス:

double logb(double x);
long double logbl(long double x);
float logbf(float x);

POW

説明: pow 関数は、xy 乗した値、xy を返します。

呼び出しインターフェイス:

errno: EDOM、x = 0 および y < 0 の場合
errno:
EDOM、x < 0 および y が整数ではない場合
errno:
ERANGE、オーバーフロー状態の場合

double pow(double x, double y);
long double powl(double x, double y);
float powf(float x, float y);

SCALB

説明: scalb 関数は、x*2y を返します。y は浮動小数点値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double scalb(double x, double y);
long double scalbl(long double x, long double y);
float scalbf(float x, float y);

SCALBN

説明: scalbn 関数は、x*2n を返します。n は整数値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double scalbn(double x, int n);
long double scalbnl (long double x, int n);
float scalbnf(float x, int n);

SCALBLN

説明: scalbln 関数は、x*2n を返します。n は long 整数値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double scalbln(double x, long int n);
long double scalblnl (long double x, long int n);
float scalblnf(float x, long int n);

SQRT

説明: sqrt 関数は、正確な丸め平方根を返します。

errno: EDOM、x < 0 の場合

呼び出しインターフェイス:

double sqrt(double x);
long double sqrtl(long double x);
float sqrtf(float x);