As many of you know, #Matlab is a very expensive tool -- its cost brings to mind Mylan Pharmeceuticals and the EpiPen.
However, besides the student version, they do have a fairly low-cost "home" version. See the link:
https://www.mathworks.com/products/matlab-home/
Another way to go is to use a free clone, like Octave: https://www.gnu.org/software/octave/
Neil
P.S. I was looking at the Matlab Home website, and noticed that the signal processing toolbox (a key feature) is not included in the basic price. You have to pay $45 for it.
Or IPython/Jupyter Notebook.
This video looks like a great free resource for learning Matlab:
I use Scilab (http://www.scilab.org/) extensively. I think the syntax is a tiny little bit different from Matlab, but it has been too long since I last used Matlab to really judge that. All I know is I am very happy with this open source product.
+1 for Scilab. It's not compatible with Matlab, but it has a common ancestor, so someone who's conversant in Matlab can pick it up pretty quickly.
Hey Neil,
For a lot of work now with contractors I'm using Octave. For Windows the installations it comes with all of the design packages/functions I use. It is very nice. Easy to trade scripts back and forth.
Big hole though is Simulink. I don't know of a good replacement for that. Is the "home" version full-featured? It looked like you could still pay a few hundred to get Matlab/Simulink/DSP/Comm_Sys that I need.
Cheers,
Mark Napier
I gave up on Simulink the second or third time that I couldn't get a large model to run after an upgrade. You can do everything you need with straight code.
And then, you can use Simulink (which has xcos, but I haven't done more with that than dink with it a bit).
Hey Tim,
Simulink was been used in my old group (Scientific Atlanta/Cisco/ST Micro) for years and years. It's a great tool for prototyping digital systems with different clock rates and feedback paths. That being said, there are caveats.
1st thing, not all releases of Matlab are created equal. My favorite one for Simulink is R11.1; Version 5.3 of Matlab and Version 3 of Simulink. Released in 1999. The installer won't run on a 32-bit machine but through a fairly convoluted method I can install it on Windows 7. It runs very, very fast even on a machine choked by a company's IT department's safe-ware. The newer versions of Matlab seem sluggish by comparison. I do most of my development with this old version and occasionally check the model with the current version so I don't introduce incompatibilities. Neil doesn't agree with me, he always just used the latest version. I found that for designing very tight filters Matlab version 6.5 works better than current versions. It has the faster software FFT version and the remez function will converge much better than the modern PM function.
Next, Mathworks has an irritating habit of moving and deprecating things esp. in Simulink. Blocks that were in one location can wind up in a different library in another. Also, some of the blocks are just not accurate enough to bit accurately model a comm system. No flames please, I've seen it. The solution is to write custom blocks either in simple Simulink or with C MEX functions. The guru in our company was Leo Montreuil. He wrote most of the custom blocks and designed the majority of the DSP receivers for years. Leo said that he should be writing the code for Matlab and he is right; a custom block-that accurately models hardware is needed. You write functions and blocks that work and keep adding them to your library.
FWIW,
Mark Napier
Mark,
They say "Get the full Capabilities of Matlab", so that implies it is full-featured. As you noted, the DSP toolbox (a key feature) appears to be extra -- $45.
regards,
Neil
Something I recently discovered is that the Node.js library is functionally isomorphic to the Matlab library and it is complete. You can almost transliterate .m files to .js files and they will compile. And it's free. There remains the origin issue. JavaScript is zero origin.
I also bought the 'Signal Processing Toolbox' and the 'DSP System Toolbox'. I didn't buy the Simulink software.
I didn't know Matlab had a home version. Thanks for that tip!
I know Mathematica has had a home license for a while. I've been playing around with Mathematica for the last twenty years (no exaggeration). The symbolic math was very useful in taming EM fields equations in college but I've never been able to tame the full power of Mathemetica. It's such a fantastic software package but I think I'd need a four month retreat to really unleash its potential. As it is I guiltily use it as a mere interactive calculator or a toy.
We use Matlab extensively at work with many add-ons including its VHDL generation tools. I still find myself launching Octave at the command line for quick calculations. Octave is an unbelievably powerful tool to be available without the cost and chains of proprietary-licensed software. I should say in partial defense of Matlab's cost that their commercial tech support is the best of any I know (Altera, Xilinx, Wolfram, Mentor, JetBrains, off the top of my head). I'm not saying those companies have bad support necessarily -- just that Mathwork's support is first class. At least a few bars from the train of gold we send them every year goes to that. I say "commercial tech support" because I'm assuming the home use license has limited support but that's just an assumption.
I haven't used the SciPy family of tools nearly as much but only because I have to stop learning new tools at some point and actually get work done. My brief explorations left me impressed. My recollection is that they have better symbolic support than Matlab and Octave. Can anyone comment on that? Correct me if I'm wrong but the SciPy family includes different libraries and packages for different purposes including numerics, graphics and symbolic math.
Sorry for the explosion of words in a thread pointing out that Matlab has a home use license and Octave is a very good free alternative. I follow well designed powerful engineering tools, and get as jazzed by them, as some do Kardashians.
I've had the home version of Mathematica for at least 5 years, and it is nice now and then. But I tend to write a lot of code in C instead of using the tools because the tools don't behave the way I expect. My kids use MATLAB all the time, and they will ask me for help. I can help with the math, but not with the syntax. For them it's homework, they have to do it that way, so eventually they give up on me and actually go talk to the professor (which they should have started with, but hey, their kids).
They symbolic manipulation is good, and the 3D plots are great. But when it comes to crunching gigabytes of data the high level tools bog down. They are good to help you develop algorithms, and I wish I had the time to actually learn the details so I wouldn't get so frustrated with their idiosyncrasies. If nothing else I'd be able to help my kids with their homework!
It's nice to know there is a home version of MATLAB. I will pass that on to everyone I know.
Mike
Hi barcelonajack,
What kind of software tool is a Kardashian?
All graphics. No functionality.
barcelonajack, ha ha. Matlab focuses on large data sets. Kardashians focus on large sets.
Matlab uses fliplr & flipud on sets so does Kardashians