dsPic33或PIC24,如何使用arctan精确浮点(32位)和双精度(64位)

时间:2014-06-05 08:45:10

标签: math floating-point trigonometry microchip

Angle = arctan(BY / BX)

我很想知道Math.h库通过上面的等式计算三角形的准确度。

我已经阅读了手册,并没有明确说明其准确性。我已经调查了谷歌搜索,但没有找到明确的答案。

当角度趋向于0deg,其中分子(BY)小且分母(BX)大,其中By / BX项具有低值,浮点数(32位)和双精度(64位)如何受到影响这个?。

我知道64位更准确但需要看到这个dsPIC33或PIC24 MCU在32位和64位浮点(0deg到90deg)之间的性能差异。

是否有规则如何使用arctan进行准确计算。一个来源建议每个1/8段使用0deg到45deg(0到pi / 4),这只适用于tan而不是arctan,对吗?

1 个答案:

答案 0 :(得分:0)

IEEE标准要求所有FP指令具有最大相对精度,这意味着尾数的最后一位(忽略前一位的进位效应)应该是正确的。

如果你想在分割时避免精度损失(有没有?),那么使用atan2函数(如果有的话)。


更新:如果要根据理论上正确的版本测试提供的函数,可以使用以下使用二分法的算法和arctan的泰勒级数来表示来自扇区{{1}的值}

0<x && |y|<x