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
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).
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).
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.
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.
Octave provides a lot of the functionality of Matlab, and can run some Matlab programs. Sage is the open source "equivalent" of Mathematica.
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
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).
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 wantipython-notebook
which provides a browser-based interactive session (see image below).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.Reduce, Maxima, Sage, Axiom (in three variations), and others, all are free and will provide you computer algebra on Linux.
Freemat is a good alternative. It can handle most of the Matlab m-scripts.
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.
I would suggest installing Cantor which supports four different environments (Maxima, R, SAGE and KAlgebra).
It has a very simple interface and it is easy to use.