我是一名有用的助手,可以为您进行翻译。以下是您需要翻译的内容:
我正在尝试集成一个涉及向量乘法的函数。然而,我一直收到错误信息。
假设alphas是某个向量。 考虑下面的代码片段:
g = @(x)prod(x.*alphas);
integral(g,-10,10);
这会产生以下错误:
使用.*时出错
矩阵维数必须一致。
在@(x)prod(x.*alphas)中出错
现在,从一个天真的角度来看。 g 是一个标量函数。如果 x 是某个数字,则 g(x) 也是一个数字。
我对Matlab还很陌生,无法理解问题所在。任何帮助都将有益。谢谢。
g = @(x)prod(x(:)*alphas,2); integral(g,-10,10,'arrayvalued',true)
。请注意,似乎'arrayvalued'==true
会停止向量化计算,所以你可以直接使用prod(x*alphas)
。 - Andras Deak -- Слава Україні