Delivered by
Outline
What is MATLAB
matrix laboratory
Was originally written to provide easy
access to matrix software developed by
the LINPACK and EISPACK projects that
together presented the state-of-the-art
software for matrix manipulation
Standard instructional tool for industrial
optimization and advance computations in
mathematics, engineering, and science
MATLAB orientation course: Organized by FOCUS R&D
Uses of MATLAB
Math and computation
Algorithm development
Application development, including
graphical user interface (GUI) building
Data analysis, exploration, and
visualization
Modeling, simulation, and prototyping
Scientific and engineering graphics
MATLAB orientation course: Organized by FOCUS R&D
Components of MATLAB
Basic Window
Extensive Help
GUI
Toolboxes
SIMULINK
Toolboxes
Control System
Financial
Image Processing
PDE
Statistics
Communications
Fuzzy Logic
Neural Network
Signal Processing
Symbolic Math
Simulink
Simulink Extensions
Simulink Accelerator
Real-Time Workshop
Stateflow
Blocksets
DSP
Nonlinear Control Design
Communications
Fixed-Point
MATLAB orientation course: Organized by FOCUS R&D
Documentation Set
MATLAB incorporates an exclusive set of online help
and function references containing following
divisions
MATLAB Installation Guide
Getting Started with MATLAB
Using MATLAB
Using MATLAB Graphics
The MATLAB Application Program Interface Guide
New features guide
Basic Window
Menu
Working Directory
Command line
File
Management
Result
Visualization
Working
Variables
Command
History
Basics of Programming
File Types
.m files
.fig files
.dat or
.mat files
Function Files
Parameter
Assignment
Variables
MATLAB variables are created when they appear
on the left of an equal sign. The general
statement
>> variable = expression
creates the variable and assigns to it the value
of the expression on the right hand side
||Types of variables||
Scalar Variables
Vector Variables
Matrices
Strings
MATLAB orientation course: Organized by FOCUS R&D
Scalar
# variable with one row
and one column
>> x = 2;
>> y = 3;
>> z = x + y;
>> w = y x;
>> u = y*x;
Strings
>> sFirst = Hello
>> sSecond = All
Handling Matrices
Initialization
Transpose
Inverse
Multiplication
Determinant
Eigenvalues
Operators
Relational operators
Arithmetic operators
Plus
Minus
Matrix multiply
Array multiply
Matrix power
Array power
Backslash or left matrix divide
Slash or right matrix divide
Left array divide
Right array divide
Kronecker tensor product
+
*
.*
^
.^
\
/
.\
./
kron
Equal
==
Not equal
~=
Less than
< Greater
than
>
Less than or equal
<=
Greater than or equal >=
Logical operators
Short-circuit logical AND
Short-circuit logical OR
Element-wise logical AND
Element-wise logical OR
Logical NOT
Logical EXCLUSIVE OR
&&
||
&
|
~
xor
Output
2 5 10
a = 5 8 13
10 13 18
WHILE STATEMENTS
while Loop
n = 0; eps = 1;
while (1+eps) > 1
eps = eps/2;
n = n + 1; % n indicates how many times the loop is
executed
end
OUTPUT
n = 53
MATLAB orientation course: Organized by FOCUS R&D
IF-ELSE STATEMENTS
if-else Statement
rt = 1:4; pp=0; qq=0;
for i=1:4
if (rt(i) < 2)
pp = pp + 1; % Indicates how many times if executed
else
qq = qq + 1; % Indicates how many times else executed
end
% End of if-else statement
end
% End of for Loop
OUTPUT
pp = 1
qq = 3
MATLAB orientation course: Organized by FOCUS R&D
Debugging MATLAB
Syntax Error
e.g. a function has been misspelled or a parenthesis
has been omitted
Display error message and line number
??? Error: File: D:\MATLAB6p5\work\DNA melting langevin\HeteroSeq1.m
Line: 17 Column: 16
Assignment statements do not produce results. (Use == to test for
equality.)
Run-time Error
e.g. insertion of a wrong variable or a calculation has
been performed wrongly such as divided by zero or
NaN
MATLAB orientation course: Organized by FOCUS R&D
2-D Graphics
Example: Plot y = sin x in 0 x 2
Editing Figures
Edit Button
Legend
Text
Axis Label
Fitting Polynomials
Data Statistics
Plotting polynomials
y = x3 + 4x2 - 7x 10 in 1 x 3
Pie Charts
Histograms
3-D Graphics
Use plot3 in place of plot : Simple Enough !!!!
Statistical Analysis
dlmread
imread
wk1read
auread
wavread
readsnd
dlmwrite
wk1write
imwrite
auwrite
wavwrite
writesnd
Data Statistics
Basic functions for data statistics:
max
min
mean
median
std
sort
sortrows
sum
Largest component
Smallest component
Average or mean value
Median value
Standard deviation
Sort in ascending order
Sort rows in ascending order
Sum of elements
Product of elements.
Difference function and
approximate derivative
Trapezoidal numerical
integration
Cumulative sum of elements
Cumulative product of elements
Cumulative trapezoidal numerical
integration
Minimizing Functions
Minimizing Functions with one variable
fmin (function name, range)
Example:
>> a = fmin (humps,0.4,0.9)
>> a = 0.6370
MATLAB orientation course: Organized by FOCUS R&D
Numerical Analysis
gradient
del2
Difference between
successive elements of a
vector
Numerical partial derivatives
of a vector
Numerical partial derivatives
a matrix
Discrete Laplacian of a
matrix
Overdetermined Equation
b(a) c1 c2 e a
Undetermined Equation
More unknowns than equations
Solution is not unique
MATLAB finds a basic solution even it is
not unique
Associated constraints can not be coupled
to MATLAB
Stiff solvers
ode15s, ode23s, ode23t and ode23tb
Numerical Integration
The area under a section of a function F(x)
can be evaluated by numerically
integrating F(x), a process known as
quadrature. The in-built MATLAB functions
for 1D quadrature are:
quad Adaptive Simpsons Rule
quad8 Adaptive Newton Cotes 8
panel rule
MATLAB orientation course: Organized by FOCUS R&D
Symbolic Mathematics
Symbolic Mathematics
The Symbolic Math Toolboxes include
symbolic computation into MATLABs
numeric environment
Facilities Available with Symbolic Math
Toolboxes contain Calculus, Linear
Algebra, Simplification, Solution of
Equations, Variable-Precision Arithmetic,
Transforms and Special Applied Functions
MATLAB orientation course: Organized by FOCUS R&D
Demonstrations
Command Line Demonstrations are available
with Symbolic Math Toolboxes
Example: Differentiation
>> syms a x
>> fx = sin (a*x)
>> dfx = diff(fx)
>> dfx = cos (a*x)*a
% with respect to a
>> dfa = diff(fx, a)
>> dfa = cos (a*x)*x
MATLAB orientation course: Organized by FOCUS R&D
Thank You