FreeMat is a free environment for rapid engineering and scientific prototyping and data processing. It is similar to commercial systems such as MATLAB from Mathworks, and IDL from Research Systems, but is Open Source.
It supports many MATLAB functions and some IDL functionality. It also features codeless interface to external C, C++, and Fortran code, further parallel distributed algorithm development (via MPI), and some extended volume and 3D visualization capabilities.
FreeMat is chartered to go beyond MATLAB to include features such as a codeless interface to external C/C++/FORTRAN code, parallel/distributed algorithm development (via MPI), and advanced volume and 3D visualization capabilities.
Features include:
- FreeMat supports the vast majority of MATLAB’s features including:
- N-dimensional array manipulation (by default, N is limited to 6).
- Support for 8,16, 32, and 64 bit integer types (signed and unsigned), 32 and 64 bit floating point types, and 64 and 128 bit complex types.
- Built in arithmetic for manipulation of all supported data types.
- Support for solving linear systems of equations via the divide operators.
- Eigenvalue and singular value decompositions.
- Full control structure support (including, for, while, break, continue, etc.)
- 2D plotting and image display.
- Heterogeneous array types (called “cell arrays” in MATLAB-speak) fully supported.
- Full support for dynamic structure arrays.
- Arbitrary-size FFT support.
- Pass-by-reference support (an IDL feature).
- Keyword support (an IDL feature).
- Codeless interface to external C/C++/FORTRAN code.
- Native Windows support.
- Native sparse matrix support.
- Function pointers (eval and feval are fully supported).
- Classes, operator overloading.
- 3D Plotting and visualization via OpenGL.
- Parallel processing with MPI (in the FreeMat development versions).
- Handle-based graphics.
- Just In Time compiler.
- Compatibility with Matlab (over 366 compatibility tests pass).
- Dynamic linking with BLAS.
- Vectorized fprintf, sprintf, fscanf, sscanf functions.
- Code profiler.
- Ability to handle huge arrays (more than 2GB) when compiled under 64 bit OS.
Website: freemat.sourceforge.net
Support: Documentation
Developer: Samit Basu
License: GNU General Public License v2.0

FreeMat is written in C and C++. Learn C with our recommended free books and free tutorials. Learn C++ with our recommended free books and free tutorials.
| Explore Linux | |
|---|---|
| Best Free and Open Source Software - A huge collection of recommended free and open source software covering every major category. | |
| In-depth Linux Software Reviews - Detailed assessments of Linux software covering features, usability and overall quality. | |
| The Big List of Active Linux Distros - An extensive collection of actively developed Linux distributions. | |
| Open Source Alternatives - Alternatives to software and services from Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle and others. | |
| Essential Linux System Tools - Indispensable utilities for monitoring, maintaining and managing Linux systems. | |
| Linux Productivity Tools - Useful utilities for improving productivity and streamlining everyday tasks. | |
| Alternatives to Popular CLI Tools - Modern alternatives to familiar command-line utilities supplied with Linux systems. | |
| Awesome Free Linux Game Tools - Tools, utilities and companion software that improve gaming on Linux. | |
| Machine Learning on Linux - Machine learning and deep learning software, self-hosted applications and practical tools. | |
| Saving Money with Linux - Practical ways to reduce electricity consumption and lower computing costs with Linux. | |
| Linux Candy - Fun, entertaining and sometimes delightfully quirky software from the lighter side of Linux. | |

Please read our Comment Policy before commenting.