Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I'd like to know the equivalents of Mathematica and MATLAB on Ubuntu, since both are costly.

share|improve this question

8 Answers 8

up vote 14 down vote accepted

Octave provides a lot of the functionality of Matlab, and can run some Matlab programs. Sage is the open source "equivalent" of Mathematica.

share|improve this answer
    
Good answer, gets straight to the point. GNU Octave is pretty good, although, yeah I would like to see a GUI made for it. Sage can also be used to perform numerical computations. It's the fusion of GNU Octave, MATLAB, Scilab, Numpy, Scipy, Maple, Mathematica and other mathematics software written in a common python programming language. –  Brenton Horne Sep 30 '12 at 15:52

I use QT Octave as GNU Octave does not have a nice GUI. Though most of the commands work out pretty well, some functions may not work as expected in MATLAB

share|improve this answer
    
I strongly recommend QT Octave, or called from C++ (which I have also been experimenting with). –  david6 Mar 14 '12 at 7:57

You can also give R a try. It is an open-source, free, programming environment. It has both powerful visualization capabilities, power numerical libraries, and everything you would expect from a functional programming language (well, except a compiler).

share|improve this answer
    
If you want to use R, I recommend looking at RStudio ( rstudio.org ), which has an interface which should be familiar to a MATLAB user. It isn't in the Ubuntu repositories but you can download a .deb package from their website. –  chronitis Oct 10 '12 at 9:39

Reduce, Maxima, Sage, Axiom (in three variations), and others, all are free and will provide you computer algebra on Linux.

share|improve this answer

I would suggest python with appropriate libraries as a good option.

It is not quite a replacement, since the python language is not as specialised for mathematics as matlab/mathematica syntax, but it combines a relatively good syntax for interactive mathematics with a fully-capable programming language.

You will want to install the packages:

  • ipython - a much nicer version of the standard python shell, with session saving, tab-completion, etc. See their website. You might also want ipython-notebook which provides a browser-based interactive session (see image below).

ipython notebook

  • python-numpy python-scipy python-matplotlib - Core scientific python libraries; Numpy provides efficient arrays for handling large amounts of data; Scipy provides algorithms, eg clustering, FFT, numerical integration, linear algebra; and Matplotlib provides a wide variety of plotting functions (including an interface designed for interactive use).

  • spyder - I normally just use these libraries with a text editor and a ipython terminal session, but if you are more comfortable with an integrated environment you may look at spyder, an IDE designed in the vein of matlab/mathematica using the above libraries. See screenshot below.

spyder screenshot

share|improve this answer

Freemat is a good alternative. It can handle most of the Matlab m-scripts.

share|improve this answer
    
Eh, not really -- FreeMat is rarely updated. The latest version available in the software centre was released 2008. –  Brenton Horne Nov 25 '12 at 23:22

Both Mathematica and Matlab are very bloated as they try to do too much and be sort of a silver bullet. As I said, they try.

Most open source libraries and tools however, focus on a particular problem or domain area and do it the best and fastest way, while making sure that they import and export to appropriate formats so you can work with several different tools and pass your data from one to another.

You will likely receive much more useful response to your question by specifying the specific domain you want to work in, or the specific type of tools you need as opposed to trying to find a clone of something like Matlab, which I wouldn't use even if it was free.

share|improve this answer

I would suggest installing Cantor Install App, which supports four different environments (Maxima, R, SAGE and KAlgebra).

It has a very simple interface and it is easy to use. Cantor main window

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.