中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

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

  • 在erff中,x是单精度浮点类型。
  • 在erf和erf_18中,x是双精度浮点类型。
  • 在erfl中,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
     * 
     * */