On 9/4/06, Sebastian Haase <haase@msg.ucsf.edu> wrote:
Paulo J. S. Silva wrote:
> Once again, the information that singed zero is part of IEEE standard is
> in the paper I cited in my last message.
>
> It is very important to be able to compute the sign of an overflowed
> quantity in expressions like 1/x when x goes to zero.
>
> Best,
>
> Paulo
Hi,
This is all very interesting ( and confusing (to me, maybe others) at
the same time ...) ...
Question 0: Are you sure this is not a bug ?
>>> N.array([66]).round(-1)
[60]
That does look like a bug.
>>> array([66]).round(-1)
array([60])
>>> array([66.]).round(-1)
array([ 70.])
I suspect it is related to the integer data type of the first example. The code probably does something like this:
round(66/10)*10
and 66/10 == 6 in integer arithmetic.
Chuck
>>> N.array([66.2]).round(-1)
[ 70.]
Question 1: Was this way of round already in Numeric and /or in numarray ?
Don't recall.
Question 2: Does this need to be better documented (complete and
corrected(!) docstrings - maybe a dedicated wiki page ) !?
This is related to "How does Matlab or IDL or others do rounding ?" -
This would at least determine how many people would be surprised by this.
(I would say that *if* Matlab rounds the same way, we might need less
documentation ...)
I have improved the document strings and the example at
scipy.org.
Chuck