[Numpy-discussion] float32 to float64 casting
Charles R Harris
charlesr.harris at gmail.com
Fri Nov 16 01:37:03 EST 2012
On Thu, Nov 15, 2012 at 8:24 PM, Gökhan Sever <gokhansever at gmail.com> wrote:
> Could someone briefly explain why are these two operations are casting my
> float32 arrays to float64?
> I1 (np.arange(5, dtype='float32')).dtype
> O1 dtype('float32')
> I2 (100000*np.arange(5, dtype='float32')).dtype
> O2 dtype('float64')
This one is depends on the size of the multiplier and is first present in
1.6.0. I suspect it is a side effect of making the type conversion code
sensitive to magnitude.
> I3 (np.arange(5, dtype='float32')).dtype
> O3 dtype('float32')
> I4 (1*np.arange(5, dtype='float32')).dtype
> O4 dtype('float64')
This one probably depends on the fact that the element is a scalar, but
doesn't look right. Scalars are promoted differently. Also holds in numpy
1.5.0 so is of old provenance.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the NumPy-Discussion