Least square magnitude solution

2 views (last 30 days)
is this a right approach to calculate the least square magnitude x* to this problem? Any help will be greatly appreciated. Thanks
A = [1 2 3 4 5; 6 7 8 9 0];
b = [1;2];
x = lsqr(A,b)
e2 = b - A*x
norm(e2)

Accepted Answer

Torsten
Torsten on 28 Aug 2022
Edited: Torsten on 28 Aug 2022
A = [1 2 3 4 5; 6 7 8 9 0];
b = [1;2];
x = lsqminnorm(A,b).'
x = 1×5
0.0400 0.0560 0.0720 0.0880 0.0560
norm(x)
ans = 0.1442
norm(A*x.'-b)
ans = 0
if you search for the solution for which x has minimum norm.
If you only search for an arbitrary least-squares solution (i.e. for an x for which norm(e2) is minimum), simply use
x = (A\b).'
x = 1×5
0 0 0 0.2222 0.0222
norm(x)
ans = 0.2233
norm(A*x.'-b)
ans = 2.2204e-16

More Answers (0)

Categories

Find more on Performance and Memory 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!