Вы находитесь на странице: 1из 32

Introduction to MATLAB

3 November 2009
Instructor: Andy Newman
Office Hours: Stop by room 306 (main
building) whenever
Email: anewman@atmos.colostate.edu
Website:
www.atmos.colostate.edu/programming
Syllabus
Week 1 (11/03)
Introduction to MATLAB
GUI
Variables, operations, built in functions
Help
Script Files
Week 2 (11/10)
Programming
Syntax
Arrays: Numeric, cell, structure
Strings
Built in functions (i.e. find, mean, max, min, sum, etc)
File I/O (text, binary, netCDF, HDF)
Basic program organization
Debugging
Syllabus
Week 3 (11/17)
Graphics
Line, scatter, bar, surface, contour plots, etc
Figure properties (i.e. Axis labels, tick marks)
Colormaps
Saving your plots
Images in MATLAB
Week 4 (12/01)
Somewhat more advanced topics
Making functions
Vectorized code
3-D plots
Data manipulation in MATLAB: regression, derivatives, others you
want
MATLAB Central File Exchange
Syllabus
Week 5 (12/08)
Toolboxes
Mapping
Signal processing
Statistics
Other topics you want to discuss
What is MATLAB?
MATLAB is a simple programming language
with its own extensive library of mathematical
and graphical subroutines
It integrates computation and graphics in one
easy to use interface
MATLAB stands for MATrix LABoratory.
MATLAB is very extendable. There are many
add-ons (toolboxes) for specific requirements
What is MATLAB?
If MATLAB can process and visualize data, why
ever use FORTRAN, C, or some other
language?
MATLAB is an interpreted language
It is not a compiled language
Therefore identical code executes more slowly,
sometimes MUCH more slowly in MATLAB
MATLAB has more memory overhead than
equivalent FORTRAN or C programs
What is MATLAB?
Main Features
Simple programming rules
Extended accuracy
Continuity among integer, real and complex values
Comprehensive mathematical library
Extensive graphics tools
Linkages with other languages
Transportability across environment
MATLAB scripts will work on PC, UNIX, Mac
Starting MATLAB
On UNIX: type matlab at command prompt
Click on the MATLAB icon if you are on a PC
Mac can probably do both
Issues on startup
MATLAB needs a connection to the license server
Check internet connection
Too many users can use all available licenses
Try again later
Starting MATLAB
Once MATLAB is running the GUI (Graphical User
Interface) will appear
Default Window apperance
Starting MATLAB
Command
Window
Main window
in MATLAB
Commands
entered here
Starting MATLAB
MATLAB displays >> prompt when ready for a
command
Will have no >> prompt when processing
commands
Newer versions also say Ready or Busy in
lower left corner of GUI
Can use arrow keys to work through command
history and modify commands
Essentially the same as UNIX command prompt
MATLAB GUI
Current Folder Window
Displays contents of the current
working directory
MATLAB Search Path
Path that MATLAB uses to search for
script and function files
Default path contains all built in
MATLAB functions
Can modify path through MATLAB
function or going under File>Set Path
MATLAB will ask to modify path if
running a program from a folder not in
path
MATLAB GUI
Workspace Window
Shows all currently defined
variables
Array dimensions
Min, max values
Good debugging tool
Command History
Shows all past commands
Can copy and past commands into
command window
Double click will execute command
MATLAB GUI
Other windows include editor window, figure
window, variable editor, help, etc
Will discuss editor and figure window in
upcoming weeks, get to help window in a little
bit
MATLAB GUI
Desktop Menus
File Menu
New
Create new MATLAB
program file (m-file)
Open existing m-file
Import data
Set Path
Open recent m-files
MATLAB GUI

Edit Menu
Copy, cut, paste
Find and replace
phrases
Clear command
history, workspace
Desktop Menu
Change appearance
of desktop
Select windows to
display
Interactive Commands
Enter commands at >> prompt

Variable x automatically allocated


MATLAB does not require declaration of variables
Nice, but can get you in trouble so be careful
Interactive Commands
MATLAB is case sensitive
Variable ans will take value
of result of command if no
equal sign specified
Holds most recent result only
Semicolon at end of line will
suppress output, it is not
required like in C
Useful in script files and
debugging
Interactive Commands
Format of output
Defaults to 4 decimal places
Can change using format statement
format long changes output to 15 decimal places
Operators
Scalar arithmetic operations
Operation MATLAB form
Exponentiation: ^ ab a^b
Multiplication: * ab a*b
Right Division: / a / b = a/b a/b
Left Division: \ a \ b = b/a a\b
Addition: + a+b a+b
Subtraction: - ab a-b
MATLAB will ignore white space between
variables and operators
Order of Operations
Parentheses
Exponentiation
Multiplication and division have equal
precedence
Addition and subtraction have equal
precedence
Evaluation occurs from left to right
When in doubt, use parentheses
MATLAB will help match parentheses for you
Logical Operators
Variables
MATLAB is case sensitive
X is not equal to x
Variable names must start
with a letter
Youll get an error if this doesnt
happen
After that, can be any
combination of letters,
numbers and underscores
No special characters though
Variables
Variable types
Numeric
Logical
Character and string (discussed next week)
Cell and Structure (discussed next week)
Function handle (discussed in week 3)
Variables
Dont name your variables the same as
functions
min, max, sqrt, cos, sin, tan, mean, median, etc
Funny things happen when you do this
MATLAB reserved words dont work either
i, j, eps, nargin, end, pi, date, etc
i, j are reserved as complex numbers initially
Will work as counters in my experience so they can be
redefined as real numbers
MATLAB Help
Ways to get help in MATLAB
help function name
Provides basic
text output
Type helpwin on
command line
Look under the help menu
on the desktop
MATLAB Help
Product help window
Help>product help
MATLAB Help
Can browse or search product help for a
specific function or topic
MATLAB help has introductory help material,
basic overviews of how to use functions, plot,
program in MATLAB, example code, etc
lookfor keyword command will also find
functions that have the keyword in them
doc function_name brings up the full
documentation for the function
Resources
Books
Two that seem to be good:
A Concise Introduction to MATLAB by William J. Palm III.
2008, McGraw-Hill, 418 pp.
Essential MATLAB for Engineers and Scientists (Fourth
Edition) by Brian Hahn and Dan Valentine. 2010, Academic
Press, 480 pp.
Online tutorials and examples are everywhere
Note that older books and tutorials may have
options that are no longer available and functions
that no longer work
Figures are the prime example
Next Week
Arrays
Strings
File I/O
Program layout and debugging
Questions?

Вам также может понравиться