# Introduction to MATLAB 3 November 2009. Instructor: Andy Newman Office Hours: Stop by room 306 (main building) whenever

## Presentation on theme: "Introduction to MATLAB 3 November 2009. Instructor: Andy Newman Office Hours: Stop by room 306 (main building) whenever"— Presentation transcript:

Introduction to MATLAB 3 November 2009

Instructor: Andy Newman Office Hours: Stop by room 306 (main building) whenever Email: anewman@atmos.colostate.eduanewman@atmos.colostate.edu Website: www.atmos.colostate.edu/programming 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 OperationMATLAB form – Exponentiation: ^ a b a^b – Multiplication: *ab a*b – Right Division: / a / b = a/ba/b – Left Division: \ a \ b = b/aa\b – Addition: +a + ba+b – Subtraction: -a – ba-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 – You’ll get an error if this doesn’t 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 Don’t 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 don’t 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?

Download ppt "Introduction to MATLAB 3 November 2009. Instructor: Andy Newman Office Hours: Stop by room 306 (main building) whenever"

Similar presentations