Software tutorial/About the course software

From Process Model Formulation and Solution: 3E4
Jump to navigation Jump to search
Tutorial navigation Next step: Software installation →
MATLAB Python

MATLAB (MATrix LABoratory) is a high level computer language/ interactive software package developed and distributed by MathWorks™. Matlab was first developed in the 1970s by Cleve Molar. Cleve was later joined by John N. Little and Steve Bangert and the three went on to found MathWorks™. MATLAB excels at performing matrix operations and can handle large data sets (stored as matrices) very easily. MATLAB was originally designed as a user friendly interface for LINPACK and EISPACK and so was intended for linear algebra application. Since then MATLAB has greatly expanded it's core abilities to encompass a large array of graphic and numeric applications. These core abilities may in turn be expanded further through the addition of specialized "tool boxes".

From Wikipedia: Python is a high-level programming language whose design philosophy emphasizes code readability. Python aims to combine "remarkable power with very clear syntax", and its standard library of built-in functions is large and comprehensive.

We will use the NumPy and SciPy modules (the equivalent of a MATLAB toolbox), to provide scientific computing capabilities to Python. These modules, like MATLAB, allow you to handle large data arrays with little effort. They provide all the tools we require for this course.

We will also use the matplotlib module, which provides Python with plotting capabilities similar to MATLAB.

You might not be familiar with Python. Here is a comparison with MATLAB:

  • Many companies already use it as a standard package now
  • It can run on Windows, Linux and Mac computers (companies are increasingly using Mac and Linux platforms)
  • Commercial software support is available from 3rd parties
  • The software can be installed on a local desktop, or in a networked environment and run remotely
  • It is free (both for academic and commercial use), so it can used after you graduate
  • Installation is straightforward
  • The license is not restrictive: you can legally modify and improve the software
  • There are excellent add-on libraries for almost anything you need
  • It promotes good practice of writing a code file, and then running it (like MATLAB). The code file documents what you have done, and you can always repeat your analysis on a new data set, or share the code with colleagues. Other software packages tend to promote a more point-and-click approach, so you can't always retrace your steps.
  • There are multicore and 64-bit versions of Python available to process large data sets, and do parallel data processing.