MathGroup Archive 1995

[Date Index] [Thread Index] [Author Index]

Search the Archive


Dear wizards,
I have to solve the sistem a.x = v where v= {1,0,0,0,0,0,0,0,0} and a is
a  9x9 symbolic matrix. If I use LinearSolve[a,v] I get an enormous
expession, so I think should be possible invert the system "step by
step", for exemple using:

x = {x1,x2,x3,x4,x5,x6,x7,x8,x9};

Do[ eqn[i] = { a[[i]].x == v[[i]]} ,{i,1,9}]

a = Solve[ eqn[1],x1][[1]];

b = Solve[ Simplify[eqn[2] /.a],x2][[1]];

c = Solve[ Simplify[eqn[3] /.a/.b],x3][[1]];

d = Solve[ eqn[4] /.a/.b/.c,x4][[1]];

e = Solve[ eqn[5] /.a/.b/.c/.d,x5][[1]];

f = Solve[ eqn[6] /.a/.b/.c/.d/.e,x6][[1]];

l = Solve[ eqn[7] /.a/.b/.c/.d/.e/.f,x7][[1]];

m = Solve[ eqn[8] /.a/.b/.c/.d/.e/.f/.l,x8][[1]];

n = Solve[ eqn[9] /.a/.b/.c/.d/.e/.f/.l/.m,x9][[1]];

m = Solve[ eqn[8] /.n,x8][[1]]

l = Solve[ eqn[7] /.n/.m,x7][[1]]

f = Solve[ eqn[6] /.n/.m/.l,x6][[1]]

e = Solve[ eqn[5] /.n/.m/.l/.f,x5][[1]]

d = Solve[ eqn[4] /.n/.m/.l/.f/.e,x4][[1]]

c = Solve[ eqn[3] /.n/.m/.l/.f/.e/.d,x3][[1]]

b = Solve[ eqn[2] /.n/.m/.l/.f/.e/.d/.c,x2][[1]]

a = Solve[ eqn[1] /.n/.m/.l/.f/.e/.d/.c/.b,x1][[1]]

sol = x/.a/.b/.c/.d/.e/.f/.l/.m/.n

In this way I obige Mathematica to simplify step by step the expression,
avoiding the generation of too many terms. The problem is: it takes
several days! Maybe someone of you know how to solve a simbolic system
in efficient way, without generating enormous expressions?
Thanks in advance

F. Renzoni
renzoni at

  • Prev by Date: 1995 Mathematica Developer Conference Announcement
  • Next by Date: Re: Importingf a PICT
  • Previous by thread: 1995 Mathematica Developer Conference Announcement
  • Next by thread: Dealing with Indeterminant points & ListPlot