MathGroup Archive 2001

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

Search the Archive

Re: Who can help me?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg26790] Re: [mg26778] Who can help me?
  • From: Daniel Lichtblau <danl at wolfram.com>
  • Date: Wed, 24 Jan 2001 04:18:33 -0500 (EST)
  • References: <200101220810.DAA27479@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Jacqueline Zizi wrote:
> 
> I'm working on this polynomial linked to the truncated icosahedron:
> 
>         -17808196677858180 x +
>         138982864440593250 x^2 - 527304830550920588 x^3 +
>         1301702220253454898 x^4 - 2358155595920193382 x^5 +
>         3347791850698681436 x^6 - 3878279506351645237 x^7 +
>         3764566420106299695 x^8 - 3117324712750504866 x^9 +
>         2229873533973727384 x^10 - 1390372935143028255 x^11 +
>         760794705528035032 x^12 - 367240961907017721 x^13 +
>         157018216115380477 x^14 - 59650776196609992 x^15 +
>         20179153653354540 x^16 - 6086251542996201 x^17 +
>         1637007669992780 x^18 - 392300104078670 x^19 +
>         83589038962550 x^20 - 15782712151030 x^21 +
>         2628070696678 x^22 - 383466859804 x^23 + 48618908986 x^24 -
>         5298021900 x^25 + 489095520 x^26 - 37516324 x^27 +
>         2327268 x^28 - 112200 x^29 + 3945 x^30 - 90 x^31 + x^32;
> 
> I'm interested at its value for x-> 2 + 2 Cos [2 [Pi] / 7].
> Taking N [] gives  3.2628184 10^7
> 
> But if I simplify  first and then take N[] it gives -0.0390625 +
> 0.0195313 [ImaginaryI]
> 
> As it is a polynomial with integer coefficients, and 2 + 2 Cos [2 pi /
> 7] is real too, the result should be real.  So I prefer the 1st
> solution,  but for another reason, I'm not so sure of this result.
> 
> A Plot between 3 and 3.5, does not help me  neither to check if the
> value 3.2628184  is good and If I do : polynomial /. x -> 3.2628184
> 10^7, it gives 2.7225238332205106`^240
> 
> How could I check the result 3.2628184 10^7 ?
> 
> Thanks
> 
> Jacqueline


You are seeing numeric cancellation in machine arithmetic. To avoid this
pitfall you need to use significance ("bignum") arithmetic, which keeps
track of precision.

In[4]:= polyeval = poly /. x->2+2*Cos[2*Pi/7];

In[5]:= N[polyeval]
                  8
Out[5]= 7.11764 10

In[6]:= N[polyeval, 50]
Out[6]= 0.0010805607234388904362155532364433382436433380392130

In[11]:= InputForm[evalsimp = Simplify[polyeval]]
Out[11]//InputForm= 
-206913272829752 - 46054183213619*(-1)^(1/7) +
186431760660533*(-1)^(2/7) + 
 129029299410756*(-1)^(3/7) - 129029299410756*(-1)^(4/7) - 
 186431760660533*(-1)^(5/7) + 46054183213619*(-1)^(6/7)

In[12]:= N[evalsimp]
Out[12]= -0.0546875 - 0.0117188 I

In[13]:= N[evalsimp, 50]
                                                                      
-88
Out[13]= 0.0010805607234388904362155532364433382436433380392130 + 0.
10    I


Daniel Lichtblau
Wolfram Research


  • Prev by Date: Re: Q: Factor with Polynominals?
  • Next by Date: Re: Re: task
  • Previous by thread: Re: Who can help me?
  • Next by thread: Re: Re: Who can help me?