How do I multiply matrices having elements as vectors?

2 次查看(过去 30 天)
A*B doesn't work A.*B doesn't work either since it multiplies them element by element
  3 个评论
Sameer
Sameer 2015-6-2
编辑:Sameer 2015-6-2
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

请先登录,再进行评论。

回答(1 个)

Matthew Eicholtz
Matthew Eicholtz 2015-6-2
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'

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by