3

我四处寻找,但找不到该函数如何计算或使用它的 PI 部分。对于我的项目,我使用了一个定义的常量,它的 PI 精度为小数点后 34 位。但是,这远远超过了为 PI 定义的正常 math.h 常量(小数点后 16 位)。

我的问题是 sincospi 用于计算其答案的 PI 有多精确?它只是使用 math.h 中的 PI 常数吗?

4

1 回答 1

3

sincospi() 的最大 ulp 误差与 sincos() 的最大 ulp 误差相同:结果与正确舍入的参考值相差最多 1 ulp,或者换句话说,结果与无穷大的参考值相差不到 1.5 ulp精确的数学结果。平均而言,超过 90% 以上的结果是正确四舍五入的。所有 CUDA 数学函数的最大观察误差记录在 CUDA C 编程指南的附录中。sincospi(x) 的精度优于 sincos(M_PI*x) 实现的精度,因为后者由于函数参数的相乘而产生额外的舍入误差。

于 2012-09-14T01:29:22.350 回答