MATLAB Tutorials

Signals and Systems Using MATLAB


The material in this textbook is intended for courses in signals and systems at the junior level in electrical and computer engineering, but it could also be used in teaching this material to mechanical engineering and bioengineering students and it might be of interest to students in applied mathematics. The “student-friendly” nature of the text also makes it useful to practicing engineers interested in learning or reviewing the basic principles of signals and systems on their own. The material is organized so that students not only get a solid understanding of the theory—through analytic examples as well as software examples using MATLAB—and learn about applications, but also develop confidence and proficiency in the material by working on problems.

The organization of the material in the book follows the assumption that the student has been exposed to the theory of linear circuits, differential equations, and linear algebra, and that this material will be followed by
courses in control, communications, or digital signal processing. The content is guided by the goal of nurturing the interest of students in applications, and of assisting them in becoming more sophisticated mathematically.
In teaching signals and systems, the author has found that students typically lack basic skills in manipulating complex variables, in understanding differential equations, and are not yet comfortable with basic concepts in calculus. Introducing discrete-time signals and systems makes students face new concepts that were not explored
in their calculus courses, such as summations, finite differences, and difference equations. This text attempts to fill the gap and nurture interest in the mathematical tools

Take Course

MATLAB Tutorials Udemy Courses

Optimization Using Pattern Search Method – MATLAB Programming

A Quick Way to Learn and Solve Optimization Problems in MATLAB. A Course for Beginners.

What you’ll learn
  • Running direct search optimization problems in MATLAB
  • Specifying objective functions
  • Specifying constraints
  • Vectorizing objective function and constraints
  • Obtaining local and global optima
  • Parallel computing
  • MATLAB installed in your laptop/desktop computer

This course introduces applied direct search optimization in the MATLAB environment, focusing on using Global Optimization Toolbox. Various kinds of optimization problems are solved in this course. At the end of this course, you will be able to solve the optimization problems using the MATLAB. The complete MATLAB programs included in the class are also available for download.  Happy learning.

NB: This course is designed most straightforwardly to utilize your time wisely.

Who this course is for:
  • Anyone who is interested to solve optimization problems.
  • Researchers who want to publish ISI papers in this field.
  • Students who are working on optimization problems.

Take Course

MATLAB Tutorials Udemy Courses

MATLAB: Optimization Problems And Algorithms

What you’ll learn
  • Identify, understand, formulate, and solve optimization problems
  • Understand the concepts of stochastic optimization algorithms
  • Analyse and adapt modern optimization algorithms
  • You should have basic knowledge of programming
  • You should be familiar with Matlab’s built-in programming language

This is an introductory course to the stochastic optimization problems and algorithms as the basics sub-fields in Artificial Intelligence. We will cover the most fundamental concepts in the field of optimization including metaheuristics and swarm intelligence. By the end of this course, you will be able to identify and implement the main components of an optimization problem. Optimization problems are different, yet there have mostly similar challenges and difficulties such as constraints, multiple objectives, discrete variables, and noises. This course will show you how to tackle each of these difficulties. Most of the lectures come with coding videos. In such videos, the step-by-step process of implementing the optimization algorithms or problems are presented. We have also a number of quizzes and exercises to practice the theoretical knowledge covered in the lectures.

Here is the list of topics covered:

  • History of optimization
  • Optimization problems
  • Single-objective optimization algorithms
  • Particle Swarm Optimization 
  • Optimization of problems with constraints 
  • Optimization of problems with binary and/or discrete variables 
  • Optimization of problems with multiple objectives
  • Optimization of problems with uncertainties 

Particle Swarm Optimization will be the main algorithm, which is a search method that can be easily applied to different applications including Machine Learning, Data Science, Neural Networks, and Deep Learning.

I am proud of 200+ 5-star reviews. Some of the reviews are as follows:

David said: “This course is one of the best online course I have ever taken. The instructor did an excellent job to very carefully prepare the contents, slides, videos, and explains the complicated code in a very careful way. Hope the instructor can develop much more courses to enrich the society. Thanks!”

Khaled said: “Dr. Seyedali is one of the greatest instructor that i had the privilege to take a course with. The course was direct to the point and the lessons are easy to understand and comprehensive. He is very helpful during and out of the course. i truly recommend this course to all who would like to learn optimization\PSO or those who would like to sharpen their understanding in optimization. best of luck to all and THANK YOU Dr. Seyedali.”

Biswajit said: “This coursework has really been very helpful for me as I have to frequently deal with optimization. The most prominent feature of the course is the emphasis given on coding and visualization of results. Further, the support provided by Dr. Seyedali through personal interaction is top notch.

Boumaza said:  “Good Course from Dr. Seyedali Mirjalili. It gives us clear picture of the algorithms used in optimization. It covers technical as well as practical aspects of optimization. Step by step and very practical approach to optimization through well though and properly explained topics, highly recommended course You really help me a lot. I hope, someday, I will be one of the players in this exciting field! Thanks to Dr. Seyedali Mirjalili.”

Join 1000+ students and start your optimization journey with us. If you are in any way not satisfied, for any reason, you can get a full refund from Udemy within 30 days. No questions asked. But I am confident you won’t need to. I stand behind this course 100% and am committed to help you along the way.

Who this course is for:
  • Anyone who wants to learn optimization
  • Anyone who wants to solve an optimization problem

Take Course

MATLAB Tutorials

Digital Signal & Image Processing using MATLAB


Simulation is an essential tool in any field related to engineering techniques, whether it is used for teaching purposes or in research and development. When teaching technical subjects, lab works play an important role, as important as exercise sessions in helping students assimilate theory. The recent introduction of simulation tools has created a new way to work, halfway between exercise sessions and lab works. This is particularly the case for digital signal processing, for which the use of the MATLAB® language, or its clones, has become inevitable. Easy to learn and to use, it makes it possible to quickly illustrate a concept after introducing it in a course. As for research and development, obtaining and displaying results often means using simulation programs based on a precise “experimental protocol”, as it would be done for actual experiments in chemistry or physics. These characteristics have led us, in a first step, to try to build a set of exercises with solutions relying for the most part on simulation; we then attempted to design an introductory course on Digital Signal and Image Processing (DSIP) mostly based on such exercises. Although this solution cannot replace the traditional combination of lectures and lab works, we do wonder if it isn’t just as effective when associated with exercise sessions and a few lectures. There is of course no end in sight to the debate on educational methods, and the amount of experiments being conducted in universities and engineering schools shows the tremendous diversity of ideas in the matter.

Basic concepts of DSIP

The recent technical evolutions, along with their successions of technological feats and price drops have allowed systems based on micro-controllers and microprocessors to dominate the field of signal and image processing, at the expense of analog processing. Reduced to its simplest form, signal processing amounts to manipulating data gathered by sampling analog signals. Digital Signal and Image Processing, or DSIP, can therefore be defined as the art of working with sequences of numbers.

The sampling theorem

The sampling theorem is usually the first element found in a DSIP course, because it justifies the operation by which a continuous time signal is replaced by a discrete sequence of values. It states that a signal can be perfectly reconstructed from the sequence of its samples if the sampling frequency is greater than a fundamental limit called the Nyquist frequency. If this is not the case, it results in an undesired effect called spectrum aliasing.

An introduction to images

Image processing is described in its own separate chapter. Many of the concepts used in signal processing are also used in image processing. However images have particular characteristics that require specific processing. The computation time is usually much longer for images than it is for signals. It is nevertheless possible to conduct image processing with MATLAB®. This theme will be discussed using examples on 2D filtering, contour detection, and other types of processing in cases where the 2D nature of the images does not make them too different from a ID signal. This chapter will also be the opportunity to discuss image compression and entropic coding.

Take Course

MATLAB Tutorials Udemy Courses

Numerical Root Finding in Python and MATLAB

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.

MATLAB Tutorials Udemy Courses

Statistics with MATLAB

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.

MATLAB Tutorials

MATLAB Deep Learning With Machine Learning, Neural Networks and Artificial Intelligence – 2020

Organization of the Book

This book consists of six chapters, which can be grouped into three subjects. The first subject is Machine Learning and takes place in Chapter 1. Deep Learning stems from Machine Learning. This implies that if you want to understand the essence of Deep Learning, you have to know the philosophy behind Machine Learning to some extent. Chapter 1 starts with the relationship between Machine Learning and Deep Learning, followed by problem solving strategies and fundamental limitations of Machine Learning. The detailed techniques are not introduced in this chapter. Instead, fundamental concepts that apply to both the neural network and Deep Learning will be covered.

The second subject is the artificial neural network.1 Chapters 2-4 focus on this subject. As Deep Learning is a type of Machine Learning that employs a neural network, the neural network is inseparable from Deep Learning. Chapter 2 starts with the fundamentals of the neural network: principles of its operation, architecture, and learning rules. It also provides the reason that the simple single-layer architecture evolved to the complex multi-layer architecture. Chapter 3 presents the back-propagation algorithm, which is an important and representative learning rule of the neural network and also employed in Deep Learning. This chapter explains how cost functions and learning rules are related and which cost functions are widely employed in Deep Learning.

Chapter 4 explains how to apply the neural network to classification problems. We have allocated a separate section for classification because it is currently the most prevailing application of Machine Learning. For example, image recognition, one of the primary applications of Deep Learning, is a classification problem.

The third topic is Deep Learning. It is the main topic of this book. Deep Learning is covered in Chapters 5 and 6. Chapter 5 introduces the drivers that enable Deep Learning to yield excellent performance. For a better understanding, it starts with the history of barriers and solutions of Deep Learning. Chapter 6 covers the convolution neural network, which is representative of Deep Learning techniques. The convolution neural network is second to none in terms of image recognition. This chapter starts with an introduction of the basic concept and architecture of the convolution neural network as it compares with the previous image recognition algorithms. It is followed by an explanation of the roles and operations of the convolution layer and pooling layer, which act as essential components of the convolution neural network. The chapter concludes with an example of digit image recognition using the convolution neural network and investigates the evolution of the image throughout the layers.


Development IT & Software MATLAB Tutorials

Robotics, Vision and Control: Fundamental Algorithms In MATLAB® Second Edition


Robotic vision, the combination of robotics and computer vision, involves the application of computer algorithms to data acquired from sensors. The research community has developed a large body of such algorithms but for a newcomer to the field this can be quite daunting. For over 20 years the author has maintained two open-source MATLAB® Toolboxes, one for robotics and one for vision. They provide implementations of many important algorithms and allow users to work with real problems, not just trivial examples. This book makes the fundamental algorithms of robotics, vision and control accessible to all. It weaves together theory, algorithms and examples in a narrative that covers robotics and computer vision separately and together. Using the latest versions of the Toolboxes the author shows how complex problems can be decomposed and solved using just a few simple lines of code. The topics covered are guided by real problems observed by the author over many years as a practitioner of both robotics and computer vision. It is written in an accessible but informative style, easy to read and absorb, and includes over 1000 MATLAB and Simulink® examples and over 400 figures. The book is a real walk through the fundamentals of mobile robots, arm robots. then camera models, image processing, feature extraction and multi-view geometry and finally bringing it all together with an extensive discussion of visual servo systems. This second edition is completely revised, updated and extended with coverage of Lie groups, matrix exponentials and twists; inertial navigation; differential drive robots; lattice planners; pose-graph SLAM and map making; restructured material on arm-robot kinematics and dynamics; series-elastic actuators and operational-space control; Lab color spaces; light field cameras; structured light, bundle adjustment and visual odometry; and photometric visual servoing.

Development IT & Software MATLAB Tutorials

Essential MATLAB for Engineers and Scientists


Essential MATLAB for Engineers and Scientists, Sixth Edition, provides a concise, balanced overview of MATLAB’s functionality, covering both fundamentals and applications. The essentials are illustrated throughout, featuring complete coverage of the software’s windows and menus. Program design and algorithm development are presented, along with many examples from a wide range of familiar scientific and engineering areas. This edition has been updated to include the latest MATLAB versions through 2018b. This is an ideal book for a first course on MATLAB, but is also ideal for an engineering problem-solving course using MATLAB.

Key Features

  • Updated to include all the newer features through MATLAB R2018b
  • Includes new chapter on useful toolboxes
  • Provides additional examples on engineering applications


Undergraduates in engineering and science courses that use Matlab. First time users of Matlab. Any engineer or scientist needing an introduction to MATLAB

MATLAB Tutorials

Numerical Methods in Engineering With MATLAB By Cambridge

Numerical Methods in Engineering with MATLAB®


What you’ll learn

Numerical Methods in Engineering with MATLAB ® is a text for engineer-
ing students and a reference for practicing engineers, especially those

who wish to explore the power and efficiency of MATLAB. The choice of

numerical methods was based on their relevance to engineering prob-
lems. Every method is discussed thoroughly and illustrated with prob-
lems involving both hand computation and programming. MATLAB

M-files accompany each method and are available on the book web

site. This code is made simple and easy to understand by avoiding com-
plex book-keeping schemes, while maintaining the essential features of

the method. MATLAB, was chosen as the example language because of
its ubiquitous use in engineering studies and practice. Moreover, it is

widely available to students on school networks and through inexpen-
sive educational versions. MATLAB a popular tool for teaching scientific

Jaan Kiusalaas is a Professor Emeritus in the Department of Engineering
Science and Mechanics at the Pennsylvania State University. He has

taught numerical methods, including finite element and boundary el-
ement methods for over 30 years. He is also the co-author of four

other Books—Engineering Mechanics: Statics, Engineering Mechanics:
Dynamics, Mechanics of Materials, and an alternate version of this work
with Python code.


  • We cover everything from scratch and therefore do not require any prior knowledge of MATLAB
  • The installation of MATLAB software on your machine is a must for this course so that you are able to run the commands and scripts that we cover during the course. If you do not have the MATLAB software installed than you may consider the following options
  • 1. You may download a free trail copy of the software from the MATHWORK website. This is for limited time use
  • 2. If you are student or employee, you may contact your School or employer for a free copy. Many universities offer a free student version of the software
  • 3. You may consider downloading the Octave which is a free and has nearly identical functionality as that of MATLAB. (I would not recommend this option since you may not be able to have access to all the functions that we cover in this course)
  • 4. If none of the above works for you, then you may purchase the student version directly from Mathworks website which is significantly lower in cost compare to its full version

Table of Contents

  1. Introduction to MATLAB………………………. . 1
  2. Systems of Linear Algebraic Equations ………… . 28
  3. Interpolation and Curve Fitting ……………….. . 103
  4. Roots of Equations……………………………. .143
  5. Numerical Differentiation …………………….. . 182
  6. Numerical Integration ………………………… . 200
  7. Initial Value Problems ………………………… . 251
  8. Two-Point Boundary Value Problems ………….. . 297
  9. Symmetric Matrix Eigenvalue Problems ……….. . 326
  10. Introduction to Optimization …………………. . 382

This course is designed from a perspective of a student who has no prior knowledge of MATLAB. The course starts from the very basic concepts and then built on top of those basic concepts and move towards more advanced topics such as visualization, exporting and importing of data, advance data types and data structures and advance programming constructs.

To get the real feel of MATLAB in solving and analyzing real life problems, the course includes machine learning topics in data science and data preprocessing.

The course is fun and exciting, but at the same time we dive deep into MATLAB to uncover its power of formulating and analyzing real life problems. The course is structured into four different Parts. Below is the detailed outline of this course.

  • Anyone looking to build a strong career in science or engineering through Excellent MATLAB coding skills
  • Anyone wanting to advance their skills of real world problem solving with MATLAB based scientific computing

Size: 10.06 MB