[Numpy-discussion] matlab vs. python question

Zdeněk Hurák hurak at fel.cvut.cz
Thu Apr 26 06:59:53 EDT 2007


Travis Oliphant wrote:

[...]
> I would love to see some good contributions in the area of Simulink-like
> work. There are several things out there that are good starts.

Even though I praised Simulink highly in the previous contribution, I don't
think that it would be a good way to mimic it. That way (the way that, for
instance, Scilab/Scicos is going) you will only be SECOND.

What I like (still as a newcomer) about Scipy/Numpy is that it does not try
to be Matlab for poor. You (I mean the community) can take an inspiration
BY THE USE, but please, don't look too much on Matlab. Let's create
somethink better even at the cost of not being compatible and perhaps
requiring some learing effort from Matlab users. I keep my fingers crossed
for Octave project, which is kind of free (GNU GPL) Matlab clone, but at
the same moment I can recognize their limits in being JUST A CLONE. The
leaders of Octave project do realize this danger but user kind of dictate
compatibility with Matlab.

To be finally more specific, there is some discussion going on in the
systems&control community as to "block-diagram vs. equation-based
modelling". I am not a guru in dynamic systems modeling but in my humble
opinion it is worth considering something like Modelica language
http://www.modelica.org/ as the ground for modeling in Python. There is a
young free implementation called OpenModelica
http://www.ida.liu.se/~pelab/modelica/OpenModelica.html. A commercial
implementation is produced by Dynasim and is called Dymola
http://www.dynasim.com/ and can at least give an inspiration, showing that
from a user point of view, it is also just graphical blocks that are being
connected to build a model.

To make it clear, I am not a proponent of the above mentioned tools, I just
came across these a couple of days ago when searching for an alternative to
Simulink (commercial of free) and I found the whole Modelica movement
interesting and perhaps the only one with significant development effort
investment.

>> But what makes Matlab difficult to be replaced is that lots of other
>> projects (commercial: Mathematica, Maple, ... and free: octave, maxima,
>> scipy, ...) only offer computation and visualization, while engineers in
>> my field also need INTERACTION OF THE SYSTEM WITH EXTERNAL WORLD. That
>> is, compatibility with a real-time operating system and MOST available
>> input-output (AD-DA) cards.
> The only way to solve this is to get more users interested in making
> these kinds of things happen. Or to start a company that does this and
> charges for a special build of Python compatible with your favorite
> hardware.

I think that it would not be necessary to start from the scratch. There are
some free projects for interfacing PC to these cards like COMEDI
http://www.comedi.org/. There are also projects with real-time adaptations
of commong operating systems, for Linux, I know of two: RTAI
https://www.rtai.org/ and RTLinux-GPL  http://www.rtlinux-gpl.org/. I am 
not an expert in these domains but it appears that there should be no
problems to interface to these tools. The only think is the investment of
developers effort, of course...:-)

Best regards,

Zdenek




More information about the NumPy-Discussion mailing list