How do I multiply matrices having elements as vectors?

1 view (last 30 days)
A*B doesn't work A.*B doesn't work either since it multiplies them element by element
  3 Comments
Sameer
Sameer on 2 Jun 2015
Edited: Sameer on 2 Jun 2015
a=1:1000;
A=[a 2*a;a 2*a];
B=[2*a a;a a];
C=A*B %Error using *
%Inner matrix dimensions must agree.
D= A.*B % multiplies element by element which I don't want

Sign in to comment.

Answers (1)

Matthew Eicholtz
Matthew Eicholtz on 2 Jun 2015
If I understand the question correctly, you are asking how to multiply two vectors of the same size.
Without loss of generality, let's assume A and B are 1x10 vectors. A*B will not work because the inner dimensions do not match (1x10 * 1x10). A.*B will only multiply each pair of elements as you noticed, yielding a 1x10 result.
Two potential solutions:
  1. dot(A,B)
  2. A*B'

Community Treasure Hunt

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

Start Hunting!