# Solving this system of equations produces an error message about badly conditioned matrix

I want to determine a balance distribution.

Ü = {{0.4, 0.2, 0.3}, {0.3, 0.5, 0.2}, {0.3, 0.3, 0.5}};


and

X = {{x1}, {x2}, {x3}};


so that

Ü.X == X


But when I want to solve

Solve[{0.4 x1 + 0.2 x2 + 0.3 x3 == x1,0.3 x1 + 0.5 x2 + 0.2 x3 == x2, 0.3 x1 + 0.3 x2 + 0.5 x3 == x3,
x1 + x2 + x3 == 240000}, {x1, x2, x3}]


I get the error

RowReduce::luc: Result for RowReduce of badly conditioned matrix {{0.3, 0.2, -0.6, 0.}, {0.2, -0.5, 0.3,0.}, {-0.5, 0.3, 0.3, 0.}, {1., 1., 1., -240000.}} may contain significant numerical errors. >>
{}

How can I solve this system?

-
You'll want to look at Eigensystem[]. – J. M. Jun 23 '13 at 14:56

The proximate cause of the message is that the matrix I-U has determinant 10^(-17) and hence the linear system (I-U).x=0 cannot be solved easily in such a direct manner. As Ox4A4D suggests, you can solve for the eigenvalues and eigenvectors without trouble. In this case

Eigensystem[U]


shows three eigenvalues (1, 0.2, and 0.2) and the three corresponding vectors x. For instance, the eigenvector corresponding to the unit eigenvalue is

{0.511834, 0.565711, 0.646527}


so you can solve c*(0.511834 + 0.565711 + 0.646527)=240000 for c and you will have your desired x.

-
thanks, this helped me out :) – Gab Jun 23 '13 at 19:11