我正在写一个函数来获得给定数组的余弦。它的工作原理,但我目前正在使用一个循环,以迭代数组中的每个值,而我确信它可以被矢量化。矢量化matlab函数
目前的代码是:
for i = 1:numel(x)
cos(i) = (sum(((-1).^(0:n)).*(x(i).^(2*(0:n)))./(factorial(2*(0:n)))));
end
,我不能为我的生活觉得如何vectorises,所以任何帮助,将不胜感激。
编辑:这里是全功能http://pastebin.com/n1DG6nUv
2日编辑:链接与新代码不覆盖COS更新。
什么是n,什么是x? x似乎是一个ax1向量? – Daniel
您链接的代码分配一个矩阵'fcos',但不使用它。相反,数据被放入一个未分配的数组“cos”中,覆盖“cos”函数。错字? – horchler
@DanielR它可以是任何矢量,标量或矩阵 –