Skip to main content
main-content
Top

About this book

Employ essential and hands-on tools and functions of the MATLAB and Simulink packages, which are explained and demonstrated via interactive examples and case studies. This book contains dozens of simulation models and solved problems via m-files/scripts and Simulink models which help you to learn programming and modeling essentials. You’ll become efficient with many of the built-in tools and functions of MATLAB/Simulink while solving engineering and scientific computing problems.
Beginning MATLAB and Simulink explains various practical issues of programming and modelling in parallel by comparing MATLAB and Simulink. After reading and using this book, you'll be proficient at using MATLAB and applying the source code from the book's examples as templates for your own projects in data science or engineering.
What You Will LearnGet started using MATLAB and SimulinkCarry out data visualization with MATLABGain the programming and modeling essentials of MATLABBuild a GUI with MATLABWork with integration and numerical root finding methodsApply MATLAB to differential equations-based models and simulationsUse MATLAB for data science projects
Who This Book Is For
Engineers, programmers, data scientists, and students majoring in engineering and scientific computing.

Table of Contents

Chapter 1. Introduction to MATLAB

Abstract
The MATLAB package is employed in wide ranges of engineering and scientific computing applications and is associated with the dynamic system simulation package called Simulink. The package has a few advantages and remarkable strengths, such as user-friendly and intuitive programming syntax, high-quality numerical algorithms for various numerical analyses, powerful and easy-to-use graphics, simple command syntax to perform computations, and many add-ons as toolboxes and real and complex vectors and matrices, including sparse matrices as fundamental data types.
Sulaymon Eshkabilov

Chapter 2. Programming Essentials

Abstract
This chapter covers the most essential and widely used programming tools, operators, and control statements in MATLAB, modeling essentials in Simulink, graphical user interface development and its tools, and the development of MATLAB executable files and standalone applications.
Sulaymon Eshkabilov

Chapter 3. Graphical User Interface Model Development

Abstract
MATLAB has a number of graphical user interface (GUI) tools and functions that can be employed while building GUI models, either by using the GUI tools or by writing scripts. In this chapter, we cover how to build GUI models with the GUI development environment (GUIDE) and how to write scripts to generate popup and dialog boxes.
Sulaymon Eshkabilov

Chapter 4. MEX Files, C/C++, and Standalone Applications

Abstract
MEX stands for MATLAB executable and it’s a way to call custom C, C++, or FORTRAN routines/code directly from MATLAB, thereby treating them as if they were MATLAB built-in functions. Since MATLAB is compatible with several programming languages, including C/C++, FORTRAN, C#, and Java, the MEX files can be called exactly like M-files or M-functions within the MATLAB environment. It is also possible to create standalone applications in MATLAB as self-executable files.
Sulaymon Eshkabilov

Chapter 5. Simulink Modeling Essentials

Abstract
Simulink is the graphical programming package that works in association with MATLAB and interacts as one combined package. It is employed for modeling, simulating, and analyzing dynamic systems, control algorithm development, and so forth. It supports linear and non-linear systems, continuous and discrete systems, and multi-rate systems. With Simulink, you can model myriad types of systems, processes, and problems, and you can use top-down and bottom-up approaches.
Sulaymon Eshkabilov

Chapter 6. Plots and Data Visualization

Abstract
The MATLAB package has numerous built-in functions used to visualize numerical data via plot, graphs, charts, and animations. There are two-dimensional (2D) and three-dimensional (3D) plots, charts, maps, etc. In addition, some of the MATLAB toolboxes have specific plot and visualization functions. Building plot figures is very straightforward and can be done in two different ways, one of which is using commands and writing scripts and the other is using GUI tools. In this chapter, we discuss and demonstrate some of the most essential tools and techniques used to build line, bar, pie, surface, mesh plots, graphs, and animated plots via examples.
Sulaymon Eshkabilov

Chapter 7. Linear Algebra

Abstract
This chapter includes a short introduction to linear algebra. It discusses some of the essential approaches to solving systems of linear equations, as well as various matrix operations (matrix inverse, determinant, sum, subtraction, division, multiplication, power, exponential, elementwise and array-wise operations, and so forth). It covers eigen-value problems and matrix factorizations/decompositions, such as Cholesky, Schur, LU, QR, and Singular Value Decomposition. It also includes built-in functions and scripts in MATLAB and Simulink models. Moreover, the chapter explains standard matrix generator functions of MATLAB, creating vector spaces, solving polynomials, and logical indexing of matrices, via examples in MATLAB and Simulink.
Sulaymon Eshkabilov

Chapter 8. Ordinary Differential Equations

Abstract
Many modeling problems with engineering applications can be formulated using ordinary differential equations (ODEs). There are a few different definitions of differential equations. One of the simplest is “A differential equation is any equation which contains derivatives, either ordinary derivatives or partial derivatives,” as given in source [1]. From this definition, we can derive two types of differential equations—ordinary differential equations (ODEs) and partial differential equations (PDEs). ODEs contain one type of derivative or one independent variable and PDEs, on the contrary, contain two or more derivatives or independent variables. For example, first order ODEs can be expressed by:
Sulaymon Eshkabilov
Additional information