erf
误差函数,输入参数为实数。
接口定义
C interface:
float erff(float x);
double erf(double x);
double erf_18(double x);
long double erfl(long double x);
erf_18仅在高精度版本提供。
参数
参数名 |
类型 |
描述 |
输入/输出 |
|---|---|---|---|
x |
|
表示输入数据的浮点值。 |
输入 |
返回值
- 返回入参x的误差函数结果y,y ∈ [-1, +1]。
- 输入nan,返回nan。
- 输入+∞,返回1。
- 输入-∞,返回-1。
- float接口,输入x >= 0x1.F5AAp1,返回1。
- float接口,输入x <= -0x1.F5AAp1,返回-1。
- double接口,输入x >= 0x1.7afb48dc96628p+2,返回1。
- double接口,输入x <= -0x1.7afb48dc96628p+2,返回-1。
依赖
C: "km.h"
示例
C interface:
// print result
printf("erf(0.0) = %.15f\n", erf(0.0));
printf("erf(-0.0) = %.15f\n", erf(-0.0));
printf("erf(0.25) = %.15f\n", erf(0.25));
printf("erf(-0.25) = %.15f\n", erf(-0.25));
printf("erf(0.5) = %.15f\n", erf(0.5));
printf("erf(-0.5) = %.15f\n", erf(-0.5));
printf("erf(1.0) = %.15f\n", erf(1.0));
printf("erf(-1.0) = %.15f\n", erf(-1.0));
printf("erf(2.0) = %.15f\n", erf(2.0));
printf("erf(-2.0) = %.15f\n", erf(-2.0));
printf("erf(INFINITY) = %.15f\n", erf(INFINITY));
printf("erf(-INFINITY) = %.15f\n", erf(-INFINITY));
printf("erf(NAN) = %.15f\n", erf(NAN));
printf("erf(-NAN) = %.15f\n", erf(-NAN));
/*
* erf(0.0) = 0.000000000000000
* erf(-0.0) = -0.000000000000000
* erf(0.25) = 0.276326390168237
* erf(-0.25) = -0.276326390168237
* erf(0.5) = 0.520499877813047
* erf(-0.5) = -0.520499877813047
* erf(1.0) = 0.842700792949715
* erf(-1.0) = -0.842700792949715
* erf(2.0) = 0.995322265018953
* erf(-2.0) = -0.995322265018953
* erf(INFINITY) = 1.000000000000000
* erf(-INFINITY) = -1.000000000000000
* erf(NAN) = nan
* erf(-NAN) = -nan
*
* */
父主题: 特殊函数