Row vector divide by row vector
12 views (last 30 days)
Show older comments
Can anyone explain what is the mathematical operation for C = A/B where A and B are both row vectors?
>> A = [1 2 3 4]
>> B = [2 2 2 2]
>> C = A/B
C =
1.2500
As you can see, C*B is not equal to A. This suggest that / is not a matrix right division. It almost looks like / is the average of elementwise division between two row vectors.
0 Comments
Accepted Answer
Bruno Luong
on 29 Jul 2020
Edited: Bruno Luong
on 29 Jul 2020
It returns the scalar C (maxtrix 1x1) such that
C*B ~ A
in the sense that
norm(C*B - A)^2 % or equivalently
sum((C*B - A).^2)
is minimal.
Illustration:
>> sum((C*B-A).^2)
ans =
5
>> sum(((C+0.1)*B-A).^2) % move on the right
ans =
5.1600
>> sum(((C-0.1)*B-A).^2) % move on the left
ans =
5.1600
>> ezplot(@(x) sum((x*B-A).^2), [-1 3]) % plot this function, that is a parabola minimum at x=1.25
>> xline(A/B)
1 Comment
Bruno Luong
on 31 Jul 2020
Edited: Bruno Luong
on 31 Jul 2020
If you want a direct formula, A/B is equal to (applicable for real and complex row vectors)
dot(B,A) / dot(B,B)
or
(A*B') / (B*B')
More Answers (0)
See Also
Categories
Find more on Logical 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!