How does Matlab divide two row vectors by each other to get a scalar?

14 visualizzazioni (ultimi 30 giorni)
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 Commenti
Stephen23
Stephen23 il 16 Ott 2019
"It should be got B again"
Can you show us the system of equations for which this statement is true?
Osama Tabbakh
Osama Tabbakh il 16 Ott 2019
I was just an example for understanding how calculate matlab this scalar 0.4137 and why it is scalar.

Accedi per commentare.

Risposta accettata

Star Strider
Star Strider il 16 Ott 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 Commenti
Timo Tommila
Timo Tommila il 8 Ott 2020
Modificato: Timo Tommila il 8 Ott 2020
awesome, thank you I was wondering the same thing.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Function Creation in Help Center e File Exchange

Prodotti


Release

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by