awesome-MATLAB
by mikecroucher
A curated list of awesome MATLAB toolboxes, applications, software and resources.
AI summary
Toolbox collection
A curated list of toolboxes and resources for using MATLAB effectively
- stars
- 358
- forks
- 99
- watching
- 27
- awesome lists
- 5
- entries
- 138
What's in the list
138 links in 27 sections, with live GitHub stats.activeno commit in 2y
3rd Party Commercial Toolboxes
- Multiprecision Toolbox for MATLAB
This toolbox equips MATLAB with a new multiple precision floating-point numeric type and an extensive set of mathematical functions that are capable of computations with arbitrary precision
- MOSEK Optimization Tools
The provide access to the powerful MOSEK optimization solvers from inside the MATLAB environment either by a classical or by the modern object-oriented API
- FEATool Multiphysics
Finite Element FEM Simulation toolbox for Matlab and Octave featuring an easy to use GUI, integrated CAD, geometry, grid generation, solvers, and postprocessing functionality
Artificial Intelligence and Machine Learning
- Deep Learning Toolbox
MATLAB's deep learning toolbox
MATLAB Deep Learning Model Hub
. Discover the latest pretrained models for deep learning in MATLAB
Computational Mechanics
- GIBBON
An open-source ( ) MATLAB toolbox for computational (bio)mechanics, computational geometry, image segmentation, meshing, lattice structure creation, and finite element analysis (by linking with the open source package and the commercial package ABAQUS)
Cool
- Engima
MATLAB version of the Enigma machine
- Invisibility Cloak Using MATLAB and Simulink
This submission contains the implementation of an Invisibility Cloak using image thresholding and segmentation
Database Management
- Database toolbox
Official database toolbox from The MathWorks
go-redis
Free Redis Mex client for MATLAB
mex-sqlite3
Free Sqlite3 Mex client for MATLAB
dotenv for MATLAB
Manage database configuration environment variables
Games
- 2048
2048 is a game originally created by Gabriele Cirulli. This is a MATLAB implementation of the game
- Flappy bird
As one of the most popular games on app stores before being taken down, Flappy Bird does not need any further introduction. Now, it has come back alive, on MATLAB
Geospatial
- TopoToolbox
TopoToolbox is a MATLAB program for the analysis of digital elevation models (DEMs). It's free and open source
- m_map
A mapping package for Matlab
Hardware
- Arduino Support package
MATLAB Support Package for Arduino Hardware
- CPU Info
Read various bits of information about the CPU and operating system
- MATLAB Mobile
MATLAB on Android and iOS mobile phones and tablets
- Raspberry Pi Support from MATLAB
Acquire sensor and image data from your connected Raspberry Pi
- Rasperry Pi IO Support for Octave
Control Rasperry Pi GPIO Port from Octave
High Performance Computing in MATLAB
- MATLAB on the NVIDIA GPU Cloud
Running MATLAB on the NVIDIA GPU Cloud
- Parallel Computing Toolbox
Mathworks Toolbox. Provides support for various parallel programming paradigms to scale MATLAB to 1000s of CPU cores and GPUs. Also helps make maximum use of your laptop if that's the only hardware you have
Image Processing and Computer Vision
- Computer Vision System Toolbox
The official computer vision toolbox from MathWorks
- Image Processing Toolbox
The official Image Processing Toolbox from MathWorks
- MatConvNet
MatConvNet is a free MATLAB toolbox implementing Convolutional Neural Networks (CNNs) for computer vision applications. It is simple, efficient, and can run and learn state-of-the-art CNNs. It provides pre-trained CNNs for image classification, segmentation, face recognition, and text detection
Piotr's Image and Video Toolbox
This free toolbox facilitates the manipulation of images and video in MATLAB. Its purpose is to complement, not replace, MATLAB's Image Processing Toolbox
- VLFeat
The VLFeat free and open source library implements popular computer vision algorithms specializing in image understanding and local features extraction and matching. It is written in C for efficiency and compatibility, with interfaces in MATLAB for ease of use, and detailed documentation throughout
MexOpenCV
MATLAB MEX interface for , i.e. one of the leading libraries for computer vision
Zoning Aggregated Hypercolumns for Keyword Spotting
An image descriptor, suitable for keyword spotting, that is computed as a function of Convolutional Neural Network intermediate layer responses
Model Reduction
- drtoolbox
Matlab Toolbox for Dimensionality Reduction
- DMD Book
Dynamic Mode Decomposition Book Companion Code
- emgr
EMpirical GRamian framework for model reduction of input-output systems
- hapod
Hierarchical Approximate Proper Orthogonal Decomposition
- MOR Toolbox
Model Reduction Toolbox for MATLAB (formerly: - a MOdel REduction Toolbox)
- KerMor
Model order reduction for nonlinear dynamical systems and nonlinear approximation
- morgen
Model Order Reduction for Gas and Energy Networks
- MORLAB
Model Order Reduction Laboratory
- MORPACK
Model Order Reduction PACKage
- MESS
The Matrix Equations Sparse Solvers library, is the successor to the Lyapack Toolbox
- MRedTool
A MATLAB toolbox for model reduction of multi-dimensional systems
- Nonlinear Model Reduction Routines for MATLAB
Empirical balanced truncation toolbox
- psssMOR
A parametric sparse state-space and Model Order Reduction toolbox
- RBmatlab
A MATLAB library for model order reduction with Reduced Basis Methods
redBKIT
A MATLAB library for reduced-order modeling of parametrized PDEs
- SiMpLIfy
Structured ModeL reduction
- SLICOT
SLICOT Model and Controller Reduction Toolbox
- SMORES
A Matlab tool for Simulation and Model Order Reduction of Electrical Systems
- SOMDDPA
Second-Order Modally-Damped Dominant Pole Algorithm
sssMOR
sparse state space and Model Order Reduction toolbox
- SUMO
SUrrogate MOdelling lab
Interfacing with other languages
- C/C++ mex routines
C/C++ MEX files allow to call C/C++ functions from within MATLAB
- Fortran mex routines
Fortran MEX routines allow you to call Fortran code from within MATLAB
- MATLAB Engine for Python
The MATLAB Engine for Python provides a Python package named that enables you to call MATLAB functions from within Python
matlab kernel
To run MATLAB code inside IPython / Jupyter notebooks
- MATLink
To run MATLAB code inside Mathematica / Wolfram Language notebooks
node-matlab
To run MATLAB code inside NodeJS
- Python
How to call Python functions from within MATLAB
Interfacing with other programs
MATLAB QuickLook
QuickLook preview generator for MAT files. This shows the contents of your MAT files in Finder. The binary is only compatible with 64 bit OS X
MATLAB-git
A thin wrapper to call from within a MATLAB console
JSONlab
Toolbox to encode/decode data files from within MATLAB and Octave
Learning MATLAB
- Software Carpentry lessons in MATLAB
Teaching basic lab skills for research computing
- YAGTOM: Yet Another Guide TO MATLAB
This MATLAB® tutorial starts from the basics and builds up to advanced concepts such as object-oriented programming (Note the )
- MATLAB Academy - MATLAB Onramp
Brief MATLAB introduction including language syntax and common workflows. Free for all
- Control Tutorials for MATLAB and Simulink
This site contains quite a bit control theory, some practical applications and how to implement these in MATLAB and SimuLink
- Rosetta Code (MATLAB category)
Rosetta Code is a community comparing algorithms in different languages
Making Figures
- antijet
An alternative to the problematic "jet"-colormap
export_fig
produces better vector/bitmap graphics than standalone MATLAB®
- gramm
GRAMmar of graphics for Matlab
- hq-matlab-figs
Creating high-quality graphics in MATLAB for papers and presentations
matlab2tikz
exports MATLAB® figures to TikZ code for seamless inclusion in LaTeX documents
- matplotlib colormaps
Perceptually uniform colormaps
- plot2svg
exports MATLAB® figures to Scalable Vector Graphics format. This is particularly useful in older MATLAB® versions that don't support
- Plotly MATLAB Library
exports MATLAB® figures to the online plotting service
saveFigure
exports MATLAB® figures to PDF, SVG, EPS and PNG with improved support for transparancy
- wgPlot
A better version of gplot
- xkcdify
xkcd-style plots
Using MATLAB in other environments
- Official MATLAB Kernel for Jupyter
Blog post describing how to install and use the official MATLAB Kernel for Jupyter
MATLAB-like environments
- GNU Octave
GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It can run many MATLAB programs unmodified
- Scilab
Scilab is free and open source software for numerical computation providing a powerful computing environment for engineering and scientific applications
- MathScript
MathScript is an interpreter for MATLAB® code for the programming language
Miscellaneous Free Toolboxes
- Chebfun
Chebfun is an open-source package for computing with functions to about 15-digit accuracy
- IFISS
IFISS is a graphical package for the interactive numerical study of incompressible flow problems which can be run under MATLAB or Octave
- Wavelab
WaveLab is a collection of MATLAB functions related to wavelet analysis
- MPITB
MPI Toolbox for Matlab ( )
- Lightspeed
Microsoft Lightspeed Utilities Toolbox
- bct
Brain Connectivity Toolbox
- OpenCL Toolbox
OpenCL support for MATLAB
- UQLab
The Framework for Uncertainty Quantification
- Octave Forge
Extra packages for GNU Octave
- Matrix Computation Toolbox
For constructing test matrices, computing matrix factorizations, visualizing matrices, and carrying out direct search optimization
- GRANSO
GRadient-based Algorithm for Non-Smooth Optimization
- ROSTAPACK
RObust STAbility PACKage
Optimization
- Manopt
Free toolboxes for optimization on manifolds and matrices
Statistics
- FSDA Toolbox
FSDA (Flexible Statistics and Data Analysis) extends MATLAB and the Statistics Toolbox for the robust analysis of data sets affected by different sources of heterogeneity
Resources / Websites
- MATLAB File Exchange
File Exchange lets you find and share custom applications, classes, code examples, drivers, functions, Simulink models, scripts, and videos
- Cody
A website with programming challenges that consist of writing MATLAB® code. A fun way to improve your skills
- ThingSpeak
An internet of things (IoT) platform that allows to collect, analyze and act upon various data sources. You can enter your own MATLAB® code to process and plot your data
- Octave-Online
An online Octave interpreter
- Assorted .m-files
by H.P. Gavin
Resources / Blogs
- Cleve's Corner: Cleve Moler on Mathematics and Computing
Cleve Moler is the author of the first MATLAB, one of the founders of MathWorks, and is currently Chief Mathematician at the company
- The MATLAB Blog
Mike Croucher, a Customer Success Engineer at MathWorks, writes about MATLAB
- Developer Zone
Developing, testing, and integrating production grade software using MATLAB
- Guy and Seth on Simulink
Guy Rouleau and Seth Popinchalk are Application Engineers for MathWorks
- Steve on Image Processing
Steve Eddins has developed MATLAB and image processing capabilities for MathWorks since 1993
- Undocumented MATLAB
Yair Altman blogs about the hidden underbelly of MATLAB®. This is the place to be for discovering new and awesome features
- WalkingRandomly
The MATLAB tag of WalkingRandomly
- xcorr: comp neuro
MATLAB relevant post of XCORR
- Matlab Geeks
Matlab Blog, Tutorials and Expertise
Resources / Books
- Accelerating MATLAB Performance: 1001 tips to speed up MATLAB programs
A superb guide to making MATLAB code faster
- Data-Driven Science and Engineering: Machine Learning, Dynamical Systems and Control
This textbook brings together machine learning, engineering mathematics, and mathematical physics to integrate modeling and control of dynamical systems with modern methods in data science
- The Elements of MATLAB Style
Coding guidelines for the MATLAB language
- MATLAB for Dummies
A good beginners book
- MATLAB Guide
By Desmond and Nicholas Higham. One of the best books for learning MATLAB
- Undocumented Secrets of MATLAB-Java Programming
A great guide on MATLAB® and its Java interface (e.g. for GUIs or interaction with JVM software)
- An Introduction to MATLAB for Behavioral Researchers
Beginner book for those with no programming experience. Targeted to those in psychology/behavioural sciences and uses real experimental data in examples
Resources / Reference Cards
- MATLAB Quick Reference
by Eric Peasley, Department of Engineering Science, University of Oxford
Resources / Social Media
- MATLAB on Facebook
Official Facebook page for MATLAB
- MATLAB Reddit
MATLAB on Reddit
- MATLAB on Stack Overflow
Stack Overflow is a community of 4.7 million programmers, just like you, helping each other
- MATLAB on Twitter
Official MATLAB twitter account
- Octave on Stack Overflow
Stack Overflow has an extensive back catalogue of many answered questions
- Octave Reddit
Octave on Reddit
Resources / MOOCs
- Linear Algebra: Foundations to Frontiers
Hands-on introduction to Linear Algebra using MATLAB
Resources / Tips and Tricks
- Advanced Programming Techniques in MATLAB
Slides by Loren Shure
- Guidelines for writing clean and fast code in MATLAB
A guide with best practices in MATLAB® programming to which anybody can
- Octave and MATLAB Snippets
Collection of code snippets
knkutils
MATLAB utility functions written by Kendrick Kay
- Lanczos Algorithm for SVD
MATLAB Code
- Jie Chen's Software
Collection of companion codes (mostly MATLAB)
- SSP RK
Strong Stability Preserving Runge-Kutta Codes
- BV78
Shampine's Adaptive Block Vectorized Runge-Kutta 7-8
- MATLAB Style Guidelines 2.0
by R. Johnson
- parrun.sh
MATLAB and OCTAVE Parallel Job Script
- flamegraph
Flame graph visualization for Octave's profiler output
- mlintall
Recursive
Nothing in this list matches your filter.
Featured in 5 awesome lists
Each link jumps to the spot where the list mentions awesome-MATLAB.