MathGroup Archive 2005

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

Search the Archive

Adding two numbers of high precision results in a number of low precision??


I have the following question. In a pretty long code (so I won't send 
everything) at some point the following loop occurs:

> For[i=1,i<=3,i++,
>     bTemp[i,0,j]=bTemp[i,0,0]+Q[i,j];
>     Print["Precisie bTemp[",i,",0,0] = ",Precision[bTemp[i,0,0]]];
>     Print["Precisie Q[",i,",",j,"] = ",Precision[Q[i,j]]];
>     Print["Precisie bTemp[",i,",",0,",",j,"] = ",Precision[bTemp[i,0,j]]];
>  ]; (* einde For *)

("Precisie" is Dutch for "precision" ;)), where the j is a loop counter 
and the Q[.,.]'s and bTemp[.,0,0]'s are known numbers of a certain 
precision. Now two pieces of the output of this piece of code look like 

> Precisie bTemp[2,0,0] = 397.142
> Precisie Q[2,1] = 397.172
> Precisie bTemp[2,0,1] = 395.193


> Precisie bTemp[3,0,0] = 389.685
> Precisie Q[3,1] = 390.729
> Precisie bTemp[3,0,1] =53.8232

Now the first one makes sense, but the last one, how is it possible that 
if I add two numbers of precision ca. 390 I get something of precision 
53 back? I hope somebody could explain, because there are numerical 
problems in my code that mess things up and I'm afraid the stuff above 
could have to do with it...

Thanks in advance & best wishes, Kees van Schaik


   Kees van Schaik
   Frankfurt MathFinance Institute
   J.W. Goethe-Universitaet
   Frankfurt am Main
   Tel: +49 (0)69 79823453

  • Prev by Date: Re: Simplifying Log to ArcCos Expressions
  • Next by Date: Re: FilledPlot: Curves->Back option and Epilog not working?
  • Previous by thread: Re: New Mathematica menu: New Package
  • Next by thread: Re: Adding two numbers of high precision results in a number of low precision??