finding the unknowns in a matrix
1 view (last 30 days)
Show older comments
B =
1.0e+06 *
0.6064 -0.4550 0.0776 -0.6532 0.4550 0.0126
-0.4550 1.6724 0.0180 0.4550 -0.3209 0.0180
0.0776 0.0180 0.3626 -0.0126 -0.0180 0.0569
-0.6532 0.4550 -0.0126 1.0029 -0.4550 0.5070
0.4550 -0.3209 -0.0180 -0.4550 4.4121 -0.0180
0.0126 0.0180 0.0569 0.5070 -0.0180 0.9314
D1 =
1
a
b
c
d
e
how can i find the unkowns a b c d e if [B]*[D1]==0
please give me all the details because i'm new to MATLAB and i'm still learning it
And thank you in advanced.
2 Comments
Walter Roberson
on 28 Sep 2020
The rank of that matrix is 6 to the precision of what you posted, but you only have 5 unknowns. You will not be able to get an exact solution, only a best fit (under some meaning of "best")
Accepted Answer
Bruno Luong
on 29 Sep 2020
More "robust" method
[~,~,V] = svd(B);
D1 = V(:,end);
D1 = D1/D1(1);
0 Comments
More Answers (1)
Bruno Luong
on 28 Sep 2020
[~,R,P] = qr(B);
D1 = P*[R(1:end-1,1:end-1)\R(1:end-1,end); -1];
D1 = D1/D1(1)
See Also
Categories
Find more on Matrix Indexing 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!