Wednesday, 15 October 2008

Why you should switch to Octave ?

I have been trying to 'sell' Octave to lots of guys who intend to use Matlab to do their project and my campaign was not well recieved, at least this far. So I am going to tell you why you should ditch Matlab, and get into the Octave bandwagon.
Octave is a free software developed and distributed by the University of Wisconsin, to perform the stuff that Matlab do. It was originally developed by the University of Wisconsin.
Octave is capable of performing real and complex arithmetic for scalars and vectors. Octave programs are written just like Matlab code, with one or two minor modifications. Code written in Matlab is compatible with Octave and vice versa. Octave script files have the .m extension, similar to the Matlab scripts.
Octave's capability can be enhanced by integrating it with Octave Forge, which is a collection of additional toolbox packages, for Octave. This is pretty much like the additional toolboxes available with Matlab.
Octave is a command-line based system and although a GUI is avaialbale, it is still in the alpaha stage and wont give you the experience that Matlab's IDE gives.
I have been trying out Octave for the past few days and I am very impressed by it. What really attracted to me was that the installer was very light, only around 55 MB. Once installed, it took soem time to get around the settings and controls. I tried running some code, that I had written for my project in Matlab, on Octave, and to my surprise it executed without any major change in the code.
I tried using the GUI that comes with Octave and it is good, although it is not a replacement for Matlab's neat IDE. It has pretty much everything that the Matlab IDE has, ie Command Window, Command History, File and Variable Window etc. The command window has a black background, which adds to Octave's geek value. :-) But be warned that OctaveUI is still in the aplha stage, and it is prone to crashes.
Overall, Octave gives you pretty much everything that Matlab can give you. It is a open source software distributed under the GNU General Public License(GPL). So you are actually using something legal, unlike Mtalab, which is used by most of us (read almost all) as a pirated program.

Octave - For
  • Open Source Software
  • Capable of doing almsot everything that Matlab does
  • Two-way compatibility with Matlab
  • C++/Java style mathematical operations ( ie it is OK to write i++; whereas in Matlab you have to use the tiresome i=i+1; )
  • The well-written Octave manual is enough to get you started.

Octave - Against
  • Lacks a good GUI (this proble will be solved soon, though the alpha version is not that bad)
  • The Command line version requires some practice to get used to.
  • The loops and conditional statements like for, if, while etc have a slightly different syntax compared to Matlab.
So guys, please try Octave. As I have already mentioned, it is very light, and can be downloaded easily.
Please read the Octave FAQ here.