Har*_*ngh 1 matlab vectorization
我想为函数创建一个函数句柄:
f = @(x) (x-1)*(x-2)*...*(x-50);
Run Code Online (Sandbox Code Playgroud)
如何在不输入所有50个术语的情况下在MATLAB中执行此操作?
这是一个矢量化解决方案:
y = prod((x-[1:50]))
Run Code Online (Sandbox Code Playgroud)
或者如果你想要一个匿名函数:
f = @(x) ( prod((x-[1:50])) )
Run Code Online (Sandbox Code Playgroud)
顺便说一下,由于Matlab JIT-Accelerator,它可能不会比@Chris解决方案更快(这是好的,我赞成它).
归档时间: |
|
查看次数: |
94 次 |
最近记录: |