Subtracting a Vector from a Scalar-Multiplied Matrix

2 views (last 30 days)
Let's say that we have the following two matrices and we want to calculate . We know that it is not defined, but MATLAB gives me the following result.Could anyone explain me why that happens?
C=[1 2; 2 1]
C = 2x2
1 2 2 1
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
E=[1;2]
E = 2x1
1 2
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
3*C-E
ans = 2x2
2 5 4 1
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
  5 Comments
Athanasios Paraskevopoulos
@Torsten Yes this is my problema tha it is defined in Matlab but not in Maths.
This is what I want to show to my students
Torsten
Torsten on 5 Apr 2024
It's just a convention to get rid of the bsxfun - there is nothing to explain (or even justify).

Sign in to comment.

Accepted Answer

Steven Lord
Steven Lord on 4 Apr 2024
  8 Comments
Paul
Paul on 5 Apr 2024
Even prior to R2016B, as far back as to the very first release as far as I know, Matlab implemented scalar expansion. Code like this has always worked
eye(2) - 1
ans = 2x2
0 -1 -1 0
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
even though subtracting a scalar from a matrix is not mathematically rigorous.

Sign in to comment.

More Answers (0)

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Products


Release

R2024a

Community Treasure Hunt

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

Start Hunting!