Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

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

Search the Archive

Re: Eliminate works but Solve does not?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg121541] Re: Eliminate works but Solve does not?
  • From: DrMajorBob <btreat1 at austin.rr.com>
  • Date: Mon, 19 Sep 2011 07:04:44 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <201109180811.EAA06330@smc.vnet.net>
  • Reply-to: drmajorbob at yahoo.com

This has no solution:

Solve[{x[3]^2 + y[3]^2 == L[3]^2, x[1]^2 + y[1]^2 == L[1]^2,
   x[1] + x[2] == 2, y[1] == -2 + y[3], x[4]^2 + y[4]^2 == L[3]^2,
   x[2]^2 + y[2]^2 == L[1]^2, x[2] + x[4] == 1.6875`,
   y[2] == -2 + y[4], y[4] == 0.15625` + y[3]}, {L[1], L[3]}]

{}

because, implicitly, it requires (for instance) that

x[1]^2 + y[1]^2 == Sqrt[x[2]^2 + y[2]^2]

based on two different equations involving L[1]. The x variables are  
constrained and so, for general (unconstrained) x values, there are no L  
variables to solve the system.

Your Eliminate statement, on the other hand, solves for x variables in  
terms of L variables. In that situation, there ARE solutions.

Here's a third try:

Eliminate[{x[3]^2 + y[3]^2 == L[3]^2, x[1]^2 + y[1]^2 == L[1]^2,
   x[1] + x[2] == 2, y[1] == -2 + y[3], x[4]^2 + y[4]^2 == L[3]^2,
   x[2]^2 + y[2]^2 == L[1]^2, x[2] + x[4] == 1.6875`,
   y[2] == -2 + y[4], y[4] == 0.15625` + y[3]}, {L[1], L[3]}]

4096. x[1] == 3431. + 320. y[4] && 4096. x[2] == 4761. - 320. y[4] &&
  1.67772*10^7 x[3]^2 ==
   4.2172*10^6 + 6.61952*10^6 y[4] + 102400. y[4]^2 &&
  4096. x[4] == 2151. + 320. y[4] && 32. y[1] == -69. + 32. y[4] &&
  y[2] == -2. + y[4] && 32. y[3] == -5. + 32. y[4]

in which the constraints on x (which made the first try impossible) are  
made explicit.

Bobby

On Sun, 18 Sep 2011 03:11:06 -0500, RobertB <robert.c.baruch at gmail.com>  
wrote:

> I have a physical problem where I have a system of 9 equations in 10
> unknowns. I am trying to determine the relationship between 2
> unknowns. Here is the system:
>
> Subscript[y, 3]^2 + Subscript[x, 3]^2 == Subscript[L, 3]^2 &&
>
>  Subscript[y, 1]^2 + Subscript[x, 1]^2 == Subscript[L, 1]^2 &&
>
>  Subscript[x, 1] + Subscript[x, 3] == 2 &&
>
>  Subscript[y, 1] == Subscript[y, 3] - 2 &&
>
>  Subscript[y, 4]^2 + Subscript[x, 4]^2 == Subscript[L, 3]^2 &&
>
>  Subscript[y, 2]^2 + Subscript[x, 2]^2 == Subscript[L, 1]^2 &&
>
>  Subscript[x, 2] + Subscript[x, 4] == 1.6875 &&
>
>  Subscript[y, 2] == Subscript[y, 4] - 2 &&
>
>  Subscript[y, 4] == Subscript[y, 3] + (0.3125/2)
>
> Now, when I use Solve[..., {Subscript[L, 1], Subscript[L, 3]}], the
> answer is { }.
>
> However, when I use Eliminate[..., {Subscript[x, 1], Subscript[x, 2],
> Subscript[x, 3], Subscript[x, 4], Subscript[y, 1], Subscript[y, 2],
> Subscript[y, 3], Subscript[y, 4]}], I get a proper answer, that is, a
> function of L_1 and L_3 = another function of L_1 and L_3.
>
> Even if I add a condition, such as Subscript[L, 1] == 1 to the system,
> and Solve (or even NSolve) for Subscript[L, 3], I get { } even though
> I know that a solution exists.
>
> Can anyone explain why Solve/NSolve doesn't seem to do anything?
>
> Thanks!
>


-- 
DrMajorBob at yahoo.com




  • Prev by Date: Re: (x - 1) or (-1 + x)
  • Next by Date: Re: Compilation: Avoiding inlining
  • Previous by thread: Re: Eliminate works but Solve does not?
  • Next by thread: Re: Likelihood analysis with Mathematica: which Method for NIntegrate