How does Matlab divide two row vectors by each other to get a scalar?
14 views (last 30 days)
Show older comments
Osama Tabbakh
on 16 Oct 2019
Commented: Star Strider
on 8 Oct 2020
Let's consider, A is a vector like shown:
A = [20 30 40];
and B is also a vector:
B = [5 10 20];
when you want to execute this operation:
C = B/A;
then you will get a scalar: 0.4137
if you want to check this answer by doing this:
C.*A
It should be got B again but you will get this vector instead:
ans =
8.2759 12.4138 16.5517
Could somebody explain what's going on?
4 Comments
Stephen23
on 16 Oct 2019
"It should be got B again"
Can you show us the system of equations for which this statement is true?
Accepted Answer
Star Strider
on 16 Oct 2019
To expand slightly on that, ‘C’ is the least-squares estimate of the slope of with the y-intercept forced through the origin:
figure
plot(A,B,'p', A,C*A,'-r', [0 A(1)],C*[0 A(1)],':k')
axis([0 45 0 25])
6 Comments
Timo Tommila
on 8 Oct 2020
Edited: Timo Tommila
on 8 Oct 2020
awesome, thank you I was wondering the same thing.
More Answers (0)
See Also
Categories
Find more on Function Creation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!