MATLAB Answers


./ and .* operations

Asked by Shivanand S M on 15 Jun 2019
Latest activity Edited by per isakson
on 15 Jun 2019
I have two versions of matlab one is 2015b and other is 2019a an operation ./ works in 2019a version but shows error matrix dimension mismatch in other 2015b version how come?


per isakson
on 15 Jun 2019
Most likely, you have made a mistake.
Can you show us a small example that throws this error in R2015b?

Sign in to comment.

1 Answer

Answer by Guillaume
on 15 Jun 2019
Edited by per isakson
on 15 Jun 2019

As per G A's comment, R2016b introduced automatic expansion for compatible array sizes. So, this works in R2016b or later:
x = [1, 2, 3] %1 x 3 row vector
y = [1; 1; 1] %1 x 3 column vector
z = x .* y %results in a 3 x 3 matrix
whereas it would fail in earlier versions.
To obtain the same result in earlier versions, use bsxfun
z = bsxfun(@times, x, y) %times is the functional name of .*


Sign in to comment.