Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Delivered by
Outline
Introduction Using MATLAB Basics of Programming Introduction to 2D and 3D plot Statistical Analysis Numerical Analysis Symbolic Mathematics Conclusion
MATLAB orientation course: Organized by FOCUS R&D
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
MATLAB orientation course: Organized by FOCUS R&D
Basic Window
Menu
Working Directory Command line
File Management
Result Visualization
Working Variables Command History
Basics of Programming
File Types
.m files
.fig files
Parameter Assignment
Function Declaration on top Syntax: function [output parameters] = function name (input parameters)
MATLAB orientation course: Organized by FOCUS R&D
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||
Vector # variable with many rows and columns >> x = zeros(4,2); >> y = ones(6,8); >> x(1,3) = 1729; >> x(:,1) = [0 0 0 0] Colon Notation
Handling Matrices
Initialization Transpose Inverse
Multiplication
Determinant
Eigenvalues
Operators
Relational operators
Equal Not equal Less than Greater than Less than or equal == ~= < > <=
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
>=
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
Read data using fopen, fread and MATLAB file I/O functions
MATLAB orientation course: Organized by FOCUS R&D
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
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
Overdetermined Equation
b(a) c1 c2e a
MATLAB finds C1 = 0.4763 and C2 = 0.3400 MATLAB orientation course: Organized by FOCUS R&D
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
tspan
y0 Output: T Y
Column vector of time points Solution array. Each row in Y corresponds to the solution at a time returned in the corresponding row of T
MATLAB orientation course: Organized by FOCUS R&D
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
% Double Integral Evaluation >> x_min = pi; >> x_max = 2*pi; >> y_min = 0; >> y_max = pi; >> >> intg_result = dblquad (integrnd, x_min, x_max, y_min, y_max) >> intg_result = -9.8698
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
Thank You