Re: Scientific Applications



Hi,

I'd like to bring more details as I'm getting involved in a project is
to bring scientific apps to Gnome.

First of all, I'd like to precise that I mainly use scientific apps
for applied math (not stat) and signal processing.

I know very well matlab octave and the one you forgot ie Scilab
The reason is that I was the technical leader in the process of writting
a Fractal Analysis toolbox for matlab and scilab.

To be honnest, I have to add I have also written a GUI generation library
for scilab using TCL/TK. Foir the one who knows matlab, thus library is
a clone of the figure()/uicontrol()/uimenu() set in matlab.

We are in fact writting (with another guy here) a Gnomified scilab.
We have hesitated between scilab and octave, and finaly choosen scilab.

Here is a small comparison between scilab/matlab and octave:

*Graphics:
Scilab already offers a graphic visualization lib. which allows you to
see 2D and 3D figures (plots, param. plot, hist, bode, mesh3D, grid3D ...)
This lib has much more possibilities than Gnuplot.
It is nearly as useful as matlab's.
Each figures can generate xfig/ps/eps/latex/metadata files.
The library is completely included in scilab and higly extensible.
Unfortunately, the code is not very well documentated.

*Libraries: (this is the key point of our choice)
++Scilab: graphic visu/ GUI generation/ ,matrix calc/ robust control/
  non linear optimization and simulation, signal processing (very complete)
paolynomial calculation/ linear algebra/ metanet (graph theory)/ ARMA /
scicos (simulink clone)/ sound processing / cumulative functions/ 
fractals - wavelets -TFTS/ HMM/ neural networks
There is a automatic translater from matlab scripts to scilab scripts
Support to pvm (parallel Virtual Machine which allows to launch
scilab on different machine, and centralize the result in a single scilab)
Interprocess comm.

++Octave lib list is somehow poor. Maybe someone could give the exact list??


*Langage
octave = matlab clone (I don't know if it is matlab 5 compatible however)
scilab = near fraom matlab. Has many more types (list/ rational matrix, 
transfer matrix ...)
scilab can overload operator.
octave is interpreted, scilab is interpreted but can also compile the routines.

* program
octave: written in C/fort77/ C++ (fort is planed to disapear)
scilab: C/fort77
octave is well written, neat style
scilab (because it is very complex) is sometimes hard to understand,
(but I tend to understand it well)


* doc
octave: OK
sciulab: a lot of doc, sometimes cryptic. Internal are well described
at least, the stack system.
There is a book on scilab scheduled for the next month at Springer

* team
octave: ?? (one guy alone)
scilab: 6 full time researcher 



Now a comment on graphic visualization. I started a gnome visu app, but I'm 
still stuck with the writting of a device independent Gnome-"canvas".
I wrote one (in objc) that uses GNU-plotutils, but I thinmk it should be 
rewritten from scratch as, libplot has many draw backs, one of which
is the unability to clip the drawings to a portion of the graph. 
Moreover it is very slow.

We plan to make gnome-scilab corba-awared so that scilab internal computation
machione and its libs could be accessed from anay app.

Waziting for your comments. 



	Bertrand



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]