Performance 计算一系列角度的余弦和正弦
我应该创建一个程序来计算角序列k*α的余弦和正弦,其中k是一个不断增长的自然数(即,0,1,2,…),α是一个介于0和π之间的常数角。我想使这个计划尽可能快 因此,我想先计算每个角度的余弦,然后用Performance 计算一系列角度的余弦和正弦,performance,comparison,trigonometry,Performance,Comparison,Trigonometry,我应该创建一个程序来计算角序列k*α的余弦和正弦,其中k是一个不断增长的自然数(即,0,1,2,…),α是一个介于0和π之间的常数角。我想使这个计划尽可能快 因此,我想先计算每个角度的余弦,然后用sqrt(1-cos(k*α)^2)计算相关的正弦。问题是正弦的符号,它应该由角度k*α在实线上的位置确定 我想知道如何尽可能快地实现这种动态比较,或者最快的方法是直接计算正弦。过了一段时间,我再次思考了这个问题,找到了一个非常简单的解决方案: n = floor(k*alpha/pi); if (n
sqrt(1-cos(k*α)^2)
计算相关的正弦。问题是正弦的符号,它应该由角度k*α在实线上的位置确定
我想知道如何尽可能快地实现这种动态比较,或者最快的方法是直接计算正弦。过了一段时间,我再次思考了这个问题,找到了一个非常简单的解决方案:
n = floor(k*alpha/pi);
if (n % 2 == 0)
sin_alpha = +sqrt(1-pow(cos(k*alpha,2)));
else
sin_alpha = -sqrt(1-pow(cos(k*alpha,2)));
问题已解决。:)