MathGroup Archive 2003

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

Search the Archive

Help with error analysis of Mathematica Functions

  • To: mathgroup at smc.vnet.net
  • Subject: [mg45175] Help with error analysis of Mathematica Functions
  • From: terryisnow at yahoo.com (Terry)
  • Date: Fri, 19 Dec 2003 06:57:45 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

Fellow Mathematica Users,

I have a simulation that sometimes requires arbitrary precision
calculations in order to converge, however at the beginning when the
numbers are large such expensive calculations are unnecessary as
machine precision calculations will do. So I'm looking for a way to
calculate the maximum error that my numbers can be off by at a given
precision (then when my numbers become small enough that they risk
being subsumed by error, I can proactively increase the precision).

As I understand from a discussion I've been having on
comp.arch.mathematics here:

http://groups.google.com/groups?dq=&hl=en&lr=&ie=UTF-8&threadm=4nllpjfc8a.fsf%40edgedsp4.rtp.ericsson.se&prev=/groups%3Fhl%3Den%26lr%3D%26ie%3DUTF-8%26group%3Dcomp.arch.arithmetic

the accuracy in calculating the functions Log[] and x^y typically vary
with the compiler/math library chosen for a given hardware platform
(something I found to be quite surprising at the time). So I presume
that Mathematica's machine precision calculations will also be subject
to the choice of math library/compiler chosen when Mathematica was
compiled as these calculations are done directly by the supporting
platform.

So my first question is, does anyone know what compiler/math library
was used to compile Mathematica on the Windows/Intel platform? Better
yet can anyone tell me what the maximum error would be for Log[x] and
x^y when done on Mathematica machine precision numbers on Wintel
machines? (I suspect this will be on the order of 1 ulp from my
discussion on comp.arch.arithmetic).

Secondly can anyone tell me what those error bounds would be for
Mathematica's arbitrary-precision calculations which I presume are
done primarily by Mathematica routines.

Lastly, for the basic operations of addition, subtraction,
multiplication and division on arbitrary precision numbers, I presume
the result is exactly rounded (ie: within 0.5 ulp of the correct
answer), is this a fair assumption?

Any and all help will be very much appreciated!

terry


  • Prev by Date: Re: Better Set or Set Delayed ?
  • Next by Date: NDSolve: avoiding negative values?
  • Previous by thread: Re: Solving inequalities.
  • Next by thread: NDSolve: avoiding negative values?