There are loads of domains where none of the free options are very good.
There are loads of domains where none of the free options are very good.
However, I can't help but take exception to Vivado and SOLIDWORKS being good software... While powerful, they are both incredibly buggy and prone to crashing if you so much as look at them wrong.
https://docs.scipy.org/doc/scipy/reference/generated/scipy.s...
https://www.mathworks.com/help/signal/ref/pwelch.html
Maybe my bias is showing, but I find the Matlab documentation to be superior. However, that is nothing compared the quality of the IDE which is critical when doing scientific compute. When I was re-evaluating our simulation environment at work, we looked at PyCharm. The plotting capabilities alone made it easy to stick with Matlab, even at the orders of magnitude higher cost.
N.B. This is my experience in an Optical Communications R&D environment.
Regarding IDE, I guess we tend to put priorities on different things. I find pycharm's (pro edition) git Integration, debugging, refactoring and profiling vastly superior. I plot using regular qt windows and I agree that for interactive plots where one wants to look at points etc, matlab has the edge, for publication ready plots matplotlib beats matlab hands down though (although the API is quite verbose, proplotlib is a wrapper that makes things more convenient IMO).
Anyway I think we have different priorities in what we are looking for. We use Python for labautomation and the matlab instrumentation toolbox is a buggy mess, our measurement times decreased by a factor of 5-10 when we switched from matlab.
Regarding cost, we are a university so matlab and python have equal costs. I do know of colleagues at industry labs where matlab cost was a factor though.
That hasn't been my experience. Solidworks definitely isn't as responsive as I'd like, but frankly I'll take "a bit sluggish but has all the major features and is not a UX disaster" over something like FreeCAD or Yosys.
The biggest thing Matlab has is the GUI (which is surprisingly good!), the documentation (excellent), and the plot viewer. The plot viewer is probably its killer feature. There's just nothing remotely as good in any other software, at least as far as I could find.
Octave's is terrible. Barely any features and incredibly slow.