confusing regarding two cases of multiplication in MATLAB?

1 view (last 30 days)
I know that in MATLAB,we use ".*" and"*" for multiplication of matrices
But when one should use only "*" and when one should also use dot with asterik ".*" ??
Please kindly explain with examples
Especially if one operand is a scalar or 1X1 matrix and 2nd matrix is a row vector or column vector? In that case ,only asterik"*" will be sufficent?

Accepted Answer

Jesus Sanchez
Jesus Sanchez on 16 Feb 2020
".*" -> Element-wise multiplication
Example:
[1 2 3].*[1 2 3] = [1*1 2*2 3*3] = [1 4 9]
"*" -> Matrix multiplication
Example:
[1 2 3]*[1 2 3].' = [1*1 +2*2 +3*3] = [1+4+9] = [14]
  2 Comments
Image Analyst
Image Analyst on 16 Feb 2020
In the case where one variable is a scalar, either * or .* would work, though I, and I expect most other people, use only * (without the unneeded dot).

Sign in to comment.

More Answers (1)

Steven Lord
Steven Lord on 16 Feb 2020
See this documentation page for a discussion of the difference between array operations and matrix operations, including examples showing what each does.

Community Treasure Hunt

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

Start Hunting!