[SciPy-user] possible to get INF in divide by zero ?
Ryan May
rmay31@gmail....
Fri Aug 29 13:09:18 CDT 2008
Stef Mientki wrote:
> thank you all for the explanations.
>
> I'm a practical engineer, who almost never divide by zero.
> But the question came from my son,
> familiar with python and a little with scipy.
> After his first lesson in MatLab, he said:
> Oh what a beautiful environment is MatLab, it's even capable to divide
> by zero without errors.
> So for the moment probably MatLab is better suited for educational purposes.
NO!!!
> I'll ask him again to compare scipy and Matlab, after a few weeks ;-)
The fundamental difference here is that Matlab operates using double
precision numbers for *everything* by default. I personally consider
that a design flaw. Numpy is being smart and letting you use integers
if that's what you give it. So this isn't some limitation of numpy,
it's just a slight difference of "opinion" between the packages. Numpy
is capable of the same behavior with just one of two minor tweaks to the
example:
>>>a = np.array([2., 3.]) #Note the decimal points, this makes floats
>>>a/0
array([ Inf, Inf])
-or-
>>>a = np.array([2, 3], dtype=np.float32) #Explicitly ask for floats
>>>a/0
array([ Inf, Inf], dtype=float32)
Ryan
--
Ryan May
Graduate Research Assistant
School of Meteorology
University of Oklahoma
More information about the SciPy-user
mailing list