Engineering Computation
ENGR 2304
Matrices
Matrices
Chapter 4
Objectives
After studying this chapter you should
be able to:
Manipulate matrices
Extract data from matrices
Solve problems with two variables
Explore some of the special matrices built
into MATLAB
Section 4.1
Manipulating Matrices
Well start with a brief review
To define a matrix, type in a list of
numbers enclosed in square brackets
Remember that we can define a matrix
using the following syntax
A=[3.5]
B=[1.5, 3.1] or
B=[1.5 3.1]
C=[-1, 0, 0; 1, 1, 0; 0, 0, 2];
2-D Matrices can also be entered by
listing each row on a separate line
C = [-1, 0, 0
1, 1, 0
1, -1, 0
0, 0, 2]
Use an ellipsis to continue a
definition onto a new line
F = [1, 52, 64, 197, 42, -42,
55, 82, 22, 109];
Scalar
Vector the
commas are
optional
2-D matrix
These
semicolons
are optional
You can define a matrix using other
matrices as components
Or
Indexing Into an Array allows you to
change a value
Adding Elements
If you add an element
outside the range of the
original array, intermediate
elements are added with a
value of zero
4.1.2 Colon Operator
Used to define new matrices
Modify existing matrices
Extract data from existing matrices
Evenly spaced vector
The default spacing is 1
User specified spacing
The spacing is specified as 0.5
The colon can be used to represent
an entire row or column
All the rows in column 1
All the rows in column 4
All the columns in row 1
You dont need to extract an entire
row or column
Rows 2 to 3, all the
columns
Or
Rows 2 to 3, in
columns 4 to 5
A single colon transforms the
matrix into a column
MATLAB is column
dominant
Indexing techniques
To identify an element in a 2-D matrix
use the row and column number
For example element M(2,3)
Element M(2,3) is in row
2, column 3
Or use single value
indexing
M(8) is the same
element as M(2,3)
Element #s
10 13
11 14
12 15
The word end signifies the last
element in the row or column
Row 1, last element
Last row, last element
Last element in the
single index
designation scheme
Section 4.2
Problems with Two Variables
All of our calculations thus far have
only included one variable
Most physical phenomena can vary
with many different factors
We need a strategy for determining
the array of answers that results with
a range of values for multiple
variables
Two scalars give a scalar result
A scalar and a vector give a vector
result
When you multiply two vectors together, they
must have the same number of elements
Array multiplication gives a result the
same size as the input arrays
x and y must be
the same size
Results of an element by element
(array) multiplication
x
1
y
1.0
1.5
2.0
3
6
2.5
3.0
10
?
15
The meshgrid function maps two vectors onto
a 2-D grid
Now the arrays are the same size, and
can be multiplied
Example 4.2
Distance to the Horizon
Distance to
the horizon
Radius
of the
earth
Height of the
mountain
Distance to the
horizon, d
Radius of the
earth, R
Radius plus the
height of the
mountain, R+h
State the problem
Find the distance to the horizon from
the top of a mountain on the moon
and on the earth
Describe the Input and Output
Input
Radius of the Moon 1737 km
Radius of the Earth 6378 km
Mountain elevation 0 to 8000km
Output
Distance to the horizon in km
Hand Example
R 2 d 2 ( R h) 2
h 2 2 Rh
Pythagorean theorum
Solve for d
Using the radius of the earth, and an 8000
meter mountain. (Remember 8000m = 8 km)
d (8km) 2 2 * 6378km * 8km 319km
MATLAB Solution
Executing the M-file gives
Test the Solution
Compare the results to the hand
solution
Section 4.3
Special Matrices
zeros
Creates a matrix of all zeros
ones
Creates a matrix of all ones
diag
Extracts a diagonal or creates an identity matrix
magic
Creates a magic matrix
With a single input a square matrix is
created with the zeros or ones function
Two input arguments specify the
number of rows and columns
The diag function
When the input
argument to the
diag function is a
square matrix,
the diagonal is
returned
The diag function
When the input is a vector, it is used as the
diagonal of an identity matrix
Magic Matrices
This woodcut
called
Melancholia was
created by
Albrect Durer, in
1514. It contains
a magic matrix
above the
angels head
Albrect
Durer
included
the date in
this magic
matrix.
The Durer matrix is different from
MATLABs 4x4 magic matrix
Durer switched these
two columns to make
the date work out
Summary
Matrices can be created by
combining other matrices
Portions of existing matrices can be
extracted to form smaller matrices
Summary The colon operator
The colon operator
can be used to create evenly spaced
matrices
can be used to extract portions of
existing matrices
can be used to transform a 2-D matrix
into a single column
Summary - Meshgrid
Meshgrid is an extremely useful
function that can be used to map
vectors into two dimensional matrices
This makes it possible to perform array
calculations with vectors of unequal size
Summary Special Matrices
zeros creates a matrix composed of all
zeros
ones creates a matrix composed of all
ones
diag extracts the diagonal from a square
matrix or can be used to create a square
matrix identity matrix
magic creates a magic matrix
Any
Question
s