Azzera filtri
Azzera filtri

dot product between two different size of matrix

29 visualizzazioni (ultimi 30 giorni)
Hello,
I have two matrix, one is A (1by 3 matrix), the other one is B (86 by 3 matrix). And I would like to calculate the dot product of dot(A,B). However, A and B are not the same size, so dot(A,B) function can not be performed successfullly.
How can I calculate the dot product between two different size of matrix without using for loop?
Many thanks!

Risposta accettata

Ive J
Ive J il 18 Dic 2020
X = sum(bsxfun(@times, A, B), 2);

Più risposte (1)

James Tursa
James Tursa il 18 Dic 2020
Assuming everything is real and by "dot product" you aren't involving complex conjugates, simply this
C = B * A';
  3 Commenti
Prajwal Sridhar
Prajwal Sridhar il 9 Dic 2021
Is this same if i have matrix which is 50x2 and 2x2?
James Tursa
James Tursa il 14 Dic 2021
@Prajwal Sridhar Try it and see if it does what you want. If it doesn't, then open up a new Question and post a small example of inputs and desired output.

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by