9 c embedded math trigonometry
sin并且cos功能很慢,需要大量资源才能在嵌入式系统上运行.如何以更节省资源和更快速的方式计算sin和cos运行?
sin
cos
pav*_*ium 16
计算泰勒或傅里叶级数总是很费时间.
在嵌入式系统中,您应该考虑查找表.
关于惠普如何在早期科学计算器中优化此类计算的网络上可能还有一些有趣的信息.
我记得当时看到过这样的东西
Nol*_*rin 10
毫无疑问,带插值的查找表是最有效的解决方案.但是,如果您想使用更少的内存,CORDIC是一种非常有效的计算三角函数值的算法,通常在手持式计算器中实现.
作为一个侧面点,使用傅立叶级数表示这些函数没有任何意义,因为您只是创建了一个循环问题,即如何评估系列的sin/cos项.泰勒级数是一种众所周知的近似方法,但在许多情况下,误差大得令人无法接受.
您可能还想查看这个问题及其答案,关于Java的快速三角函数(因此代码可以轻松移植).它提到了CORDIC和Chebyshev近似等.其中一个无疑将满足您的需求.
归档时间:
16 年 前
查看次数:
7857 次
最近记录:
8 年,1 月 前