Elementwise Multiplication (Dot Multiplication) of Matrices
36 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
采纳的回答
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
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!