MathGroup Archive 2003

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

Search the Archive

Re: Solve[] handles the same system differently

  • To: mathgroup at smc.vnet.net
  • Subject: [mg40868] Re: Solve[] handles the same system differently
  • From: Joe Gwinn <joegwinn at attbi.com>
  • Date: Tue, 22 Apr 2003 06:48:26 -0400 (EDT)
  • References: <b80k0i$m3f$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

In article <b80k0i$m3f$1 at smc.vnet.net>, Joe Gwinn <joegwinn at attbi.com> 
wrote:

> I am running Mathematica 4.0.1.0 under MacOS 9.1, and have encountered a 
> little mystery:
> 
> 
> The following works OK:
> 
> In[15]:=
> Solve[{Rx == 3300, VinX1 == 0, 
>     IdsX1 == 0.001(1 - (VinX1 - Rx*IdsX1)/(-1.5))^2}, {IdsX1}]
> 
> Yielding:
> 
> Out[15]=
> {{IdsX1 -> 0.000234453}, {IdsX1 -> 0.00088125}}
> 
> 
> When I rearrange the equation system a bit, it fails to find a solution:
> 
> In[16]:=
> Solve[{Rx == 3300, VinX1 == 0, VgsX1 == Rx*IdsX1, 
>     IdsX1 == 0.001(1 - (VinX1 - VgsX1)/(-1.5))^2}, {IdsX1}]
> 
> Out[16]=
> {}
> 
> 
> What's going on?  Why does a little algebra (the creation of the 
> variable VgsX1) cause a problem?  In[16] was generated by copying In[15] 
> and doing some editing.  No error messages were generated by either.

A number of people contacted me offline and suggested that the 
difference was that Solve[] was interpreting VgsX1 as a parameter, so 
only special-case solutions exist, which Solve doesn't accept as a 
solution.  If you list VgsX1 as a variable to be eliminated, all is 
well.  The other proposed solution was to add VdsX1 to the list of 
variables to be solved for.  Both approaches work.  

Thanks to all,

Joe Gwinn


  • Prev by Date: Re: Solve[] handles the same system differently
  • Next by Date: Re: books on *problem solving* using mathematica
  • Previous by thread: Re: Solve[] handles the same system differently
  • Next by thread: Re: Solve[] handles the same system differently