[Numpy-discussion] np.finfo().maxexp confusing
Matthew Brett
matthew.brett@gmail....
Tue Oct 11 15:55:50 CDT 2011
Hi,
On Tue, Oct 11, 2011 at 2:39 PM, Matthew Brett <matthew.brett@gmail.com> wrote:
> Hi,
>
> I realize it is probably too late to do anything about this, but:
>
> In [72]: info = np.finfo(np.float32)
>
> In [73]: info.minexp
> Out[73]: -126
>
> In [74]: info.maxexp
> Out[74]: 128
>
> minexp is correct, in that 2**(-126) is the minimum value for the
> exponent part of float32. But maxexp is not correct, because 2**(127)
> is the maximum value for the float32 exponent part:
>
> http://en.wikipedia.org/wiki/Single_precision_floating-point_format
>
> There is the same maxexp+1 feature for the other float types.
>
> Is this a sufficiently quiet corner of the API that it might be
> changed in the future with suitable warnings?
Ah - I just found this:
http://docs.scipy.org/doc/numpy/reference/generated/numpy.MachAr.html#numpy.MachAr
which explains that:
maxexp int Smallest (positive) power of ibeta that causes overflow.
which is - unpleasantly named, but at least, clearly documented - if
not at the point of use. When I've got better internet access, I'll
try and modify the finfo docstring to explain.
See you,
Matthew
More information about the NumPy-Discussion
mailing list