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.