我一直在寻找,我无法找到该功能如何计算或使用它的PI部分。 对于我的项目,我使用一个定义的常量,其精度为小数点后34位。但是,这远远超过正常的math.h定义的PI常量,即小数点后16位。
我的问题是PI是如何精确地使用sincospi计算其答案的?它只是使用math.h中的PI常量吗?
答案 0 :(得分:3)
sincospi()的最大ulp误差与sincos()的最大ulp误差相同:结果与正确舍入的参考相差最多1 ulp,或换句话说,结果偏差小于1.5 ulps从无限精确的数学结果。平均而言,超过90%以上的结果是正确舍入的。所有CUDA数学函数的最大观察误差记录在CUDA C编程指南的附录中。 sincospi(x)的精度优于sincos(M_PI * x)的精度,因为后者由于函数参数的乘法而产生额外的舍入误差。