Problem with x=A\B. Bottom rows of answer equals to zero.

3 views (last 30 days)
I am solving A = [0.063950442420678 -0.079659325686456 0.703185937004828 -0.703629356084602 0.196116135138184 0;
-0.063972494502836 -0.079635254048311 -0.705228608870820 -0.701582750279591 0 0.196116135138184;
0.704092141618340 -0.702722541685005 -0.063847146141638 0.079742256355280 0.980580675690920 0;
-0.704323872215463 -0.702491030228577 0.064075651837015 0.079552160985497 0 0.980580675690920;]
B = 1.0e+16 *[
-0.008393560875461 0.007176612465150 -0.002567658626434 0.001955625630576;
0.008396455233765 0.007174443819898 0.002575117370646 0.001949937415988;
-2.310320315585672 1.582729739656721 0.005828390008126 -0.005540772248194;
2.311080687523706 1.582208310436191 -0.005849249520136 -0.005527563753758]
X=A\B;
But the answer I got is
X = [ 1.0e+16 *
-3.255501591781910 0.000000468614428 0.007894550087601 -0.000007698327826
0.000000682708769 -2.224850034252500 0.000012772109782 0.007465621932653
0.283767705911329 0.000315121768850 -0.004368508422496 -0.000000402964920
-0.000363544285286 0.241995389630699 -0.000000529410532 -0.003625641380985
0 0 0 0
0 0 0 0]
Bottom rows are all zeros.
I tried Pinv, QR method too. But the results are not accurate. Any suggestions??

Accepted Answer

Roger Stafford
Roger Stafford on 5 Jun 2014
The equations you are trying to solve with X = A\B are given by:
A*X = B
where from the sizes of A and B, X must be of size 6 x 4. For each column of X you have four equations and six unknowns, making a total of sixteen equations and twenty-four unknowns, so this problem is highly indeterminate. There are infinitely many possible solutions. In other words the values in A and B are insufficient to deduce completely what values X must have had. Consequently matlab arbitrarily set eight of the X values to zero. It is no surprise that these don't match your original values in X. To reconstruct X you need enough additional information to pin down eight more degrees of freedom.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!