Re: Solving an equation
- To: mathgroup at smc.vnet.net
- Subject: [mg34577] Re: Solving an equation
- From: N D Evans <nde at eng.warwick.ac.uk>
- Date: Wed, 29 May 2002 02:44:20 -0400 (EDT)
- Organization: University of Warwick, UK
- References: <aci5vg$3c7$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
On Thu, 23 May 2002, PSi wrote: > I want to solve the following equation with Mathematica 4.1: > a*x+b*y=c > where x, y are the unknown scalars, > a={{1,0},{0,1}}, > b={{b1,b2},{b3,b4}}, > c={{c1,c2},{c3,c4}}, > the matrices b, c commute, and the matrix b is not a scalar multiple of the unit > matrix a. I'd be tempted to split this up and use the fact that b and c commute first: s1 = Solve[b.c==c.b,Flatten[c]] and then modify c c = c /. s1[[1]] Finally solve your equations Solve[Flatten[x*a + y*b - c]==0,{x,y}] to give solution as {x -> -(b4*c3 - b3*c4)/b3, y -> c3/b3}. Since b1, ..., b4 and c1, ..., c4 are being treated as parameters the (degenerate) case b3 = 0 is not treated. You can then treat the special cases (b3 = 0, b2 = b3 = 0) separately. The final condition that b is not a scalar multiple of the 2x2 identity matrix should mean that one of these cases holds. Best wishes, Neil.