Presentation is loading. Please wait.

Presentation is loading. Please wait.

Matlab Training Session 2: Matrix Operations and Relational Operators

Similar presentations


Presentation on theme: "Matlab Training Session 2: Matrix Operations and Relational Operators"— Presentation transcript:

1 Matlab Training Session 2: Matrix Operations and Relational Operators

2 Course Outline Weeks: Introduction to Matlab and its Interface (Jan ) Fundamentals (Operators) Fundamentals (Flow) Importing Data Functions and M-Files Plotting (2D and 3D) Statistical Tools in Matlab Analysis and Data Structures Course Website:

3 Fundamentals of Matlab 1
Week 2 Lecture Outline Fundamentals of Matlab 1 Week 1 Review B. Matrix Operations: The empty matrix Creating multi-dimensional matrices Manipulating Matrices Matrix Operations C. Operators Relational Operators

4 Week 1 Review Working with Matrices
c = or c = [5.66] c is a scalar or a 1 x 1 matrix  x = [ 3.5, 33.22, 24.5 ] x is a row vector or a 1 x 3 matrix  x1 = [ 2 5 3 -1] x1 is column vector or a 4 x 1 matrix A = [ ] A is a 4 x 3 matrix

5 Week 1 Review Indexing Matrices
A m x n matrix is defined by the number of m rows and number of n columns An individual element of a matrix can be specified with the notation A(i,j) or Ai,j for the generalized element, or by A(4,1)=5 for a specific element. Example: >> A = [ ; ] A is a 2 x 4 matrix >> A(2,1) Ans 6

6 Week 1 Review Indexing Matrices
Specific elements of any matrix can be overwritten using the matrix index Example: A = [ ] >> A(2,1) = 9 Ans ]

7 Week 1 Review Indexing Matrices A = [1 2 4 5 6 3 8 2]
The colon operator can be used to index a range of elements >> A(1,1:3) Ans 1 2 4

8 Matrix Indexing Cont.. Indexing Matrices A = [1 2 4 5 6 3 8 2]
The colon operator can index all rows or columns without setting an explicit range >> A(:,3) Ans 4 8 >> A(2,:) Ans

9 B. Matrix Operations

10 Matrix Operations Indexing Matrices
An empty or null matrix can be created using square brackets >> A = [ ] ** TIP: The size and length functions can quickly return the number of elements and dimensions of a matrix variable

11 Matrix Operations Indexing Matrices A = [1 2 4 5 6 3 8 2]
The colon operator can can be used to remove entire rows or columns >> A(:,3) = [ ] A = [1 2 5 6 3 2] >> A(2,:) = [ ] A = [1 2 5]

12 Matrix Operations Indexing Matrices A = [1 2 4 5 6 3 8 2]
However individual elements within a matrix cannot be assigned an empty value >> A(1,3) = [ ] ??? Subscripted assignment dimension mismatch.

13 N – Dimensional Matrices
A = [ B = [ ] ] Multidimensional matrices can be created by concatenating 2-D matrices together The cat function concatenates matrices of compatible dimensions together: Usage: cat(dimensions, Matrix1, Matrix2)

14 N – Dimensional Matrices
Examples A = [ B = [ ] ] >> C = cat(3,[1,2,4,5;6,3,8,2],[5,3,7,9;1,9,9,8]) >> C = cat(3,A,B)

15 Matrix Operations Scalar Operations
Scalar (single value) calculations can be can performed on matrices and arrays Basic Calculation Operators + Addition - Subtraction * Multiplication / Division ^ Exponentiation

16 Matrix Operations Scalar Operations
Scalar (single value) calculations can be performed on matrices and arrays A = [ B = [1 C = 5 ] 3 3] Try: A + 10; A * 5; B / 2; A.^C; A*B

17 Matrix Operations Scalar Operations
Scalar (single value) calculations can be performed on matrices and arrays A = [ B = [1 C = 5 ] 3 3] Try: A + 10 A * 5 B / 2 A^C What is happening here?

18 Matrix Operations Matrix Operations Addition and Subtraction
Matrix to matrix calculations can be performed on matrices and arrays Addition and Subtraction Matrix dimensions must be the same or the added/subtracted value must be scalar A = [ B = [1 C = D = [ ] ] 3 3] Try: >>A + B >>A + C >>A + D

19 Matrix Operations Matrix Multiplication
Built in matrix multiplication in Matlab is either: Algebraic dot product Element by element multiplication

20 Matrix Operations The Dot Product
The dot product for two matrices A and B is defined whenever the number of columns of A are equal to the number of rows of b A(x1,y1) * B(x2,y2)

21 Matrix Operations The Dot Product
The dot product for two matrices A and B is defined whenever the number of columns of A are equal to the number of rows of b A(x1,y1) * B(x2,y2)

22 Matrix Operations The Dot Product
The dot product for two matrices A and B is defined whenever the number of columns of A are equal to the number of rows of b A(x1,y1) * B(x2,y2)

23 Matrix Operations The Dot Product
The dot product for two matrices A and B is defined whenever the number of columns of A are equal to the number of rows of b A(x1,y1) * B(x2,y2) = C(x1,y2)

24 Matrix Operations The Dot Product A(x1,y1) * B(x2,y2) = C(x1,y2)
A = [ B = [ D = [ E = [ ] 6 3] ] 3 3] Try: >>A * D >>B * E >>A * B

25 Matrix Operations Element by Element Multiplication
Element by element multiplication of matrices is performed with the .* operator Matrices must have identical dimensions A = [ B = [ D = [ E = [ ] 6 3 ] ] 3 3] >>A .* D Ans = [ 2 4 12 6]

26 Matrix Operations Matrix Division
Built in matrix division in Matlab is either: Left or right matrix division Element by element division

27 Matrix Operations Left and Right Division
Left and Right division utilizes the / and \ operators Left (\) division: X = A\B is a solution to A*X = B Right (/) division: X = B/A is a solution to X*A = B Left division requires A and B have the same number of rows Right division requires A and B have the same number of columns

28 Matrix Operations Element by Element Division
Element by element division of matrices is performed with the ./ operator Matrices must have identical dimensions A = [ B = [ D = [ E = [ ] ] ] 3 3] >>A ./ D Ans = [ ]

29 Matrix Operations Element by Element Division
Any division by zero will be returned as a NAN in matlab (not a number) Any subsequent operation with a NAN value will return NAN

30 Matrix Operations Matrix Exponents
Built in matrix Exponentiation in Matlab is either: A series of Algebraic dot products Element by element exponentiation Examples: A^2 = A * A (Matrix must be square) A.^2 = A .* A

31 Matrix Operations Shortcut: Transposing Matrices
The transpose of a matrix is the matrix formed by interchanging the rows and columns of a given matrix A = [ B = [1 ] 3 3] >> transpose(A) >> B’ A = [ B = [ ] 2 3 4 8 5 2]

32 Matrix Operations Other handy built in matrix functions Include:
inv() Matrix inverse det() Matrix determinant poly() Characteristic Polynomial kron() Kronecker tensor product

33 C. Relational Operators

34 Relational Operators Relational Operators < less than
Relational operators are used to compare two scaler values or matrices of equal dimensions Relational Operators < less than <= less than or equal to > Greater than >= Greater than or equal to == equal ~= not equal

35 Relational Operators Comparison occurs between pairs of corresponding elements A 1 or 0 is returned for each comparison indicating TRUE or FALSE Matrix dimensions must be equal! >> 5 == 5 Ans 1 >> 20 >= 15

36 Relational Operators A = [1 2 4 5 B = 7 C = [2 2 2 2 6 3 8 2] 2 2 2 2]
] ] Try: >>A > B >> A < C

37 Relational Operators The Find Function
The ‘find’ function is extremely helpful with relational operators for finding all matrix elements that fit some criteria A = [ B = C = [ D = [ ] ] ] The positions of all elements that fit the given criteria are returned >> find(D > 0) The resultant positions can be used as indexes to change these elements >> D(find(D>0)) = D = [ ]

38 Relational Operators The Find Function
A = [ B = C = [ D = [ ] ] ] The ‘find’ function can also return the row and column indexes of of matching elements by specifying row and column arguments >> [x,y] = find(A == 5) The matching elements will be indexed by (x1,y1), (x2,y2), … >> A(x,y) = 10 A = [ ]

39 Getting Help Help and Documentation Digital Hard Copy
Accessible Help from the Matlab Start Menu Updated online help from the Matlab Mathworks website: Matlab command prompt function lookup Built in Demo’s Websites Hard Copy Books, Guides, Reference The Student Edition of Matlab pub. Mathworks Inc.


Download ppt "Matlab Training Session 2: Matrix Operations and Relational Operators"

Similar presentations


Ads by Google