"Boudewijn Dijkstra" <(E-Mail Removed)> wrote in message

news

(E-Mail Removed)...

> Op Thu, 23 Aug 2007 18:08:15 +0200 schreef Roman Töngi

> <(E-Mail Removed)>:

>> Boudewijn Dijkstra wrote:

>>> Op Thu, 23 Aug 2007 12:45:52 +0200 schreef Roman Töngi

>>> <(E-Mail Removed)>:

>>> How did you arrive at a machine epsilon of 2^(-52)?

>>>

>> From the IEEE-specification for double format.

>

> I asked how, not where. Unless it says something like: "the machine

> epsilon is 2^(-52); this corresponds to the upper limit of the rounding

> error."

>
my guess (probably OT here, oh well):

it will be this, presumably, unless the machine computes using less bits

than the format (such as if the calculations were internally performed with

floats, or with 48 bit mantissa values, or such).

may be a little higher really, as presumably the exact values of the low

order bits will depend on the exact HW.

for example, calculations performed with doubles in SSE are often slightly

off from those performed in the FPU, given the FPU uses an internal 80 bit

representation (with a 64 bit mantissa).

now, if our basic value is 1, and things are properly normalized (I think

this is required, except in the edge case of very small values), then our

epsilon is about the same as the relative weight of our low order bits.

now, if the major value were something other than 1, then the epsilon would

differ, in step with the exponent.

or such...

>

> --

> Gemaakt met Opera's revolutionaire e-mailprogramma:

> http://www.opera.com/mail/