For my future lab work I need to learn Matlab. I am slowly working my way through the demo videos to get a basic familiarity with the software. While I am learning what can be done I probably won’t really learn the software until I need to do something with it.
I always thought that Matlab was an alternative to Mathematica or at least fulfilled a lot of what it does. After using Mathematica for some data analysis I can see how Matlab could replace Mathematica in a work flow, but Mathematica still wins for algebraic calculations and calculus. Though I suppose that I will slowly be shying away from solving hard integrals and moving more towards working with real numbers.
While I appreciate that Matlab is offered for 64-bit Intel OS X I am not a fan of the yearly license renewals. I am using my labs license so I don’t have to pay but it is just an inconvenience to know that your software could stop working. For this reason my professor also gave me an older copy of Matlab to install on my Windows partition that has a perpetual license and won’t expire. The only upside I see to the annual license is if it includes all updates and upgrades to new versions of Matlab.
Why can’t you continue to use Mathematica?
What can you do in Matlab that you can’t do in Mathematica …where “can’t do” means can’t do just as, or more, efficiently?
Mathematica numerics can more than match Matlab so no reason why you couldn’t be using reals in Mathematica.
http://groups.google.com/group/comp.soft-sys.math.mathematica
One noticeable difference in my experience has been the speed at which the two can process data. Plotting around 50,000 data points with Mathematica may take around thirty seconds or so while in Matlab it was about three or five seconds.
Also graphing in Mathematica is very hit or miss. A prime example is trying to create a plot legend for a multiple list plot, it never has worked for me so I resort to making one in Adobe Illustrator (or Photoshop).
The main reason for switching over to Matlab is that the research group I am joining runs everything through Matlab. This has consequently given me the latest Matlab for my computer while I would have to pay to upgrade Mathematica (I own 5.2 but have done a lot of work on 6).