J'ai deux matrices dans MATLAB, A
de taille n x m et B
de taille n x m ainsi. Je veux créer une nouvelle matrice C
qui est quelque chose comme:Comment calculer un produit externe rapide dans MATLAB?
for i = 1:n
C = C + outerProduct(A(i,:), B(i,:));
end
à savoir C
est une matrice de taille m x m, la somme de tous les produits externes des rangées de A
et B
. Existe-t-il un moyen rapide de le faire sans boucle for? Pour les boucles sont notoirement lent dans MATLAB.
Non, ce ne serait pas le cas - cela utilise le produit interne pour chaque cellule. – kloop
$ C_ {ij} = \ sum_k A_ {ki} B_ {kj} = \ sum_k A^T_ {ik} B_ {kj} = A^T * B – Nzbuu
En fait, je pense que c'est correct. Merci. – kloop