what is matlab ?

22
What is MATLAB ? • MATrix LABratory – Originally, it was a front-end to FORTRAN matrix routines developed in the 1970’s @ U. of New Mexico and Stanford – Today it is a powerful, interactive mathematics ENVIRONMENT with many powerful capabilities (matrices, symbolic math, analysis) • Not unlike a UNIX shell

Upload: rusk

Post on 09-Feb-2016

37 views

Category:

Documents


0 download

DESCRIPTION

What is MATLAB ?. MATrix LABratory Originally, it was a front-end to FORTRAN matrix routines developed in the 1970’s @ U. of New Mexico and Stanford Today it is a powerful, interactive mathematics ENVIRONMENT with many powerful capabilities (matrices, symbolic math, analysis) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: What is MATLAB ?

What is MATLAB ?

• MATrix LABratory– Originally, it was a front-end to FORTRAN

matrix routines developed in the 1970’s @ U. of New Mexico and Stanford

– Today it is a powerful, interactive mathematics ENVIRONMENT with many powerful capabilities (matrices, symbolic math, analysis)

• Not unlike a UNIX shell

Page 2: What is MATLAB ?

Support Materials

• MATLAB is available @ the ECE front desk, and at the ODU bookstore– The only way to master MATLAB is to use it

(just like any programming language or skill)• User’s Guide (comes with student edition)• Internet FAQ’s (e.g. www.mathworks.com) MATLAB Primer (Bound copy ~$3.00)

Page 3: What is MATLAB ?

Accessing Matlab

• Start Menu.. Programs.. Matlab• To exit..

– >>quit

Page 4: What is MATLAB ?

Entering Matrices

• MATLAB works with essentially one kind of object – a rectangular numerical MATRIX with possibly complex entries

• 1 x 1 interpreted as scalars• 1 x n or m x 1 interpreted as vectors• Entered by explicit list of elements, or• Generated by built-in statements and functions• Created in M-files• Loaded from external data files

Page 5: What is MATLAB ?

Entering matrices (contd.)

• Example A = [1,2,3; 4,5,6; 7,8,9] or• A = [

– 1 2 3– 4 5 6– 7 8 9 ] creates a 3 x 3 matrix and assigns it to a variable A.

• , or blank separates the element in a matrix• Avoid blank spaces while listing a number in exponential

form (e.g. 2.34e-9)• Large Matrix best done in M – file (easy to edit)• Built in functions: rand, magic, hilb

Page 6: What is MATLAB ?

• rand (n) creates a n x n matrix with random entries uniformly distributed between 0 and 1

• rand (m x n) will create an m x n matrix• magic (n) will create a an integral n x n matrix which is a

magic square• hilb(n) will create the n x n Hilbert matrix• Individual matrix and vector entries can be referenced with

indices (only positive integers) within the parentheses– E.g. A(2,3) refers to entry in second row and third column.– X(3) woild denote third coordinate of a vector x.

Entering matrices (contd.)

Page 7: What is MATLAB ?

Matrix Operations

• Addition +• Substraction -• Multiplication x• Power ^• Transpose `• Left Division \• Right division /

– E.g. x = A\b is the solution of A * x = b– x = b/A is the solution of x * A = b

Page 8: What is MATLAB ?

Array Operations

• Addition & substraction Operate entrywise• Other can be made entrywise by preceding

them with a period – for *,^,\,/– E. g. [1 2 3 4] .*[1 2 3 4] will yield [1 4 9 16]– [1 2 3 4].^2 will yield [1 4 9 16]

• Useful in MATLAB graphics

Page 9: What is MATLAB ?

Statements, Expressions & Variables

• MATLAB is an expression language – CASE SENSITIVE• Statements are of the form

– Variable = expression, or simply– Expression

• Expressions are composed from operators, functions , and variable names.• Result is a Matrix assigned to the variable for future use.• If variable name and = sign are omitted, then a variable ans (for answer) is

created.• Statement terminated with a CR, use … to continue to next line• Same line use comma to separate statements• Last character semicolon suppresses the printing• Who – lists all the variables• Clear – clears the variables• Runaway Display can be stopped by CTRL-C

Page 10: What is MATLAB ?

Matrix Building Functions

• Convenient Matrix Building Functions are– Eye– Zeros– Ones– Diag– Triu– Tril– Rand– Hilb– Magic– Toeplitz

Page 11: What is MATLAB ?

For,While, if – and relations• MATLAB flow control statements operate like those in most computer

languages• For

– x =[]; for i = 1:4, x = [x,i^2],end– x =[]; for i = 4:-1:1, x = [x,i^2],end

• While– While relation– Statements– End

• If– If relation– Statements– end

Page 12: What is MATLAB ?

Relations

• < less than• > greater than• <= less than or equal• >= greater than or equal• == equal• ~= not equal• & and• | or• ~ not

Page 13: What is MATLAB ?

Scalar & Vector functions

• Scalar– Sin asin exp abs round– Cos acos log sqrt floor– Tan atan rem sign ceil

• Vector– Max sum median any– Min prod mean all– Sort std

Page 14: What is MATLAB ?

Matrix Functions

– Eig chol svd inv lu qr– Hess schur rref expm sqrtm poly– Det size norm cond rank

Page 15: What is MATLAB ?

Command Line Editing & Recall

• Use left & right arrows• Backspace & delete keys• Home, end, Delete• Up/Down arrow keys

Page 16: What is MATLAB ?

Submatrices & Colon Notation• To achieve fairly complex data manipulation• Colon Notation (generate vectors and reference submatrices• Expression 1:5 generates [1 2 3 4 5]• Expressions 0.2:0.2:1.2 generates [0.2 0.4 0.6 0.8 1.0 1.2]• Expression 5:-1:1 gives [5 4 3 2 1]• X= [0.0:0.1:2.0]’;y=sin(x);[x,y] gives a table of sines• Colon Notation – used to access submatrices of a matix

– A(1:4,3), A(:,3), A(1:4,:) , A(:, [2,4])– A(:[2,4,5]) = B(:,1:3)– A(:[2,4]) = A(:,[2,4])*[1,2:3,4]

Page 17: What is MATLAB ?

M files• To execute a sequence of statements• Script files

– Sequence of normal MATLAB statements– Variables are global– Used to enter data into a large matrix– Entry errors can be easily edited

• Function files– Provide extensibility to MATLAB– Create new functions specific to a problem– Variables are local– We can however declare them global if so desired.

Page 18: What is MATLAB ?

Function filesExample

function a = randint(m,n)a= floor (10 * rand(m,n)

Place in a file called randint.mfirst line declares function name,input arguments and output argumentswithout this line the file would be a script file

A statement z = randint(4,5) will pass 4,5 to m,n in the function file with the output result passed to variable z.

Page 19: What is MATLAB ?

Function file (contd.)

• Example 2– Function [mean, stdev] = stat (x);– [m,n] = size(x);– If m == 1– M = n;– End– Mean = sum(x)/m– Stdev = sqrt (sum(x.^2)/m – mean.^2);

• % to write comment statements

Page 20: What is MATLAB ?

Text Strings, error messages, inputHardcopy

• Text Strings – use single quotes• Use disp to display text strings• Use error to display error messages• Use input to interactively input data • Use diary to get a hardcopy

– To turn off use diary off

Page 21: What is MATLAB ?

Graphics• Use plot to create linear x,y plots

– x = -4:0.1:4; y = sin(x); plot (x,y)– x = -1.5:0.01:1.5; y = exp(-x.^2); plot (x,y)– t = 0:.001:2*pi;x=cos(3*t);y=sin(2*t),plot(x,y)

• Use shg to see the graphics screen• Labelling

– Title xlabel ylabel gtext text axis– Default is auto scaling

• Multiple plots – Hold

• Linetypes and pointtypes

Page 22: What is MATLAB ?

Graphics (contd.)

• 3-D mesh plots– Use function mesh

• 3-D perspective of elements of matrix z• Mesh (eye(10))• xx = -2:.1:2;yy=xx;[x,y] = meshdom(xx,yy);z =

exp(-x.^2 - -y.^2);mesh(z)