Floating Point/Epsilon
Contents |
Granularity [edit]
Floating point numbers, because they are comprised of only a certain number of bits, have a granularity. They therefore cannot express an infinite amount of fractional values. This means that there is a "Largest Possible Value", ε, that satisfies the following equation:
This value is called the machine epsilon of the floating point system.
Epsilon (ε) [edit]
When a real number is rounded to the nearest floating point number, the machine epsilon forms an upper bound on the relative error. This fact makes the machine epsilon extremely useful in determining the convergence tolerances of many iterative numerical algorithms.
Determining Epsilon [edit]
The machine epsilon can be computed according to the formula:
So, for IEEE 754 single precision we have
and for IEEE 754 double precision we have
When
is not known, but
is known to be 2, the machine epsilon can be found by starting with a trial value of, say, 0.5 and successively multiplying the value by 2 until
is true.
Granularity Effects [edit]
An effect of this granularity is that some basic algebraic properties don't strictly hold. For instance, if we have three floating-point values, x, y, and z, we can show that:
Especially the when floating-point numbers are used in iterative calculations, round-off and granularity errors can result in large errors.
This page may need to be 


