特别是我对这个总结感兴趣。它使用k
两次,但使用sum
我不知道如何获取索引。
仅考虑总结:
summatory = sum( L(i, 1:j-1) * L(j, 1:j-1) );
显然是错误的。
如果没有for循环,我怎么能这样做?
答案 0 :(得分:3)
这是1x(j-1)向量和(j-1)x1向量之间的内积:
krange = 1:j-1;
summatory = L(i, krange) * L(j, krange)';
如果您使用了元素明确的产品运算符.*
而不是矩阵乘积*
,那么您的代码也会起作用(现在已经修复了语法)。
答案 1 :(得分:3)
使用向量代数计算内积(即@BenVoigt所证明的v * v'),或使用sum
,但使用元素乘积(.*
):
summatory = sum( L(i, 1:j-1) .* L(j, 1:j-1) );