GUI tookit for science and education
Robert Kern
rkern at ucsd.edu
Wed Aug 17 22:11:36 EDT 2005
James Sungjin Kim wrote:
> Robert Kern wrote:
>
>>... Once you move outside of that box and start doing real
>>programming, Python (with Numeric, ipython, matplotlib, scipy, et al.)
>>beats MATLAB handily.
>
> As one who is really newbie on Python, In MATLAB we can represent the
> codes for the matrix manipulation as really like mathematical forms, e.g.,
>
> MATLAB> H = U*D*V'
>
> It definitely makes the science programmer easier and faster to write
> their codes.
Careful there. That's a huge generalization. Most scientific programmers
don't only do matrix manipulations. MATLAB makes matrix manipulation
easier, not writing scientific programs in general.
Like I said, if you're only doing exactly what MATLAB was designed for,
interactive manipulation of matrices, then MATLAB will be easier. MATLAB
pays a price for that convenience, though. Its facilities for writing
more general programs (by which I mean anything beyond "H = U*D*V'";
that includes most "scientific" programs) are severely lacking.
Once a MATLAB program gets large enough that it doesn't fit into one
file, it's unreadable, and if I'm given one that I need to
read/use/modify for my research, I refuse. Life is just too damn short.
I'd rather rewrite the thing myself in Python; indeed, I *have* on a few
occasions.
I can do a whole lot more in Python much easier. If that means I have to do
H = dot(U, dot(D, transpose(V)))
or (if U, D, V are scipy.mat() instances)
H = U*D*V.T
then I'm more than happy with that tradeoff. The small syntactic
conveniences MATLAB provides are dwarfed by the intrinsic power of Python.
--
Robert Kern
rkern at ucsd.edu
"In the fields of hell where the grass grows high
Are the graves of dreams allowed to die."
-- Richard Harter
More information about the Python-list
mailing list