我需要执行大量的形式的评价更快投影范数(二次形式,度量矩阵...)式计算
X(:,i)' * A * X(:,i) i = 1...n
其中X(:,i)是向量和A是一个对称矩阵。从表面上看,我可以做到这一点在一个循环
for i=1:n
z(i) = X(:,i)' * A * X(:,i)
end
这是缓慢的,或者vectorise它作为
z = diag(X' * A * X)
这浪费RAM不可接受的当X有很多列。目前我在妥协
Y = A * X
for i=1:n
z(i) = Y(:,i)' * X(:,i)
end
这是一个更快/更轻,但仍然似乎不满意。
我希望有一些matlab/scilab成语或技巧来更有效地实现这个结果?