【发布时间】:2014-02-10 02:10:17
【问题描述】:
假设我有 x = [1,2,5] 和 f(x) = e^x 如何对 x 中的值求和 f(x)?
【问题讨论】:
-
你的意思是:
sum(exp(x))?
假设我有 x = [1,2,5] 和 f(x) = e^x 如何对 x 中的值求和 f(x)?
【问题讨论】:
sum(exp(x))?
【讨论】:
f(x) = exp(x); 似乎是 Matlab 的一个奇怪的语法选择。如果x 包含非整数,它肯定会失败吗?
如果您喜欢微优化;当元素数量较少时,使用 BLAS 比矢量化和稍快:
summation = ones(1,numel(x)) * exp(x(:));
或者,如果你是肯定的x是一个行向量,
summation = exp(x) * ones(size(x)).';
【讨论】: