How do I multiply matrices having elements as vectors?

A*B doesn't work A.*B doesn't work either since it multiplies them element by element

3 个评论

Can't you give an example together with your expected result. I don't really understand what you are asking. Just saying things "don't work" is not a very useful piece of information. Do you mean you get a syntax error or the wrong answer?
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
So what is your expected result?

请先登录,再进行评论。

回答(1 个)

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'

类别

帮助中心File Exchange 中查找有关 Logical 的更多信息

提问:

2015-6-2

评论:

2015-6-2

Community Treasure Hunt

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

Start Hunting!

Translated by