# Wilkinson Calculator

### by Daniel D. Warner

The Wilkinson model of floating point arithmetic starts by defining the set of
rational numbers which comprise the "model numbers". This set is defined
in terms of four parameters: b, t, emin, and emax, where b is the base, t is
the number of base b digits, emin is the minimum exponent, and emax is the
maximum exponent. More precisely, the model contains
0 and all numbers of the form:

± (d1/b + d2/b^2 + . . . + dt/b^t) x b^e

where emin <= e <= emax.

There are three derived numbers which reflect key features of a particular
model. These are: lambda (the largest positive model number), sigma (the
smallest positve model number), and eps (the machine epsilon which is the
largest relative gap between two model numbers). The last number, the machine
epsilon, is the crucial parameter for analyzing rounding errors in floating
point arithmetic. The machine epsilon has the property that 1 + eps > 1.

This page contains a Java implementation of a calculator for a large
range of Wilkinson models. Specifically, the base can be any value between
2 and 2^15. The number of digits is limited only by the memory of the machine
(and the patience of the user). The minimum and maximum exponents can be
any valid 32-bit integer.

Specify different model parameters in the boxes below, and the display will show
the key parameters as well as a few sample calculations. For bases between 2 and
36 there is a single digit representation (0 - 9 a - z) of a base b digit.
For example, in base 16 a through f represent the digits 10 through 15. For
bases larger than 36, each digit is represented as a base 10 number and each
digit is separated by a space.

*
Code and documentation developed by
Daniel D. Warner
*

Please email questions and comments to
warner@math.clemson.edu.

The author wishes to thank
Clemson University and the
Shodor Education Foundation
for support of this project.