i am a engineering student and i have to do a lot of numerical processing, plots, simulations etc. The tool that i use currently is Matlab. I use it in my university computers for most of my assignments. However, i want to know what are the free options available.
i have done some research and many have said that python is a worthy replacement for matlab in various scenarios. i want to know how to do all this with python. i am using a mac so how do i install the different python packages. what are those packages? is it really a viable alternative? what are the things i can and cannot do using this python setup?
For all of these reasons, and many more, Python is an excellent choice to replace MATLAB as your programming language of choice.
Python is a high-level language, it is more user friendly, more readable and more portable. MATLAB is a low-level language and not good at some algorithms such as bioinformatics. MATLAB has the function of the matrix, and Python can use NumPy, and the library can achieve similar results.
To convert Matlab to python, we have two options, either do it manually or take the help of some tool. To convert Matlab to python, a tool named SMOP (Small Matlab and Octave to Python Compiler) is used. This tool is capable of understanding basic Matlab code and then parsing it to python.
Python in combination with 3rd Party Packages: Numpy, Scipy, Pandas and Matplotlib can be used as a replacement for MATLAB.
On a Mac the easiest ways to get started are (in no particular order):
sudo port install py26-numpy py26-scipy py26-matplotlib py26-ipython
should get you started.I've done exactly this (replace Matlab with Python) about 2 years ago and haven't looked back. The broadcasting in Python, more intuitive memory model and other Numpy advantages make numerical work a complete pleasure. Plus with f2py, cython it is incredibly easy to put inner loops in another language. This is a good place to start - other impressive pages to provide motiviation are PerformancePython and ParallelProgramming. Be sure to understand Pythons "variable is a reference to an object" semantics... after that adjustment everything is plain sailing. One of the coolest things that beats matlab is in 2 lines I run over 8 cores... p = Pool(8); res = p.map(analysis_function,list_of_data)
- MATLAB parallels toolboxes are so expensive I've yet to see a University that actually has them.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With