Best Free Matlab Courses

Find the best online Free Matlab Courses for you. The courses are sorted based on popularity and user ratings. We do not allow paid placements in any of our rankings.

MATLAB/Simulink for the Absolute Beginner

Learn the basics of Simulink and build 3 Simulink-based Projects

Created by Dr. Ryan Ahmed, Ph.D., MBA - Professor & Best-selling Instructor, 200K+ students


Students: 26248, Price: Free

This course will cover the basic of Simulink and students will be able to create basic Simulink models and run simulations. Students will be able to develop fun, useful and practical Simulink models from scratch. 

In this course, students will be able to: 

  1. Experience a practical project-based learning experience.
  2. Students will build 3 Simulink projects.
  3. Access all the Simulink models and slides.

Get Started with MATLAB & Simulink: An Intro for Beginners

A beginner's overview to get you started. This course will introduce you to the capabilities of MATLAB and Simulink.

Created by Jordan Christman - FPGA * VHDL * MATLAB Enthusiast


Students: 25995, Price: Free

Get Started with MATLAB & Simulink: An Intro for beginners is a course that focuses on teaching students about the various commands, functions, and features that MATLAB and Simulink have to offer. MATLAB and Simulink have a lot of capabilities however, this course will only focus on the introductory topics to get you comfortable in the MATLAB environment.

Course Structure

This course is designed to teach students through a combination of articles to help explain various topics and videos to show examples of these topics. There is a quiz that is designed to test students and let them know if they sufficiently understand the basic information about MATLAB. This course starts out by covering an overview of the MATLAB environment and where specific tools are located. 


The project in this course contains the following information:

Instructions: This article explains what is required to complete the project. 

Demonstration: This lecture demonstrates what is expected of the students in terms of how to complete the project.

Step-By-Step Solution: This lecture explains the thought process and how to complete the project in a step-by-step fashion.

Feel free to message me with any questions before signing up for this course!

Learn MATLAB and SIMULINK in one week

Fast MATLAB and SIMULINK Learning

Created by Prof. Dr. Academic Educator - Prof. Dr. Academic Educator


Students: 25938, Price: Free

In this course MATLAB programming and SIMULINK is taught for beginners. Many illustrative examples are solved for quick learning.  Vectors, matrices are explained in a clear way. Other programming units such as loops and functions are included in the course contents. This course is for those people from every field who wants to learn MATLAB and SIMULINK in short time.

Particle Swarm Optimization in MATLAB

A video tutorial on PSO and its implementation in MATLAB from scratch

Created by Yarpiz Team - Academic Education and Research Group


Students: 24187, Price: Free

Particle Swarm Optimization (PSO) is an intelligent optimization algorithm based on the Swarm Intelligence. It is based on a simple mathematical model, developed by Kennedy and Eberhart in 1995, to describe the social behavior of birds and fish. The model relies mostly on the basic principles of self-organization which is used to describe the dynamics of complex systems. PSO utilizes a very simplified model of social behavior to solve the optimization problems, in a cooperative and intelligent framework. PSO is one of the most useful and famous metaheuristics and it is successfully applied to various optimization problems.

In this video tutorial, implementation of Particle Swarm Optimization (PSO) in MATLAB is discussed in detail. In the first part, theoretical foundations of PSO is briefly reviewed. Next, PSO is implemented line-by-line and from scratch, and every line of code is described in detail. The instructor of this course is Dr. S. Mostapha Kalami Heris, Control and Systems Engineering PhD and member of Yarpiz Team.

After watching this video tutorial, you will be able to know what is PSO, and how it works, and how you can use it to solve your own optimization problems. Also, you will learn how to implement PSO in MATLAB programming language. If you are familiar with other programming languages, it is easy to translate the MATLAB code and rewrite the PSO code in those languages.

MATLAB Basics for Beginners – Learn from Top Experts

Learn From Top MATLAB Experts In The Field - MATLAB Basics, Data Visualization, Conditions, Loops and much more!

Created by Tod Vachev - Best Selling Instructor 100,000+ Students, Robotics Engineer


Students: 22236, Price: Free

This course will transform you from a MATLAB Novice into a MATLAB Master. The course was developed under the strict oversight of Hristo Zhivomirov who is one of the top 50 MATLAB contributors Worldwide (search for his name in Google).   

The course is structured in a way that is suitable for both beginners and those that already have some experience with MATLAB, there is a lot of information for everyone.   

Everything in our world today can be viewed as some kind of a matrix, and I’m not talking about the Matrix Trilogy. For example

  • Measuring the temperature of a patient every 2 hours, can be represented with a one dimensional matrix, which is also called a vector  

  • Monochromatic (black and white) image is a two dimensional matrix, the values in each cell in the matrix is representing the gradation of the gray color   

  • Measuring temperature in a room for example, rooms are 3D, so we need x, y, z to describe the position at which we take our measurements, and the value is the temperature, that is a three dimensional matrix   

  • Measure now the change of that temperature over a period of time and the temperature becomes a fourth dimension

  • Now add time in the mix and you get… a fifth dimension!

Actually MATLAB has no restrictions on dimensions, you can work with 4, 5, 6 and more dimensions in a single matrix!

How to handle The Matrix: It is not necessary to look for the red pill, like Neo had to – what you actually need is MATLAB, which means MATrix LABoratory contrary to popular belief. MATLAB is a programming language of high level and interactive programming environment that lets you easily implement numeric experiments and methods, allowing you to design algorithms, analyze data and visualize that data in a very, very powerful way. 

You will learn:   

  • Variables, everything you need to know about variables in matlab, their types or lack of types, converting between different types, naming conventions, the semicolon operator and more   

  • Basic Arithmetic Operations in MATLAB, the most important thing in this section of the course are the Brackets and the Order of operations, many beginners get lost when they encounter complex expressions, and you will become a master of those

  • Right after that we are diving into deep waters starting with Vectors, you will learn how to think in vectors and perform a variety of different operations on and with vectors. Concatenating vectors, extracting or selecting subvectors, and more   

  • Matrices are next on the line, but you wont need any pills, because I have you covered, you will learn everything you need to know about working with Matrices in MATLAB and you will also learn a trick in this section that will help you optimize your code and make it run up to 100 times faster

  • Data visualization, because, well, whats the point of working with Data if you cant understand it or share it with other people, visualizing data is key in any area of work   

  • And finally we get to the actual MATLAB Programming by utilizing conditional statements, loops and functions to control the flow of your code, write less code, and make your code modular.

Each section contains a source code file at the end so that you can download and review the code that I have written in the lectures!
I hope that you will enjoy this course, as much as I did creating it, so lets dive right into it!

I welcome you to the course!

Genetic Algorithms in Python and MATLAB

A Practical and Hands-on Approach

Created by Yarpiz Team - Academic Education and Research Group


Students: 18115, Price: Free

Genetic Algorithms (GAs) are members of a general class of optimization algorithms, known as Evolutionary Algorithms (EAs), which simulate a fictional environment based on theory of evolution to deal with various types of mathematical problem, especially those related to optimization. Also Genetic Algorithms can be categorized as a subset of Metaheuristics, which are general-purpose tools and algorithms to solve optimization and unsupervised learning problems.

In this series of video tutorials, we are going to learn about Genetic Algorithms, from theory to implementation. After having a brief review of theories behind EA and GA, two main versions of genetic algorithms, namely Binary Genetic Algorithm and Real-coded Genetic Algorithm, are implemented from scratch and line-by-line, using both Python and MATLAB. This course is instructed by Dr. Mostapha Kalami Heris, who has years of practical work and active teaching in the field of computational intelligence.

Components of the genetic algorithms, such as initialization, parent selection, crossover, mutation, sorting and selection, are discussed in this tutorials, and backed by practical implementation. Theoretical concepts of these operators and components can be understood very well using this practical and hands-on approach.

At the end of this course, you will be fully familiar with concepts of evolutionary computation and will be able to implement genetic algorithms from scratch and also, utilize them to solve your own optimization problems.

Principal Component Analysis in Python and MATLAB

From Theory to Implementation

Created by Yarpiz Team - Academic Education and Research Group


Students: 11899, Price: Free

Principal Component Analysis (PCA) is an unsupervised learning algorithms and it is mainly used for dimensionality reduction, lossy data compression and feature extraction. It is the mostly used unsupervised learning algorithm in the field of Machine Learning.

In this video tutorial, after reviewing the theoretical foundations of Principal Component Analysis (PCA), this method is implemented step-by-step in Python and MATLAB. Also, PCA is performed on Iris Dataset and images of hand-written numerical digits, using Scikit-Learn (Python library for Machine Learning) and Statistics Toolbox of MATLAB. Also the projects files are available to download at the end of this post.

Learn MATLAB using Octave-online

Learn MATLAB programming without installing anything on your computer or tablet

Created by Mike X Cohen - Neuroscientist, writer, professor


Students: 9619, Price: Free

Do you need to learn MATLAB but don't have a license? Is your computer too space-limited to install >2GB programs? Then this course might be right for you. You will learn how to use Octave-online as a tool for learning the MATLAB programming language. Best part? You don't need to download or install anything! All you need is a browser and an internet connection.

Note that this is not a course on programming; this is a course on using an online tool that will help you learn MATLAB programming.

Matlab in 30 Minutes!

Learn programming in Matlab in just 30 minutes!

Created by Andrej Lerch - Engineer for Numerical Simulation


Students: 7716, Price: Free

In this course you are going to learn programming in Matlab in just 30 minutes in a express way education. I am adressing engineering students who are new to Matlab and want a quick but also profound introduction to Matlab in order to be able to code their own programs and routines and solve numerical problems.

You should know the basics of mathematics. Programming skills are not required. However, it would be an advantage if you would have coded in any programming language once in your life.


  • basic knowledge in mathematics
  • basic experience in programming (optional)
  • a matlab installation

Starting from basic arithmetic and relational operators we will proceed with creating, manipulating and working with matrices and vectors. You will learn how to write your own functions and how to visualize data in plots.


  • performing arithmetic operations
  • working with matrices and vectors
  • writing functions
  • understanding of control structures and looping routines
  • visualizing data

Numerical Computations in MATLAB

Including Root Finding, Linear Algebra, Curve Fitting, Numerical Integration, Differential Equations and Optimization

Created by Yarpiz Team - Academic Education and Research Group


Students: 6206, Price: Free

In this course, the built-in capabilities of MATLAB are used to perform numerical computations, which are very useful in enormous fields of applied science and engineering, including:

  • Root finding and equation solving

  • Solving system of equations

  • Eigenvalues, eigenvectors and eigendecomposition

  • Singular Value Decomposition

  • Interpolation, curve fitting and surface modeling

  • Numerical integration and differentiation

  • Working with polynomials

  • Solving Ordinary Differential Equations (ODEs)

  • Solving Boundary Value Problems (BVPs)

  • Solving Delayed Differential Equations (DDEs)

  • Linear Programming (LP)

  • Mixed-Integer Linear Programming (MILP)

  • Quadratic Programming (QP)

  • Constrained and unconstrained nonlinear optimization

Runge-Kutta Method in Python and MATLAB

From theory to implementation

Created by Yarpiz Team - Academic Education and Research Group


Students: 5382, Price: Free

In this video tutorial, the theory of Runge-Kutta Method (RK4) for numerical solution of ordinary differential equations (ODEs), is discussed and then implemented using MATLAB and Python from scratch. As an example, the well-know Lotka-Volterra model (aka. the Predator-Prey model) is numerically simulated and solved using Runge-Kutta 4th order (RK4), in both languages, Python and MATLAB.

Numerical Root Finding in Python and MATLAB

A Hands-on Approach

Created by Yarpiz Team - Academic Education and Research Group


Students: 5140, Price: Free

This series of video tutorials covers the numerical methods for Root Finding (Solving Algebraic Equations) from theory to implementation. In this course, three methods are reviewed and implemented using Python and MATLAB from scratch.

At first, two interval-based methods, namely Bisection method and Secant method, are reviewed and implemented. Then, a point-based method which is known as Newton's method for root finding, a.k.a. Newton–Raphson method, is reviewed and implemented. This course is instructed by Dr. Mostapha Kalami Heris, who has years of practical work and active teaching in the field of programming, mathematics, control engineering and computational intelligence.

By the end of this course you will be able to know about the fundamental theory of this root finding methods and implementing them using Python and MATLAB programming languages.

Statistics with MATLAB

Statistics with MATLAB (Please don't give rank to the lecture before all the lectures are uploaded)

Created by Prof. Dr. Academic Educator - Prof. Dr. Academic Educator


Students: 4819, Price: Free

In this course, statistic subjects will be covered using MATLAB. We will start with the explanation of vectors, matrices and cells, then proceed with the tables which is an important subject in statistics. Density functions and cumulative distribution functions will be explained. Histograms and boxplots use in MATLAB will be explained by examples. We will consider Hypothesis tests using MATLAB functions ztest, ttest, vartest. Analysis of variance, and multivariate analysis of variance will be studied using MATLAB. Linear and non-linear regression models will be covered. Generation of random data for definite densities and simulation using random data is the last topic to be covered in this course.

Electromagnetic Tutorials part 1 with MATLAB & GeoGebra

Vector algebra with MATLAB

Created by Husain Habib - Electronic Engineer Graduate


Students: 4519, Price: Free

Electromagnetic tutorial to learn how to use mathematical skills for solving Electromagnetic problems from Coulomb's Law to Maxwell's equations , 

this is the first course out of 9 Parts, ( all from sadiku book: elements of electromagnetic)

CH 1: Vector Algebra

CH 2: Coordinate Systems and Transformations

CH 3: Vector Calculus

CH 4: Electro Static Fields

CH 5: Electric Fields in Material Space

CH 6: Electro Static Boundary-Value Problems

CH 7: Magneto Static Fields

CH 8: Magnetic Forces Materials and Devices

CH 9: Maxwell’s Equations 

Linear Programming in MATLAB

With Solution to Transportation Problem

Created by Yarpiz Team - Academic Education and Research Group


Students: 4233, Price: Free

In this video tutorial, the general structure of a Linear Programming (LP) model is reviewed and the general matrix form of LP problems, used by MATLAB, discussed. Then, using linprog function of MATLAB, which is used to deal with linear programming problems, some examples are solved. One of the well-known problems formulated as LP model is the Transportation Problem, which is a simple two-layered supply chain model. In this video tutorial, the general form of Transportation Model is discussed and its solution using MATLAB is implemented step-by-step, with a functional approach.

Matlab Basics for Mechanical engineers

Matlab for Mechanical Engineers

Created by Mani Kumar - Senior Analyst


Students: 2758, Price: Free

Numerical methods are used  for solving complex Mechanical problems.

In this course Matlab Scripting is used to solve the Mechanical Problems.

You will learn How to write Matlab Scripting

You will learn how Matlab Scripting used for solving numerical problems and results Visualization

At the end of the course you will gain some knowledge on how this scripting will be helpful for Mechanical & Aerospace Engineering Applications

Optimization algorithm using matlab

A video tutorial on Firefly Optimization Algorithm and its implementation in MATLAB from scratch

Created by AmirHossein Zaji - Water and wastewater research center, Razi University


Students: 2527, Price: Free

I’m very glad to have opportunity to teach you one of the most popular and powerful optimization algorithms in this course.

If you search FireFly optimization algorithm in google scholar, it could be seen that there are many vast range of papers has been published by implementing this optimization algorithm in different fields of science.

In this course, after presenting the mathematical concept of each part of the considered optimization algorithm, I write its code immediately in matlab.

All of the written codes are available, however, I strongly suggest to write the codes with me. Notice that, if you don’t have matlab or you know another programming language, don’t worry at all. You can simply write the codes in your own programming language because the behind concepts about all of the written codes are presented completely.

We have a lot to cover in this course, so, let’s start it.

MATLAB Plotting Techniques

From Basic to Advanced

Created by Dr. Cong Tien Nguyen - PhD in Naval Architecture and Marine Engineering


Students: 606, Price: Free

This free course will show you techniques to make high quality plots using MATLAB. Even without any knowledge and coding skills, you can finish this is short course within 1 day and start making high quality figures for your work and study. You will learn how to make:

  • High quality 2D, 3D line plots.

  • High quality 2D, 3D scatter plots.

  • High quality 2D, 3D surface/contour plots.

  • Export high quality (600 dpi) figures for your journal/conference papers and reports.

  • Special techniques for formatting axis, axis labels, font type, font size, etc are also provided

  • Advanced (ready for use) functions for scatter plots, surface/contour plots are discussed and provided for personal use.

  • Special colormap (different with MATLAB colormap library) to make fancy plots are also provided.

  • Source codes including all plotting functions will be provided for your personal use.

  • Useful documents such as lecture notes will also be provided.

This course is highly recommended for students and engineers who need to make figures for their reports/papers/thesis during their work. People who are interested in FEA and CFD studies are also recommended to attend this free short course. During the course, plots that are highly related FEA/CFD problems are also presented.

Please feel free to contact me for more information about plotting techniques in MATLAB and my FEA courses.

Implementation of various modulation techniques using MATLAB

Learn analog and digital modulation techniques implementation using MATLAB

Created by Puja patil - E&TC Engineer


Students: 259, Price: Free

This course is basically designed to demonstrate students how to use MATLAB in implementing different analog and digital modulation techniques used in communication. The course begin with introduction to electronics communication different concepts related to communication is explained along with the block diagram of analog and digital communication .There is discussion on types of communications systems - Analog communication and Digital communication. Different types of analog modulation-Amplitude modulation and frequency modulation and digital modulation techniques-amplitude shift keying, frequency shift keying and binary phase shift keying is explained in detailed .There is short introduction of MATLAB discussing different windows present in MATLAB, basic function used in MATLAB and how to write code in MATLAB. The MATLAB code for amplitude modulation and frequency modulation from Analog modulation and frequency shift keying and binary phase shift keying from digital communication is explained. Finally there is implementation of all this modulation techniques on MATLAB and verification of output waveforms for the same. For Amplitude modulation we are generating waveforms for modulation index greater than one and less than one condition. After completion of this course students get knowledge of different modulation techniques used for analog and digital communication and also able to implement them on MATLAB.

Design of FIR filter using Windowing Technique in MATLAB

Implement FIR filter using MATLAB

Created by Sanjivani Munot - Associate Professor


Students: 202, Price: Free

Welcome to the course, "Finite Impulse Response(FIR) Filter Design using windowing In MATLAB ".

Hello students, I am Mrs. Sanjivani P.  Munot , Working as an Associate Professor in Electronics and Telecommunication department. 

I have taught this subject many times before , I have done various experiments while teaching this subject.

This course is very useful for those who wish to get excellence in digital signal processing.

In this course we are going to study following points

Definition of FIR and IIR filter

Advantages and disadvantages of FIR filter

Linear phase FIR filter

Impulse response of filter

Zeros of filter

Gibbs Phenomenon

Windowing techniques


Summary of windows

MATLAB programming

After completion of this course learner will be able to:-

Understand the properties of FIR filter.

Acquire knowledge related how to achieve linear phase response.

Describe frequency response of linear phase FIR filters for different cases.

Explain about the locations of zeros.

Design FIR filter using different windows.

Summaries on window selection.

Implement FIR filters using window techniques

Analyze the performance of FIR filter by using MATLAB

This course is useful in various areas such as signal processing, speech processing, Image processing, Digital communication and Biomedical applications ,Military application, Instrumentation and Control, Seismology , consumer electronics.

I am sure that after completing this course you can implement different types of FIR filter using MATLAB.

Digital signal processors have grater accuracy, cheapest , ease of data storage, Implementation of sophisticated algorithms,Flexibility in configuration, applicability of VLF signals