Elementwise Multiplication (Dot Multiplication) of Matrices

36 ビュー (過去 30 日間)
Chuck
Chuck 2018 年 3 月 24 日
コメント済み: Star Strider 2018 年 3 月 24 日
I am an instructor of MATLAB at a university. And we traditionally taught that for element-wise multiplication to work, both dimensions (row and column number) of each matrices must be exactly the same. For instance, you could multiply a 1x3 array with another 1x3 array, but not with a 4x1 array. And it used to be like that, otherwise, it would give an error, saying "matrix dimensions must agree".
I just noticed that at least in MATLAB 2017a, you actually can multiply various sizes of arrays element-wise. For example, you can multiply a 1x3 array with a 4x1 array, getting a 3x4 array. However, you still cannot element-wise multiply a 1x3 array with a say, 2x2 array. What is the rule for the dimensions when doing elemnent-wise multiplication there? And in which edition of MATLAB this change occurred?
Thank you.

採用された回答

Star Strider
Star Strider 2018 年 3 月 24 日
It’s called ‘implicit expansion’, and was introduced in R2016b.
I can’t find a specific link to it. You can find it under Mathematics in the Release Notes (link) for R2016b.
  3 件のコメント
James Tursa
James Tursa 2018 年 3 月 24 日
編集済み: James Tursa 2018 年 3 月 24 日
It applies to any two arrays as long as there is not a mismatch in an index where both dimensions are not equal to 1 and also not equal to each other. So not just for vectors and matrices.
Star Strider
Star Strider 2018 年 3 月 24 日
As always, my pleasure!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by