Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

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

Search the Archive

Re: NSolve unable to find all possible roots

  • To: mathgroup at smc.vnet.net
  • Subject: [mg115606] Re: NSolve unable to find all possible roots
  • From: DrMajorBob <btreat1 at austin.rr.com>
  • Date: Sun, 16 Jan 2011 05:53:00 -0500 (EST)

There is only one solution:

eq = x (Sqrt[-13.319 - x^2] + 2.41*Sqrt[1.004 - x^2]) // Rationalize;
Solve[eq == 0, x]

{{x -> 0}}

(eq /. x -> # &) /@ {0, 1.99, -1.99}

{0, 0.\[VeryThinSpace]+ 16.5178 I, 0.\[VeryThinSpace]- 16.5178 I}

(Your other two "roots" are not roots.)

Perhaps you only wanted the real part to be zero? In that case, we have  
infinitely many solutions (in addition to 0):

eq = Re[Sqrt[-13.319 - x^2] + 2.41*Sqrt[1.004 - x^2] // Rationalize];
Reduce[eq == 0, x]

(Re[x] <= -(Sqrt[(251/10)]/5) &&
    Im[x] == 0) || (Re[x] >= Sqrt[251/10]/5 && Im[x] == 0)

Sqrt[251/10]/5 // N

1.002

Here are two of those solutions:

eq /. {{x -> -(Sqrt[(251/10)]/5)}, {x -> Sqrt[251/10]/5}}

{0, 0}

1.99 and -1.99 satisfy that version of the equation, also.

Bobby

On Sat, 15 Jan 2011 03:45:17 -0600, Luiz Melo <luiz.melo at polymtl.ca> wrote:

> Dear mathgroup,
> The equation below has three possible roots, namely: 0., 1.99, -1.99.
>
> eq = x*(Sqrt[-13.319 - x^2] + 2.41*Sqrt[1.004 - x^2])
>
> If we try NSolve[eq == 0, x], we get {{kx-> 0.}} only.
>
> How to instruct NSolve to search for the other two roots of the above  
> equation?
>
> Thank you
> Luiz Melo
>
> --
>
>


-- 
DrMajorBob at yahoo.com


  • Prev by Date: Re: avoiding non-machine numbers
  • Next by Date: Re: avoiding non-machine numbers
  • Previous by thread: Re: NSolve unable to find all possible roots
  • Next by thread: Re: NSolve unable to find all possible roots