Re: Accuracy and Precision
- To: mathgroup at smc.vnet.net
- Subject: [mg36861] Re: [mg36853] Accuracy and Precision
- From: Andrzej Kozlowski <andrzej at tuins.ac.jp>
- Date: Mon, 30 Sep 2002 03:02:59 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Well, first of of all, your using SetAccuracy and SetPrecision does
nothing at all here, since they do not change the value of a or b. You
should use a = SetAccuracy[a, Infinity] etc. But even then you won't
get the same answer as when you use exact numbers because of the way
you evaluate f. Here is the order of evaluation that will give you the
same answer, and should explain what is going on:
f = SetAccuracy[333.75*b^6 + a^2*(11*a^2*b^2 - b^6 - 121*
b^4 - 2) + 5.5*b^8 + a/(2*b), Infinity];
a = 77617.;
b = 33096.;
a = SetAccuracy[a, Infinity]; b = SetAccuracy[b, Infinity];
f
54767
-(-----)
66192
Andrzej Kozlowski
Toyama International University
JAPAN
On Sunday, September 29, 2002, at 03:55 PM, Peter Kosta wrote:
> Could someone explain what is going on here, please?
>
> In[1]:=
> a = 77617.; b = 33096.;
>
> In[2]:=
> SetAccuracy[a, Infinity]; SetAccuracy[b, Infinity];
> SetPrecision[a, Infinity]; SetPrecision[b, Infinity];
>
> In[4]:=
> f := 333.75*b^6 + a^2*(11*a^2*b^2 - b^6 - 121*b^4 - 2) + 5.5*b^8 +
> a/(2*b)
>
> In[5]:=
> SetAccuracy[f, Infinity]; SetPrecision[f, Infinity];
>
> In[6]:=
> f
>
> Out[6]=
> -1.1805916207174113*^21
>
> In[7]:=
> a = 77617; b = 33096;
>
> In[8]:=
> g := (33375/100)*b^6 + a^2*(11*a^2*b^2 - b^6 - 121*b^4 - 2) +
> (55/10)*b^8 + a/(2*b)
>
> In[9]:=
> g
>
> Out[9]=
> -(54767/66192)
>
> In[10]:=
> N[%]
>
> Out[10]=
> -0.8273960599468214
>
> Thanks,
>
> PK
>
>
>