# Matrix Concepts and MATLAB Matrix Computations

**(Engineering Analysis and MATLAB 7 - Chapter 5 p
92-100, Chapter 6 p 142-145, Chapter 9 p 247-260,
Chapter 10 276-278)
MATLAB Linear Interpolation (Engineering Analysis and MATLAB 7 - Chapter 11 p.
291-299)**

**Topics:**

1. Matrix concepts - review some old ones and introduce some new ones

2. Introduce solving systems of linear equations using MATLAB matrix computations

3. Concept of interpolation and how it is handled in MATLAB

**Notes:**

-We have spent the first four weeks developing engineering problem solving methods , building a

foundation of programming concepts, and developing your foundation of MATLAB skills

- I have spoken often about how MATLAB is built for matrix operations but we have mostly used it in

calculations involving scalars (single value 1x1 array) and vectors (1 x n or n x 1 array), both

considered 1 dimensional arrays

Lets review what we have learned about the MATLAB matrices we have been using during our

programming thus far:

**Chapters 5, 6, and 8**

- User generated arrays:

o X= 4 is a scalar (1 x 1 array)

o Row vector x=[2,4,6,8] Column vector y=[1;2;3;4]

o x(1) returns?

o x = [2,4,6,8;10,12,14,16;18,20,22,24] is a 4x3 matrix

indices are

o What value is x(5) =?

o See example below

>> x=[2,4,6,8;10,12,14,16;18,20,22,24]

>> x(5) %can get a value from a particular location

>> x(5)=100 % can replace a value with another number

o How about in an equation?

>> y= x(5)*500

y =

50000

o Can use this in outputting data as well

> fprintf ('this example should output x(5) %4.3f',x(5))

this example should output x(5) 100.000

Time savers and commands

o Evenly spaced vector time saver B=1:5 or B=[1:5] (colon separator)

o If you want them spaced a certain way time = 0:2:100 gives a vector between 0
and 100

in steps of 2

o ** linspace** - used if you want a certain amount of elements between 2
numbers

>> r=linspace(0,14,5)

-But when do we use 2 dimensional arrays or matrices? They
can store data in rows and columns.

These matrices play an important role in linear algebra and are used in science
and engineering to

describe many physical quantities.

**Consider an electrical circuit (p 253):**

- Based on two basic electrical facts:

Σ voltages around circuit = 0 and V = iR

- And assuming we know the voltage (V) and all of the resistances (R), we can
solve for all of the

values of the current by evaluating each loop - we will have** 3 equations and
3 unknowns. (See
details p 258)**

Can you see the matrix here? How about 3 arrays? We can
solve these simultaneously for using

matrices in various ways.

-Consider a simpler system of equations:

This system of equations can be written as AX=B. Simplify
by replacing x with with
and z

with

Replacing the coefficients with A and B yields:

can be written in matrix form as: |

or in matrix notation as AX=B.

Replacing the numerical coefficients yields:

A = the 3x3 matrix, X = the column vector
, and B = the column vector 10,5,1

**MATLAB can solve this for and
! We will discuss this in lab!
Chapter 9 Mathematical Operations with Arrays - we need to be familiar with
these**

These operations between Arrays can be different than standard arithmetic operations . Scalars can be

added, subtracted, multiplied and divided into matrices according to standard operations

>> 5/x

??? Error using ==> mrdivide

Matrix dimensions must agree.

>> x/5

**• Matrix addition and subtraction :** Add or subtract
the corresponding elements of two arrays of

identical size, e.g.,

- Matrix addition is commutative, i.e., A+ B=B+ A

- When scalar is added or subtracted to an array , it is added to or subtracted
from each element in

the array

**• Array multiplication: **Only possible when the # of columns in the first
array is equal to # of rows

in second array, e.g., when A*B=AB

- Matrix multiplication is not commutative, i.e., A*B≠B*A

- Resulting matrix has same # of rows as first matrix and same # of columns as
second matrix

- When an array is multiplied by a scalar or number (or a 1×1 matrix), each
element in the array

is multiplied by that quantity (multiplication of a matrix with a scalar is a
commutative

property )

- Two vectors can be multiplied only if both have same # of elements and one is
row and the

other column vector; the result is a 1×1 matrix or scalar; can use built-in
Matlab function dot

(a, b) to calculate the product of vectors a and b

- Linear algebra rules of array multiplication can be used to write a system of
linear equations as

shown below

can be written in matrix form as |

or in matrix notation as AX=B

**• Array division: More complicated than multiplication
Inverse of matrix:** Matrix B is an
inverse of matrix A, if when multiplied, they yield an

identity matrix, i.e., BA=AB=I

- Only applicable to square matrices

- Inverse of A (A

^{-1}) in MATLAB is written as A^-1 or inv(A)

- Only square matrices with non- zero determinants have inverses

****

**Left division**(\): When B and X are both column vectors and A an array, where AX=B,

X=A\B

- Left division is used to solve linear equations

Right division (/): When X and D are row vectors and C an array, where XC=D, X=D/C

- Also used to solve linear equations

**• Because of the rules of linear algebra and arrays we have to use the “period” to conduct**

element-by-element operations:Addition and subtraction are already element by element.

element-by-element operations:

However, multiplication and division may be both between arrays (discussed earlier) and between

elements.

Arithmetic operators are: a.*b, a./b, a.\b, and

**a.^b (this can trick you when using scalars)**

- Note that the period always precedes the arithmetic operator

- Do NOT have to use the dot (.) before addition and subtraction signs or when multiplying

or diving by a scalar (it will still work though)

- Built-in functions for analyzing arrays: sum, mean, max, min, det, inv, cross, and dot are

also useful .

Example of raising a matrix to a power

>> x^2

??? Error using ==> mpower

Matrix must be square.

>> x.^2

**In lab today - will discuss solving simultaneous equations
using matrix operations, the
SOLVE Function, and interpolation**

Prev | Next |