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

MathGroup Archive 2010

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

Search the Archive

Root again

  • To: mathgroup at smc.vnet.net
  • Subject: [mg109006] Root again
  • From: Peter Pein <petsie at dordos.net>
  • Date: Sat, 10 Apr 2010 06:52:38 -0400 (EDT)

Dear group,

while experimenting further with
Root[1 + t*#1 + #1^6 &, k], k=1..6, k element N

I met the following issue:

1.) I want to know for which values of t>0 the Roots are real-valued:
In[4]:= (NMinimize[{t, Im[#1] == 0 && Im[t] == 0}, t] & ) /@ 
Table[Root[1 + t*#1 + #1^6 & , k], {k, 6}]

During evaluation of In[4]:= NMinimize::cvdiv: Failed to converge to a 
solution. The function may be unbounded. >>
During evaluation of In[4]:= NMinimize::cvdiv: Failed to converge to a 
solution. The function may be unbounded. >>
During evaluation of In[4]:= NMinimize::nosat: Obtained solution does 
not satisfy the following constraints within Tolerance -> 0.001`: 
{-Im[Root[1+t Slot[<<1>>]+Slot[<<1>>]^6&,3]]==0}. >>
During evaluation of In[4]:= NMinimize::nosat: Obtained solution does 
not satisfy the following constraints within Tolerance -> 0.001`: 
{-Im[Root[1+t Slot[<<1>>]+Slot[<<1>>]^6&,4]]==0}. >>
Out[4]= 
{{-1.20475*10^105,{t->-1.20475*10^105}},{-1.20475*10^105,{t->-1.20475*10^105}},{-1.56919,{t->-1.56919}},{-1.56919,{t->-1.56919}},{-1.56919,{t->-1.56919}},{-1.56919,{t->-1.56919}}}

Well, as I understand -1.2..*10^105 it wants to be interpreted as - 
Infinity. The tolerance-warnings are OK for me as the imaginary part of 
some of the roots "pops up immediatelly" instead of "growing smooth".

So far so good. But if I want to know if there are upper bounds for t>=0 
so that the roots are real:

In[7]:= (NMaximize[{t, Im[#1] == 0 && t >= 0}, t] & ) /@ Table[Root[1 + 
t*#1 + #1^6 & , k],
    {k, 6}]
During evaluation of In[7]:= NMaximize::cvdiv: Failed to converge to a 
solution. The function may be unbounded. >>
During evaluation of In[7]:= NMaximize::cvdiv: Failed to converge to a 
solution. The function may be unbounded. >>
During evaluation of In[7]:= NMaximize::nosat: Obtained solution does 
not satisfy the following constraints within Tolerance -> 0.001`: 
{-Im[Root[1+t Slot[<<1>>]+Slot[<<1>>]^6&,3]]==0}. >>
During evaluation of In[7]:= NMaximize::nosat: Obtained solution does 
not satisfy the following constraints within Tolerance -> 0.001`: 
{-Im[Root[1+t Slot[<<1>>]+Slot[<<1>>]^6&,4]]==0}. >>
During evaluation of In[7]:= Delete::partw: Part {1,1,2,1,2,1,1} of 
{{Im[Root[1+Times[<<2>>]+Power[<<2>>]&,5]]==0,t>=0}} does not exist. >>
During evaluation of In[7]:= Delete::partw: Part {1,1,2,1,2,1,1} of 
{{True,Converged}} does not exist. >>
During evaluation of In[7]:= Delete::partw: Part {1,1,2,1,2,1,1} of 
{{Im[Root[1+Times[<<2>>]+Power[<<2>>]&,6]]==0,t>=0}} does not exist. >>
During evaluation of In[7]:= General::stop: Further output of 
Delete::partw will be suppressed during this calculation. >>
Out[7]= 
{{5.90194*10^104,{t->5.90194*10^104}},{5.90194*10^104,{t->5.90194*10^104}},{1.37262*10^-7,{t->1.37262*10^-7}},{1.37262*10^-7,{t->1.37262*10^-7}},{-Experimental`NumericalFunction[{Hold[-1.*10^-9],Block},{{Hold[1.*10^-9]}},{{1,817,{{Automatic,Automatic,None,1,Automatic},{Automatic,Automatic,None,1,Automatic}}}},{0,3},{428,MachinePrecision,{{Automatic},Automatic},True,Experimental`NumericalFunction,Automatic,None},{None,None,None}],{t->1.*10^-9}},{-Experimental`NumericalFunction[{Hold[-1.*10^-9],Block},{{Hold[1.*10^-9]}},{{1,817,{{Automatic,Automatic,None,1,Automatic},{Automatic,Automatic,None,1,Automatic}}}},{0,3},{428,MachinePrecision,{{Automatic},Automatic},True,Experimental`NumericalFunction,Automatic,None},{None,None,None}],{t->1.*10^-9}}}

beside the expected Warnings there are some messages which I do not 
understand:
Part[{...}] does not exist.
Looking at the expressions where Part[{1,1,2,1,2,1,1}] shall be taken 
from explains why this does not work, but what makes Mathematica look 
for this part?
And what does Mathematica want to tell me with
"-Experimental`NumericalFunction[...]"?
What meaning do the parameters of this function have (especially what is 
the 428??)?

If this is a bug in NMaximize in combination with Root[]-objects, it is 
not very interesting for me, but if this output happens intentionally, 
I'd like to get an explanation.

Thanks in advance,
Peter


  • Prev by Date: Re: if using Mathematica to solve an algebraic problem
  • Next by Date: ShowGraph vs. GraphPlot
  • Previous by thread: Re: Surprising behaviour with nested pure functions and
  • Next by thread: Format InputField -> Right ?