(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
Fundamentals of matlab
1. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Fundamentals of MATLABFundamentals of MATLAB
Delivered byDelivered by
Dr. Suman ChakrabortyDr. Suman Chakraborty
ProfessorProfessor
Department of Mechanical EngineeringDepartment of Mechanical Engineering
IIT KharagpurIIT Kharagpur
2. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
OutlineOutline
• Introduction – Using MATLAB
• Basics of Programming
• Introduction to 2D and 3D plot
• Statistical Analysis
• Numerical Analysis
• Symbolic Mathematics
• Conclusion
3. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
What is MATLABWhat 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
4. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
More about MATLABMore about MATLAB
• High-performance language for technical
computing
• Integrates computation, visualization, and
programming in an easy-to-use user
environment
5. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Uses of MATLABUses 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
6. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Components of MATLABComponents of MATLAB
• Basic Window
• Extensive Help
• GUI
• Toolboxes
• SIMULINK
7. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
ToolboxesToolboxes
Control System Communications
Financial Fuzzy Logic
Image Processing Neural Network
PDE Signal Processing
Statistics Symbolic Math
And Many More …
9. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Documentation SetDocumentation 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
10. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Basic WindowBasic Window
Command line
Result
Visualization
File
Management
Working
Variables
Command
History
Menu
Working Directory
11. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Help and DemoHelp and Demo
Access Matlab Help Menu
Or
Type help in Command Window
Type help subtopic
Access Matlab Demo Menu
Or
Type demo in Command Window
12. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Basics of ProgrammingBasics of Programming
13. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
File TypesFile Types
• .m files
Script (executable program)
Function (user written function)
• .fig files Plot visualization and
manipulation
• .dat or
.mat files
Working with Formatted
Data
14. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Script and Function FilesScript and Function Files
Script Files Function Files
Parameter
Assignment
Statement
Evaluation
Function Declaration on top
Syntax: function [output parameters] = function name (input parameters)
Save the file in – function name.m
15. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
VariablesVariables
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
16. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Creating and Operating withCreating and Operating with
VariablesVariables
Scalar Vector
Strings
# variable with one row
and one column
>> x = 2;
>> y = 3;
>> z = x + y;
>> w = y – x;
>> u = y*x;
# 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
>> sFirst = ‘Hello’
>> sSecond = ‘All’
>> sTotal = [sFirst, ‘ ’, sSecond]
18. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
OperatorsOperators
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
Relational operators
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
19. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
CONTROL FLOW STATEMENTSCONTROL FLOW STATEMENTS
“for” Loop
for n=1:3 % Starting value=1, end=3, increment=1
for m=3:-1:1 % Starting value=3, end=3, increment= -1
a(n,m) = n.^2 + m.^2;
end % End of the “for” loop of “m”
end % End of the “for” loop of “n”
Output
2 5 10
a = 5 8 13
10 13 18
20. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
“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
WHILE STATEMENTSWHILE STATEMENTS
21. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
“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
IF-ELSE STATEMENTSIF-ELSE STATEMENTS
22. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Debugging MATLABDebugging 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:MATLAB6p5workDNA melting langevinHeteroSeq1.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”
23. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Introduction to 2D and 3D plotIntroduction to 2D and 3D plot
24. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Plots Using MATLABPlots Using MATLAB
• 2-D Graphics
• 3-D Graphics
25. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Example: Plot y = sin x in 0 ≤ x ≤ 2π
2-D Graphics2-D Graphics
26. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Command Line PlottingCommand Line Plotting
27. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Editing FiguresEditing Figures
Edit Button
Legend
Text
Axis Label
Line or Point Type
28. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Command Line EditingCommand Line Editing
29. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Plot in Polar Co-ordinatePlot in Polar Co-ordinate
31. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Data StatisticsData Statistics
32. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Plotting polynomialsPlotting polynomials
y = x3
+ 4x2
- 7x – 10 in 1 ≤ x ≤ 3
33. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Specialized Plots using MATLABSpecialized Plots using MATLAB
• Bar and Area Graphs
• Pie Charts
• Histograms
• Discrete Data Graphs
34. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Bar and Area PlotsBar and Area Plots
41. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Data Import in MATLABData Import in MATLAB
• Data as explicit list of elements
– e.g. [1 3 -5 5 7 10 5]
• Create Data in M-file
– Data editor can be utilized, more effective
than the first one
• Load data from ASCII file
– e.g. g = load(‘mydata.dat’)
• Read data using fopen, fread and
MATLAB file I/O functions
42. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Other methods of ImportOther methods of Import
• Specialized file reader function
– dlmread Read ASCII data file
– imread Read image from graphics file
– wk1read Read spreadsheet (WK1) file
– auread Read Sun (.au) sound file
– wavread Read Microsoft WAVE (.wav) sound file
– readsnd Read SND resources and files (Macintosh)
• MEX-file to read the data
• Develop an associated Fortran or C
program
43. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Exporting Data from MATLABExporting Data from MATLAB
• Diary Command
– creates a diary of present MATLAB session in
a disk file (excluding graphics)
– View and edit with any word processor
– e.g. diary mysession.out
diary off
• Save data in ASCII format
• Write data in .mat file
45. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Data StatisticsData Statistics
• Basic functions for data statistics:
– max Largest component
– min Smallest component
– mean Average or mean value
– median Median value
– std Standard deviation
– sort Sort in ascending order
– sortrows Sort rows in ascending order
– sum Sum of elements
46. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
More Statistical FunctionsMore Statistical Functions
– prod Product of elements.
– diff Difference function and
approximate derivative
– trapz Trapezoidal numerical
integration
– cumsum Cumulative sum of elements
– cumprod Cumulative product of elements
– cumtrapz Cumulative trapezoidal numerical
integration
47. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Covariance and CorrelationCovariance and Correlation
• Function cov evaluates
– Variance of a vector i.e. measure of spread or
dispersion of sample variable
– Covariance of a matrix i.e. measure of
strength of linear relationships between
variables
• Function corrcoef evaluates
– correlation coefficient i.e. normalized
measure of linear relationship strength
between variables
48. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Minimizing FunctionsMinimizing Functions
• Minimizing Functions with one variable
– fmin (function name, range)
• Minimizing Functions with several
variables
– fmins (function name, starting vector)
Example:
>> a = fmin (‘humps’,0.4,0.9)
>> a = 0.6370
51. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Functions for Finite DifferencesFunctions for Finite Differences
• diff Difference between
successive elements of a
vector
Numerical partial derivatives
of a vector
• gradient Numerical partial derivatives
a matrix
• del2 Discrete Laplacian of a
matrix
53. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Solving Linear EquationsSolving Linear Equations
• Solution by Square System
• Overdetermined System
• Undetermined System
General situation involves a square coefficient
matrix A and a single right-hand side column
vector b.
e.g. Ax = b then solution: x = bA
System is solved by ‘backslash’ operator
54. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Overdetermined EquationOverdetermined Equation
With a, b dataset fitting equation is predicted as
a
eccab −
+= 21)(
MATLAB finds C1 = 0.4763 and C2 = 0.3400
55. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Undetermined EquationUndetermined 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
56. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Ordinary Differential EquationsOrdinary Differential Equations
• Nonstiff solvers
– ode23: an explicit Runge-Kutta (2,3) formula i.e.
Bogacki-Shampine pair
– ode45: an explicit Runge-Kutta (4,5) formula i.e.
Dormand-Prince pair
– ode113: Adams-Bashforth-Moulton PECE solver
• Stiff solvers
– ode15s, ode23s, ode23t and ode23tb
57. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Generic Syntax for ODE SolverGeneric Syntax for ODE Solver
>> [T,Y] = solver (‘Func’, tspan, y0);
'Func' String containing the name of the file
that contains the system of ODEs
tspan Vector specifying the interval of integration.
For a two-element vector tspan = [t0 tfinal], the
solver integrates from t0 to tfinal.
y0 Vector of initial conditions for the problem.
Output:
T Column vector of time points
Y Solution array. Each row in Y corresponds to
the solution at a time returned in the
corresponding row of T
58. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Numerical IntegrationNumerical 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 Simpson’s Rule
• quad8 - Adaptive Newton Cotes 8
panel rule
62. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Symbolic MathematicsSymbolic Mathematics
• The Symbolic Math Toolboxes include
symbolic computation into MATLAB’s
numeric environment
• Facilities Available with Symbolic Math
Toolboxes contain – Calculus, Linear
Algebra, Simplification, Solution of
Equations, Variable-Precision Arithmetic,
Transforms and Special Applied Functions
63. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
DemonstrationsDemonstrations
Command Line Demonstrations are available
with Symbolic Math Toolboxes
64. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
Example: DifferentiationExample: 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
65. MATLAB orientation course:MATLAB orientation course: Organized byOrganized by FOCUS – R&DFOCUS – R&D
In Summary - Why MATLAB !In Summary - Why MATLAB !
• Interpreted language for numerical computation
• Perform numerical calculations and visualize the
results without complicated and time exhaustive
programming
• Good accuracy in numerical computing
• Specially in-built with commands and
subroutines that are commonly used by
mathematicians
• Toolboxes to make advance scientific
computations easy to implement