MathGroup Archive 2007

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

Search the Archive

Re: Strange Behaviour of Solve?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg79039] Re: Strange Behaviour of Solve?
  • From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
  • Date: Mon, 16 Jul 2007 02:21:55 -0400 (EDT)
  • Organization: The Open University, Milton Keynes, UK
  • References: <f7cash$9ab$1@smc.vnet.net>

Andreas Maier wrote:
> Hi,
> 
> i tried (using Mathematica 6.0) to solve a system of equations:
> 
> In:=Solve[{b == g, a == (g*v/c), (b)^2 + (a)^2 == 1}, g]
> Out:={}
> 
> But when i use
> 
> In:=Solve[{b == g, a == (g*v/c), (b)^2 + (a)^2 == 1}, {a, b, g}]
> Out={{g -> -c/Sqrt[c^2 + v^2], b -> -c/Sqrt[c^2 + v^2],
>           a -> -v/Sqrt[c^2 + v^2]}, {g -> c/Sqrt[c^2 + v^2],
>           b -> c/Sqrt[c^2 + v^2], a -> v/Sqrt[c^2 + v^2]}}
> 
> i suddenly get the solution for g. It seems to me, that the number
> of solutions for one variable depends on the number of variables
> i want to solve for. Is this behaviour of Solve to be
> expected?
> 
> Andreas Maier

You may have overlooked the second form of the *Solve* function. The 
online help tells us that, "Solve[eqns, vars, elims] attempts to solve 
the equations for vars, eliminating the variables elims." Therefore,

In[1]:= Solve[{b == g, a == g*(v/c), b^2 + a^2 == 1}, g, {a, b}]

Out[1]=
               c                      c
{{g -> -(-------------)}, {g -> -------------}}
                2    2                 2    2
          Sqrt[c  + v ]          Sqrt[c  + v ]

returns the expected result for g.

Regards,
Jean-Marc


  • Prev by Date: UnTableForming a TableFormed Table?
  • Next by Date: numbered lists problem
  • Previous by thread: Re: Strange Behaviour of Solve?
  • Next by thread: Plot3d Tick-reverse in Mathematica 6???