Hello,
I m wrinting a code for itertaive closest point and i got this error
??? Error using ==> mtimes
Inner matrix dimensions must agree.
RR=V * U';
V and U are two matrix in diffent size what do you think ?

 Réponse acceptée

Wayne King
Wayne King le 2 Oct 2011

1 vote

It's just telling you that the two matrices are not conformable for multiplication. The number of columns in V has to match the number of rows in U'
RR = randn(10,10)*(randn(2,10))'; % is ok
RR = randn(10,10)*(randn(10,12))'; % is not

2 commentaires

Fatma Gargouri
Fatma Gargouri le 3 Oct 2011
ok so it must that the number of rows = colomns !!
and what is the diffrence between * and .* ?
Wayne King
Wayne King le 3 Oct 2011
.* is element by element multiplication so,
x = randn(10,1);
y = randn(10,1);
z = x.*y; % this is ok -- multiply x and y element by element
but
x*y % errors

Connectez-vous pour commenter.

Plus de réponses (2)

Rick Rosson
Rick Rosson le 2 Oct 2011

1 vote

Please try the following:
[M,N] = size(V);
[P,Q] = size(U');
if N==P
fprintf('ok\n\n');
else
fprintf('error\n\n');
end
Rick Rosson
Rick Rosson le 3 Oct 2011

1 vote

Using * by itself will perform matrix multiplication, whereas using .* will perform element-by-element multiplication.
  • For matrix multiplication, e.g. A*B, the number of columns in A must equal the number of rows in B.
  • For element-by-element multiplication, e.g. A.*B, the size and shape of both A and B must be exactly the same. In other words, if A is M x N, then B must also be M x N.
  • For more information, please see: Arithmetic Operators
  • You can use the size function to compute the size and shape of any given array.
  • You can use the assert function to test for the truth of a logical expression. For example:
assert(size(A,2) == size(B,1), ...
'The inner dimensions of A and B do not agree.');
HTH.
Rick

1 commentaire

Fatma Gargouri
Fatma Gargouri le 3 Oct 2011
thank you Rick
this is very helpful
I should then review my code and verify the sizes of matrix

Connectez-vous pour commenter.

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by