Introduction to MATLAB - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Introduction to MATLAB

Description:

Introduction to MATLAB Northeastern University: College of Computer and Information Science Co-op Preparation University (CPU) 11/03/2003 – PowerPoint PPT presentation

Number of Views:161
Avg rating:3.0/5.0
Slides: 27
Provided by: William1478
Category:

less

Transcript and Presenter's Notes

Title: Introduction to MATLAB


1
Introduction to MATLAB
  • Northeastern University College of Computer and
    Information Science
  • Co-op Preparation University (CPU)

11/03/2003
2
Overview for 11/03/2003
  • Brief review of topics covered in last session
    (10/30/2003)
  • Some more plotting
  • Low-level file i/o and handles
  • The profiler and tictoc
  • Some ui commands

3
Review for 10/30/2003
  • MATLAB Functions
  • Looping!
  • Optimization

4
MATLAB Functions
  • Functions are similar to scripts
  • Functions may take arguments
  • Functions may return one or more values

5
MATLAB Functions, cont 2
  • function output function_name(input_arguments)
  • The above is a function header and should be the
    first non-comment line in the function file
  • Comments may be placed above the function header

6
MATLAB Functions, cont 3
  • Example function
  • function output square(input)
  • output inputinput
  • Body of functions can contain code just like
    scripts could

7
Looping!
  • Scripts and functions also allow the ability to
    loop using conventional for and while loops.
  • Note that the interpreter also lets you do it, it
    is simply less easy to grasp

8
For Loops
  • Common to other programming languages
  • for variable expression
  • statement
  • ...
  • statement
  • end

9
For Loops, cont 2
  • Example (taken from MATLAB help)
  • a zeros(k,k) Preallocate matrix
  • for m 1k
  • for n 1k
  • a(m,n) 1/(mn -1)
  • end
  • end

10
For Loops, cont 3
  • The looping variable is defined in much the same
    way that we defined arrays/vectors.
  • Ex. m 1k
  • Or m 110

11
For Loops, cont 4
  • Loops are shown to end by the keyword end
  • Curly braces are not present to subdivide packets
    of code
  • Make use of adequate white-space and tabbing to
    improve code readability

12
While Loops
  • Similar to while loops in other languages
  • while expression
  • statement
  • end

13
While Loops, cont 2
  • Ex. (taken from help while)
  • while (1eps) gt 1
  • eps eps/2
  • end

14
While Loops, cont 3
  • Same notes apply to while loops.
  • Code is separated by the keyword end

15
Case statements
  • Syntax
  • switch switch_expr
  • case case_expr
  • statement,...,statement
  • case case_expr1,case_expr2,case_expr3,...
    statement,...,statement ...
  • otherwise
  • statement,...,statement end

16
Case statements, cont 2
  • Ex. (taken from help case)
  • method 'Bilinear'
  • switch lower(method)
  • case 'linear','bilinear'
  • disp('Method is linear')
  • case 'cubic'
  • disp('Method is cubic')
  • case 'nearest'
  • disp('Method is nearest')
  • otherwise disp('Unknown method.')
  • end
  • Method is linear
  • NOTE when case matches it will not execute all
    following cases. (Break not necessary).

17
MATLAB Code Optimization
  • Two ways to optimize MATLAB code
  • Vectorize code
  • Preallocate matrices
  • Information contained here
  • http//www.mathworks.com/access/helpdesk_r12p1/he
    lp/techdoc/matlab_prog/ch10_p47.shtml

18
More plotting
  • Plotyy
  • Plot3
  • Bar3
  • Surf

19
Low level File I/O
  • Notes must open a file and obtain a handle
    before the commands are used
  • Reading accomplished with fgetl or fgets
  • Writing accomplished with fprintf
  • Exercise

20
The MATLAB Profiler
  • Keyword profile
  • Aids optimization and debug efforts
  • To turn it on, type profile on
  • To turn it off, type profile off
  • Generating a report is accomplished by typing
    profile report

21
Tic and Toc
  • Tic and Toc are built in timing mechanisms for
    code
  • Less information than a profile report will
    generate
  • Start the timer by typing tic
  • End the timer and return the elapsed time by
    typing toc

22
UI Commands
  • UIGetFile
  • UIPutFile

23
UIGetFile
  • Allows someone to pick up a file with relatively
    little effort
  • Will return the filename and directory

24
UIGetFile, cont 2
  • Syntax
  • uigetfile uigetfile('FilterSpec)
  • uigetfile('FilterSpec','DialogTitle')
  • uigetfile('FilterSpec','DialogTitle',x,y)
  • FileName,PathName uigetfile(...)

25
UIGetFile, cont 3
  • Ex. filename, pathname uigetfile( ...
    '.m.fig.mat.mdl','MATLAB Files
    (.m,.fig,.mat,.mdl)' '.m', 'M-files
    (.m)' ...
  • '.fig','Figures (.fig)' ...
  • '.mat','MAT-files (.mat)' ...
  • '.mdl','Models (.mdl)' ...
  • '.', 'All Files (.)', ...
  • 'Pick a file')

26
UIPutFile
  • Similar syntax to UIGetFile
  • uiputfile uiputfile('FilterSpec')
    uiputfile('FilterSpec','DialogTitle')
    uiputfile('FilterSpec','DialogTitle',x,y)
    FileName,PathName uiputfile(...)
    FileName,PathName,FilterIndex
    uiputfile(...)
Write a Comment
User Comments (0)
About PowerShow.com