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 Kommentare

Walter Roberson
Walter Roberson am 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")
jad bousaid
jad bousaid am 29 Sep. 2020
In fact, there is more than one solution,and if we had 6 unkowns, all the answers would be zeros so that's why i put the 1 and there is 5 unkowns and i don't need an exact solution, i just need one if it exicte,with the methode details please.
thank you very much..

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Bruno Luong
Bruno Luong am 29 Sep. 2020

0 Stimmen

More "robust" method
[~,~,V] = svd(B);
D1 = V(:,end);
D1 = D1/D1(1);

Weitere Antworten (1)

Bruno Luong
Bruno Luong am 28 Sep. 2020

0 Stimmen

[~,R,P] = qr(B);
D1 = P*[R(1:end-1,1:end-1)\R(1:end-1,end); -1];
D1 = D1/D1(1)

Kategorien

Produkte

Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by