matrix multiplication
Afficher commentaires plus anciens
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
Plus de réponses (2)
Rick Rosson
le 2 Oct 2011
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
le 3 Oct 2011
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
le 3 Oct 2011
Catégories
En savoir plus sur Matrix Indexing dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!