是否可以在 Octave 中进行求和系列?
在matlab它有 symsum
函数,但是我没有发现任何与 Octave 音阶相似的东西。
比如我要求下面的和
附录:
是否可以这样总结
f = @(x) nchoosek(5,x)*0.1.^x*0.9.^(5-x)
sum(f([0:5]))
错误失败
error: called from:
error: /usr/share/octave/3.6.4/m/help/print_usage.m at line 87, column 5
error: /usr/share/octave/3.6.4/m/specfun/nchoosek.m at line 95, column 5
error: at line -1, column -1
error: evaluating argument list element number 1
最佳答案
如果您不需要分析解决方案,那么您就不需要symsum
。例如如果你想计算
您可以简单地使用sum
sum([1:5])
这是另一个例子:
f = @(x) exp(-x)
sum(f([1:5]))
另一个是 factorial
function :
g = @(n) 1 ./ factorial(n)
sum(g([0:5]))
相同,但没有匿名函数:
sum(1 ./ factorial([0:5]))
更新
对于您的最后一个示例,nchoosek
仅允许标量参数。因此,您需要额外的 arrayfun
调用:
f = @(x) nchoosek(5,x)*0.1.^x*0.9.^(5-x)
sum(arrayfun(f,[0:5]))
关于matlab - 使用 Octave 的求和系列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19680012/