我有nxm
矩阵V
,其中我计算了平方S=V'*V
。对于我的以下计算,我只需要S
的对角线,所以我写s=diag(V'*V)
。然而,这有点浪费,因为我也在计算所有非对角元素。是否有快速方式仅计算S
的对角线元素?当然,我可以使用for
循环,但显式循环不是在MATLAB中执行操作的快捷方法。
感谢!!!
答案 0 :(得分:5)
这很简单:
sum(conj(v).*v,1)
或
sum(abs(v).^2,1)
如果矩阵是真的,你可以简化为
sum(v.*v,1)
或
sum(v.^2,1)