MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   如何仅在八度中计算矩阵乘积的对角线? (https://www.labfans.com/bbs/showthread.php?t=23135)

poster 2019-12-10 20:30

如何仅在八度中计算矩阵乘积的对角线?
 
在Octave中,是否可以仅计算和存储矩阵乘积的对角线?

基本上像这样: vector = diag(A*B);

除了对角线上的值,我不在乎A*B任何值。矩阵大小约为80k x 12和12 x 80k ,因此,即使我不在乎速度/额外的内存,它也根本无法放入RAM。

奇怪,因为Octave是用于存储大量数据的程序包,对角线非常重要,因此应该有可能。



[B]回答:[/B]

对角线上的第一个元素是A的第一行与B的第一列的标量积。对角线上的第二个元素是A的第二行与B的第二列的标量积。

换一种说法:

vector = sum(A.*B',2);

[url=https://stackoverflow.com/questions/2301046]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 20:34

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.