0% found this document useful (0 votes)
4 views

Principles of MATLAB Programming slides

The document titled 'Principles of Programming' by Soroush Mirmobini provides an introduction to computer programming, covering topics such as algorithms, flowcharts, and the MATLAB environment. It includes detailed sections on data types, programming languages, and mathematical functions, as well as arrays and linear algebra. The document serves as a comprehensive guide for understanding programming principles and MATLAB functionalities.

Uploaded by

sepideeh
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Principles of MATLAB Programming slides

The document titled 'Principles of Programming' by Soroush Mirmobini provides an introduction to computer programming, covering topics such as algorithms, flowcharts, and the MATLAB environment. It includes detailed sections on data types, programming languages, and mathematical functions, as well as arrays and linear algebra. The document serves as a comprehensive guide for understanding programming principles and MATLAB functionalities.

Uploaded by

sepideeh
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 102

Principles of Programming

Soroush Mirmobini
December 2024
Channel Contact

https://t.me/soroushmirmobini

[email protected]
https://t.me/sm_bme
Reference

https://www.elsevier.com/books-and-journals/book-companion/9780323857734
Table of Contents

Introduction to Arrays &


Start Preface
MATLAB Linear Algebra

Control
Text and Files Visualization Functions
Structures

Solving Supplementary
Statistics End
Equations Topics
1. Introduction to
“Computer Programming”

5
1. Preface

• Introduction to Computer Programming

• Program Designing (Algorithm & Flowchart)

• MATLAB Environment

1. Preface 6
Introduction to Computer Programming

• What Is a Computer?

• History of Computer

• Computing Logic (0/1)

1. Preface 7
Decimal Binary Octal Hexadecimal
Number Bases (Base 10) (Base 2) (Base 8) (Base 16)
0 0000 0 0
1 0001 1 1
2 0010 2 2
3 0011 3 3
4 0100 4 4
5 0101 5 5
6 0110 6 6
7 0111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
17 10001 21 11

8
1. Preface
Base 2
Boolean Operators
0/1
Table 1: “Not” Truth Table
A Buffer Not A ( ~ )

https://www.gsnetwork.com/digital-logic-gates /
0 0 1
• Buffer/Not
1 1 0

Table 2: “And”, “Or” and, “X-or” Truth Table


• And/Nand A B A and B (&) A Nand B A or B ( | ) A Nor B A X-or B A X-Nor B

0 0 0 1 0 1 0 1

• Or/Nor 0 1 0 1 1 0 1 0

1 0 0 1 1 0 1 0

• X-Or/X-Nor 1 1 1 0 1 0 0 1

1. Preface 9
Introduction to Computer Programming

Write
Fetch Decode Execute
Back

1. Preface 10
1. Preface 11
Introduction to Computer Programming

Syntaxes • Machine Language


Or • Low Level Languages
How Do We Write The code? • High Level Languages

How Do Computers Run The • Interpreted Languages


Written Code? • Compiled Languages

• Procedural Programming Languages


• Functional Programming Languages
5 Types of Programming
• Object Oriented Programming (OOP) Languages
Languages
• Scripting Programming Languages
• Logic Programming Languages

• Back-End/Front-End/Full-Stack Developers
• Web Developers
Programmers
• Game Developers
• Embedded System Programmers

1. Preface 12
Start
Start

Program Designing Algorithm


Input(s)
Some
Input(s)
Processes
0. Start

https://madhusona.github.io/GE8151/Unit-I/5-Flowchart
1. Definitions
• Algorithm
Some
Processes
2. Command 1 Output(s)
Condition(s) 1
3. Command 2
Output(s)
Condition(s)
. 1

• Flowchart .
Some Output(s)
. Some
Processes 2
Processes
n-1. command n-1
n. End
• Pseudo-code Output(s)
2
End

End

1. Preface 13
1. Preface 14
MATLAB Environment

• Workspace

• Command Window
• Command History
• Directories and Paths
• Home, Apps, Plots
• Editor, Publish, View
• Preferences

1. Preface 15
1. GitHub
2. Stack Overflow
3. Geeks for Geeks
4. Research Gate (Questions)
5. Linkedin
6. Reddit
7. Quora
8. … 1. Preface 16
2. Introduction
to
MATLAB
17
2. Introduction to MATLAB

• Variables
• Semicolon (;)
• Data Types and Data Precisions
• Converting Between Data Types
• Mathematical Operators and Functions
• Trigonometric & Hyperbolic Functions
• Scripts

2. Introduction to MATLAB 18
Variables
Naming Rules
• Case Sensitivity
• Signs
• Numbers
• Space

MATLAB Built-In Variables


• ans
• pi, eps, e
• i, j
• NaN, inf
• true, false

2. Introduction to MATLAB 19
;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; Semicolon ;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;
2. Introduction to MATLAB 20
Uni-Type
0/1 (Numerical) Multi-Type
(true/false) Text Array Arrays

2. Introduction to MATLAB 21
Data Types and Data Precision
Numerical Data

• Boolean (Logical): 0/1 or true/false


• Floating Points: single/double - realmin, realmax
• Integers: int8 … int64/uint8 … uint64 - intmin, intmax

Text Data

• Characters (char)
• Strings (str)

Functions

• whos, exist, class, range


• isempty, isequal, isnan, isinf, ischar,…, Isa

2. Introduction to MATLAB 22
Converting between Data Types
• char()

• double()

• single()

• int8() … int64()

• uint8() … uint64()

• logical()

• num2str, str2double, int2str

2. Introduction to MATLAB 23
Operators

Arithmetic
Operators + - * / ^ \

Logical
Operators & && | || ~

Conditioning
(Comparing) == ~= > >= < <=
Operators

2. Introduction to MATLAB 24
https://www.mathworks.com/help/matlab/matlab_prog/operator-precedence.html
25
2. Introduction to MATLAB
MATLAB Operator Precedence
Mathematical Functions
Function Description
round (x) Round to the nearest integer
ceil (x) Round to the nearest integer toward “+ꚙ”
floor (x) Round to the nearest integer toward “-ꚙ”
fix (x) Round to the nearest integer toward “0”
mod (a,b) Remainder after division M = a-b*floor(a/b)
rem (a,b) Remainder after division M = a-b*fix(a/b)
․ log (x) ․ ln 𝑥
․ log10 (x) ․ log 𝑥
abs (x) Absolute Value 𝑥
2
sqrt (x) Square Root 𝑥
exp (x) Exponential 𝑒𝑥
factorial (x) Factorial 𝑥!
angle (x) Phase (angle) of a complex number

2. Introduction to MATLAB 26
Trigonometric Functions

2. Introduction to MATLAB 27
Trigonometric Functions

• Degree: sind, cosd, tand, cotd, secd, cscd

• Radian: sin, cos, tan, cot, sec, csc

• Pie fracture: sinpi, cospi

• Arcs:

• Degree: asind, acosd, atand, acotd, asecd, acscd

• Radian: asin, acos, atan, acot, asec, acsc

2. Introduction to MATLAB 28
29

https://www.whitman.edu/mathematics/calculus_online/section04.11.html
https://medium.com/mathadam/beyond-soh-cah-toa-from-circular-to-hyperbolic-
trigonometry-a3125788c383
2. Introduction to MATLAB
Hyperbolic Functions
Hyperbolic Functions

• sinh, cosh, tanh, coth

• asinh, acosh, atanh, acoth

𝑒 𝑥 −𝑒 −𝑥 𝑒 2𝑥 −1 1−𝑒 2𝑥
• sinh(𝑥) = 2
= 2𝑒 𝑥
= 2𝑒 −𝑥

𝑒 𝑥 +𝑒 −𝑥 𝑒 2𝑥 +1 1+𝑒 2𝑥
• cosh 𝑥 = 2 = 2𝑒 𝑥
= 2𝑒 −𝑥

2. Introduction to MATLAB 30
Scripts
Sections %% (Ctrl + Alt + Enter)

Comments % (Ctrl + R / Ctrl + T)

Smart Indent
Script Ctrl + I

Run F5

Run a Specific Section Ctrl + Enter

Run a Specific Line F9

Terminate Ctrl + C

close, clear, clc

2. Introduction to MATLAB 31
3. Arrays

32
3. Arrays and Linear Algebra

• Vectors and Matrices


• Creating
• Addressing
• Functions

• Linear Algebra
• Operators
• Functions

• Other Types of Arrays

• Converting Between Array Types

3. Arrays and Linear Algebra 33


Vectors

• An = A(n);
• A = [a1 ,a2 , a3 , … , an];
Columns • An1-n2 = A(n1 : n2);
• A = [a1 a2 a3 … an];
Addressing • Axy = A( [nx , ny , …] );
• add = [nx , ny , …]; Aadd = A(add);
• Aend = A(end);
• A = [a1 ; a2 ; a3 ; … ; an];
Creating

• A = [a1
Rows a2 • B = transpose (A);
a3 Transposing
... • B = A’;
an];

• A = Start : Step : End;


Measuring • L = length (A);
Series • A = linspace (a1 , an , n);
• A = logspace (a1 , an , n);

3. Arrays and Linear Algebra 34


Matrices

• A = [ 𝑎11 , 𝑎12 , … , 𝑎1𝑛 ; 𝑎21 , 𝑎22 , … , 𝑎2𝑛 ;


.
. Addressing
.
Creating ; 𝑎𝑚1 , 𝑎𝑚2 , … , 𝑎𝑚𝑛 ];

, ՞ 𝑆𝑝𝑎𝑐𝑒 • A = [… ]3𝑥3

; ՞ 𝐸𝑛𝑡𝑒𝑟 • 𝑎22 = A (2 , 2);

• 𝑎22 = A (5);

• [row , col] = ind2sub (size , index);


• Sz = size (A); [Nrows , Ncolums , …] = size (A);
Measuring • ND = ndims (A); • index = sub2ind (size , row , col);
• N = numel (A);

3. Arrays and Linear Algebra 35


Vectors and Matrices – Functions
• cat, horzcat, vertcat

• zeros, ones, eye

• rand, randn, randi, rng

• perms, randperm

• repmat, reshape, shiftdim, (i)permute, flip

• sparse, sprand, sprandsym, full, diag


3. Arrays and Linear Algebra 36
[Linear]+[Algebra]
Source:
Linear Algebra: Foundations of Machine Learning
Paul A. Jensen
University of Illinois
http://jensenlab.net/teaching/#bioe210

3. Arrays and Linear Algebra 37


Linear Algebra

• Operators

.* ./ .^ * / \ ^ + -

• Functions

• min, max, sort, find

• sum, mean, prod, cumprod, diff

• diag, trace, norm, nnz, nonzeros, all, any

• rank, det, inv, pinv

3. Arrays and Linear Algebra 38


Other Types of Arrays - Cell

• Cell

• A = cell(size);

• A = {a1, a2, a3, … ;a4 ,a5 ,a6, …};

• amn = A{row#m, column#n};

• x = A{row, column}(row, column);

3. Arrays and Linear Algebra 39


Other Types of Arrays - Table

• Table

• T = table(Variables);

• T = table(‘Size’ , SZ , ‘VariableTypes’ , VarTypes);

• Var1 = T.var1; Var1_n = T.var1(n)

3. Arrays and Linear Algebra 40


Other Types of Arrays - Structure

• Structure

• A = struct();

• A = struct(‘Name1’, Value1/Variable1, ‘Name 2’, …

Value2/Variable2, …);

• A.a1 = x; A.a2 = y;

• X = A.a1; Xn = A.a1(n)

3. Arrays and Linear Algebra 41


Converting Between Array Types

Matrix to … Cell to … Structure to …

• mat2str • cell2vec • struct2cell


• mat2cell • Cell2mat • Struct2table
• mat2gray • cell2struct • Struct2dataset
• mat2dec • cell2table • Struct2geotable
• mat2dataset • cell2dataset
• mat2im • cell2sym
• cell2sos

3. Arrays and Linear Algebra 42


4. Control Structures

43
4. Control Structures

• for

• if

• switch

• While

• Supplementary Functions

4. Control Structures 44
for Loop Variable = An Array or Start:Step:End

for: Statement(s)

end

for loop will be executed as many columns as the loop variable has

4. Control Structures 45
if (Condition(s) #1)

Statement(s) 1

elseif (Condition(s) #2)


.
. Statement(s) 2
. ..
if: .
elseif (Condition(s) #n)

Statement(s) n

else
Default
Statement(s)
end

4. Control Structures 46
switch Conditioning Variable

case Value #1
Statement(s) 1
case Value #2
. Statement(s) 2
switch: . ..
. .
case Value #n
Statement(s) n

otherwise
Default
Statement(s)
end
4. Control Structures 47
while Condition(s)

while: Statement(s)

end

While “Condition(s) = True”, The loop will be executed

4. Control Structures 48
Supplementary Functions

• break

• continue

• pause ()

• tic & toc

4. Control Structures 49
5. Visualization

50
5-1. 2-D Visualization

51
2-D Visualization - Basic Functions

• figure • title, legend • colorbar • set • fill

• plot • x/y/zlabel • colormap • gcf • area


• gca • patch
• subplot • x/y/zticklabels • cla, clf
• gco
• hold • x/y/zlim, axis • zoom

• grid • text, gtext

5-1. 2-D Visualization 52


2-D Visualization - Advanced Functions

• fplot • scatter, gscatter


• ezplot • pie
• Stem
• compass
• Comet
• contour
• fimplicit
• pareto
• bar, barh, errorbar
• Graphplot
• boxplot
• loglog, semilogx, semiology
• stairs

5-1. 2-D Visualization 53


5-2. 3-D Visualization

54
3-D Visualization
• comet3
• plot3 • bar3
• surf, surfl, surfc • stem3 • shading
• mesh, meshc, meshz
• pie3 • view
• Meshgrid
• slice • hidden
• ezsurf
• ezmesh
• fill3 • camera
• ezplot3 • scatter3
• contour3

5-2. 3-D Visualization 55


6. Text and Files

56
6. Text and Files

• Text

• Files

• Publish

6. Text, Files, and I/O 57


Text

• sprintf

• disp

• upper, lower, reverse, split, join,

splitlines, replace, erase, contains

6. Text, Files, and I/O 58


Files
• input, ginput

• save, saveas, savefig

• load, importdata

• cd, pwd, what, which, dir, uigetdir,mkdir, rmdir, copyfile,

movefile, delete, uigetfile, Pathes

• fopen, fscanf, fprintf, fread, fwrite, fclose

• read/writematrix (xlsread/write, csvread/write, dlmread/write)

• readvars, readcell, readtable, textscan

6. Text, Files, and I/O 59


Publish

6. Text, Files, and I/O 60


7. Functions

61
7. Functions

• Declaring Functions

• Calling Functions

• Debugging Codes

7. Functions 62
Declaring Functions
function [Output Variables] = Function Name (Input Variables)

❖ Some comments for help & references

❖ Checking if the function has been used in


the correct way (input/output checking)

❖ Body of the function (main code)

❖ Configuring outputs/showing results

end

File name should be exactly same as the function name: “function name.m”

7. Functions 63
Calling Functions

• Call functions by their names, just like MATLAB built-in syntaxes.


• Input(s) can be nothing/number(s) or text/variable name(s).
• Output(s) can be nothing/one or more variable name(s).

• Function files should be located (saved) in the “Current Folder”


or “MATLAB Path”

• Global variable names can be the same as local variables of the


function without causing any interference (even the function’s
input/output variable).

7. Functions 64
Input / Output Checking

• narginchk, nargoutchk

Number of I/Os • nargin, nargout, error, return

• varargin, varargout

• Variable Size

Content of I/Os • Data Type

• Application

7. Functions 65
Debugging Codes

• Error

Break Points

step, step-in & continue

7. Functions 66
8. Solving Equations

67
8. Solving Equations

• Symbolic and Polynomial Equations

• Linear Equation Systems

• Integration and Differential Equations

8. Equation Solving 68
Symbolic and Polynomial Equations

8. Equation Solving 69
Linear Equation Systems

8. Equation Solving 70
Integration and Differential Equations

8. Equation Solving 71
9. Statistics

72
9. Statistics

Codes and Data are


available on:
https://www.elsevier.com/books-and-
journals/book-companion/9780081029398

9. Statistics 73
9. Statistics

Descriptive Statistics:
• Uni-variate
• Bi-variate
• Regression Analysis
• ROC Analysis
Inferential Analysis
• Basic Concepts
• Parametric Hypothesis Testing
• Non-Parametric Hypothesis Testing
• Multiple and Multivariate Hypothesis Testing
Experimental Design and Sample Size Calculations

Statistical Shape Models

9. Statistics 74
Descriptive Statistics

76
Descriptive Statistics - Basic Concepts

Terms Statistical Variables Statistical Data Types


• Data • Uni-Variate • Categorical
• Population • Bi-Variate • Ranked
• Sample • Multi-Variate • Discrete
• Variable • Continuous

9. Statistics 77
Descriptive Statistics - Univariate Data Visualization

9. Statistics 78
Descriptive Statistics - Histogram

9. Statistics 79
Descriptive Statistics - Univariate Data Measures

Data: General Data: Asymmetric or has significant outlier(s)


MATLAB
Operation Formula MATLAB
Function Operation Formula
Function
The most frequent value in
Mode mode
data

Range range 𝑅𝑎𝑛𝑔𝑒 = 𝑚𝑎𝑥 𝑋 − 𝑚𝑖𝑛 𝑋 1) Sort the x in ascending or descending order
𝑛+1
𝑥 𝑛: 𝑜𝑑𝑑
2
Median median 2) 𝑚𝑒𝑑𝑖𝑎𝑛 = ൞ 𝑛 𝑛

Data: Symmetric with no outliers 2 𝑥
2
+𝑥
2
+1 𝑛: 𝑒𝑣𝑒𝑛
n: number of elements exist in x
MATLAB
Operation Formula
Function
𝑛
1
Mean mean 𝜇 = 𝑥ҧ = ෍ 𝑥𝑖
𝑛 1) Sort the x in ascending or descending order
𝑖=1
2) 𝑚𝑒𝑑𝑖𝑎𝑛 =
𝑛
Standard 1 Inter-Quartile 𝑥
3
× 𝑛+1 −𝑥
1
𝑛+1× 𝑛: 𝑜𝑑𝑑
std 𝜎=𝑠= ෍(𝑥𝑖 −𝑥)ҧ 2 iqr ቐ 4 4
Deviation 𝑛−1 Range 𝑠𝑎𝑚𝑒 𝑎𝑠 𝑚𝑒𝑑𝑖𝑎𝑛 𝑓𝑜𝑟 𝑒𝑎𝑐ℎ 𝑞𝑢𝑎𝑟𝑡𝑖𝑙𝑒 𝑛: 𝑒𝑣𝑒𝑛
𝑖=1
n: number of elements exist in x
𝑛
1
Variance var 𝜎2 = 𝑠2 = ෍(𝑥𝑖 −𝑥)ҧ 2
𝑛−1
𝑖=1

9. Statistics 80
Descriptive Statistics - Bivariate Data Visualization

9. Statistics 81
Descriptive Statistics - Bivariate Data Measures
MATLAB
Operation Formula
Function
𝑛
1
Covariance cov 𝑐𝑜𝑣(𝑥, 𝑦) = ෍(𝑥𝑖 − 𝑥)(𝑦
ҧ 𝑖 − 𝑦)

𝑛−1
𝑖=1
𝑛
corr, (𝑥𝑖 − 𝑥)(𝑦
ҧ 𝑖 − 𝑦)

Pearson’s Correlation 𝑟𝑥𝑦 = ෍
corrcoef
𝑖=1
σ𝑛𝑖=1(𝑥𝑖 −𝑥)ҧ 2 σ𝑛𝑖=1(𝑦𝑖 −𝑦)
ത 2

Spearman’s Rank 6 σ𝑛𝑖=1 𝐷𝑖2 𝑅 = 𝑠𝑜𝑟𝑡(𝑋)


corr 𝑟𝑠 = 1 − 3 , 𝐷𝑖 = 𝑅𝑖 − 𝑆𝑖 ; ቊ
Correlation 𝑛 −𝑛 𝑆 = 𝑠𝑜𝑟𝑡(𝑌)
𝑛−1 𝑛
2𝐾
𝜏= 2 , 𝐾 = ෍ ෍ 𝜉 ∗(𝑋𝑎,𝑖 , 𝑋𝑎,𝑗 , 𝑌𝑏,𝑖 , 𝑌𝑏,𝑗 ) ;
𝑛 −𝑛
𝑖=1 𝑗=𝑖+1
Kendall’s Tau
corr 1 𝑖𝑓 𝑋𝑎,𝑖 − 𝑋𝑎,𝑗 𝑌𝑏,𝑖 − 𝑌𝑏,𝑗 > 0
Correlation
𝜉∗ = 0 𝑖𝑓 𝑋𝑎,𝑖 − 𝑋𝑎,𝑗 𝑌𝑏,𝑖 − 𝑌𝑏,𝑗 = 0
−1 𝑖𝑓 𝑋𝑎,𝑖 − 𝑋𝑎,𝑗 𝑌𝑏,𝑖 − 𝑌𝑏,𝑗 < 0

9. Statistics 82
P-Value

9. Statistics 83
Descriptive Statistics - Regression Analysis

• polyfit

• polyval

9. Statistics 84
Descriptive Statistics – ROC Analysis

True Positive False Positive Accuracy Ac = (TP+TN)/(TP+FP+TN+FN)


(TP) (FP)
Sensitivity Se = TP/(TP+FN)
False Negative True Negative
(FN) (TN) Specificity Sp = TN/(TN+FP) = 1- FPR

Positive Predictive
PPV = TP/(TP + FP)
Value (Precision)
Negative Predictive
NPV = TN/(TN + FN)
Value

False Positive Rate FPR = FP/(FP+TN) = 1 - Sp

Recall Re = TP/(TP+FN)

F1 Score F1 = 2TP/(2TP+FP+FN)

9. Statistics 85
Inferential Statistics

86
Inferential Statistics - Basic Concepts
• Probability
• Single Event
• Multiple Events

• Probability Distribution
• Normal Distribution
• The Central Limit Theorem
• Standard Error Of The Mean
• Confidence Intervals Of The Mean

9. Statistics 87
Inferential Statistics - Parametric Hypothesis Testing
• Hypothesis
• Null Hypothesis
• Alternative Hypothesis
• Type I Error
• Type II Error

• Hypothesis Testing
• One sample.
• Two-sample paired data.
• Two-sample unpaired data

• t-Distribution Test & Student’s t-Test

• z-Test

9. Statistics 88
Inferential Statistics - Non-Parametric Hypothesis Testing

• Sign Test

• Wilcoxon Signed Rank Test

• Mann–Whitney U Test

• Chi-Square Test

• Choosing a Hypothesis Test

9. Statistics 89
Inferential Statistics - Multiple and Multivariate Hypothesis Testing

• Multiple Hypothesis Testing


• Bonferroni’s Correction
• Analysis of Variance (ANOVA)

• Multivariate Hypothesis Testing


• Hoteling's 𝑡 2 -Test
• Multivariate Analysis of Variance (MANOVA)

• Which Test Should We Use?

9. Statistics 90
Complementary Topics

91
Inferential Statistics - Experimental Design and Sample Size Calculations
• Experimental And Observational Studies

• Random And Systematic Error (Bias)

• Reducing Random And Systematic Errors


• Blocking (Matching) Test and Control Subjects
• Blinding
• Multiple Measurement
• Randomization

• Sample Size And Power Calculations


• Illustration of a Power Calculation for a Single Sample t-test
• Illustration of a Sample Size Calculation

9. Statistics 92
Inferential Statistics - Statistical Shape Models (SSMs)

• SSMs And Dimensionality Reduction

• Forming An SSM
• Parameterize the Shape
• Align the Centroids
• Compute the Mean Shape Vector
• Compute the Covariance Matrix
• Compute the Eigenvectors and Eigenvalues

• Producing New Shapes From An SSM

9. Statistics 93
Supplementary Topics

94
Some Statistical Plots

• cdfplot • normplot

• ecdf • wblplot

• probplot • qqplot

9. Statistics 95
Inferential Statistics - Probability Distributions

9. Statistics 96
10. Supplementary Topics

97
10. Supplementary Topics - General

• Top-Down
• Program Designing Approaches: • Bottom-Up
• Combined

• Code Efficiency: Processing Load, Time, and Memory

• Introduction to Simulink

• Introduction to GUI

10. Supplementary Topics 98


10. Supplementary Topics - Advanced

• Principle Components Analysis (PCA)

• Independent Components Analysis (ICA)

• Fuzzy Concepts

• Optimization Algorithms

10. Supplementary Topics 99


10. Supplementary Topics – Biomedical Applications

• Famous Biomedical Signal and Image Datasets


• Toolboxes: Biosig, eeglab, Psychtoolbox, …
• FT, DFT, STFT, FFT, power spectrum, Wavelet, Cepstrum

• Auto-correlation, cross-correlation, convolution


• Filters and Signal Pre-Processing Techniques
• Digital Image Processing
• Features and Statistical Pattern Recognition
• Machine Learning: Supervised/Unsupervised

10. Supplementary Topics 100


10. Supplementary Topics - Further Resources

Mohammad Nourizadeh Cherloo


onlinebme.com

matlab
1-essentials-of-neuroscience-with-
atlabcentral/fileexchange/15438
https://www.mathworks.com/m
10. Supplementary Topics 101

You might also like