Inner Matrix Dimensions Must Agree
1 回表示 (過去 30 日間)
古いコメントを表示
I have a matrix of 119 x 1 and Z is 119 x 119
should multiply it by a diagonal matrix of 2 x 2:
W = [0.12 0 ;
0 0.28];
d=sqrt(W*X'*Z*X*W);
I am receiving an error which is:
Inner Matrix Must agree!!
Please, any suggestion?
0 件のコメント
回答 (2 件)
Image Analyst
2018 年 9 月 1 日
That can never work. If all you have is dimensions of 119 and 1, then there is no way you can do anything to get 2 rows or 2 columns, no matter what you do or how you manipulate (transpose) them. The result will always have dimensions of 119 and/or 1 - never 2. Therefore, you will never be able to right multiply, or left multiply, by a 2-by-2 matrix W.
2 件のコメント
Image Analyst
2018 年 9 月 1 日
編集済み: Image Analyst
2018 年 9 月 1 日
A row is a 1-by-N array, and that cannot be multiplied by a 2-by-2 matrix. If you have two matrices, an a-by-b called m1, and a c-by-d matrix called m2, then to do m1*m2 you must have b equal c, and if you do m2*m1 you must have d equal a. That's just basic matrix algebra rules.
KALYAN ACHARJYA
2018 年 9 月 1 日
編集済み: KALYAN ACHARJYA
2018 年 9 月 4 日
- Matrix multiplication rows of the first matrix should be equal columns of the second matrix
- you have considering one matrix is 2x2 order, how can you do the multiplication with 1x119 or 119x119
x=rand(119,1); )%Order 119x1
z=rand(119,119); %Order 119x119
w=[0.12 0; 0 0.28]; %Order 2x2
%x' order 1x119
d=sqrt(w.*x'*z.*x.*w); %This does not work, check the order of all Matrixes
4 件のコメント
Stephen23
2018 年 9 月 4 日
編集済み: Stephen23
2018 年 9 月 4 日
"Matrix multiplication rows of the first matrix should be equal columns of the second matrix or vice versa"
The number of columns of the first matrix must be equal to the number of rows of the second matrix. There is certainly no "vice versa" involved.
KALYAN ACHARJYA
2018 年 9 月 4 日
編集済み: KALYAN ACHARJYA
2018 年 9 月 4 日
Yes @Stephen Cobeldick, Thanks for pointing the error
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!