Upload
rocco
View
47
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Lecture 24: Rough and Ready Analysis. MATLAB uses function names consistent with most major programming languages. For example sqrt sin cos log. Function Input can be either scalars or matrices. Function Input can be either scalars or matrices. Some functions return multiple results. - PowerPoint PPT Presentation
Citation preview
Lecture 24: Rough and Ready Analysis
MATLAB uses function names consistent with most major programming languages
For example sqrt sin cos log
Function Input can be either scalars or matrices
Function Input can be either scalars or matrices
Some functions return multiple results
size function determines the number of rows and columns
You can assign names to the output
Nesting Functions
There are functions for almost anything you want to do
Use the help feature to find out what they are and how to use them From the command window From the help selection on the menu
bar
Elementary Math Functions
abs(x) absolute valuesign(x) plus or minusexp(x) ex
log(x) natural loglog10(x) log base 10
Rounding Functions
round(x)fix(x)floor(x)ceil(x)
Discrete Mathematics
factor(x)gcd(x,y) greatest common denominator
lcm(x) lowest common multiple
rats(x) represent x as a fraction
factorial(x)primes(x)isprime(x)
Trigonometric Functions
sin(x) sinecos(x) cosinetan(x) tangentasin(x) inverse sinesinh(x) hyperbolic sineasinh(x) inverse hyperbolic sinesind(x) sine with degree inputasind(x) inverse sin with degree output
Data Analysis
max(x)min(x)mean(x)median(x)sum(x)prod(x)sort(x)
When x is a matrix, the max is found for each column
max value
element number where the max value occurs
Returns both the smallest value in a vector x and its location in vector x.
Vector of maximums
Vector of row numbers
Returns a row vector containing the minimum element from each column of a matrix x, and returns a row vector of the location of the minimum in each column of matrix x.
Determining Matrix Sizesize(x) number of rows and columnslength(x) biggest dimension
Variance and Standard Deviation
std(x)var(x)
( )
11
2
2
−
−=∑
=
N
xN
kk μ
σ
Random Numbers
rand(n) Returns an n by n matrix of
random numbers between 0 and 1
rand(n,m) Returns an n by m matrix of
random numbers
These random numbers are evenly distributed
Manipulating Matrices
• Defining matrices• A matrix can be defined by typing in a list of numbers
enclosed in square brackets.• The numbers can be separated by spaces or
commas.• New rows are indicated with a semicolon.
A = [ 3.5 ];B = [1.5, 3.1]; or B =[1.5 3.1];C = [-1, 0, 0; 1, 1, 0; 0, 0, 2];
Manipulating Matrices
• Defining matrices• Define a matrix by using another matrix that has
already been defined.
• Reference an element in a matrix• Both row and column indices start from 1.
B = [1.5, 3.1]; S = [3.0, B]
S = [3.0, 1.5, 3.1]; T = [1 2 3; S]
S = 3.0 1.5 3.1 T = 1 2 3 3.0 1.5 3.1
S(2)
T(2, 3)
T(5)
The element value on row 2 and column 3 of matrix T
Count down column 1, then down column 2, and finally down column 3 to the correct element of matrix T.
Manipulating Matrices
• Change values in a matrix• S(2) = -1.0;
changes the 2nd value in the matrix S
from 1.5 to -1.0
• Extend a matrix by defining new elements.
S = 3.0 1.5 3.1 T = 1 2 3 3.0 1.5 3.1
S(4) = 5.5;Extend the matrix S to four elements instead of three.
S(8) = 9.5;Matrix S will have eight values, and the values of S(5), S(6), S(7) will be set to 0.
T(3, 3) = 10;T(4, 5) = 20;
Manipulating Matrices
• Using the colon operator• Define an evenly spaced matrix
H = 1:8 --- The default spacing is 1
time = 0.0:0.5:3.0 --- The middle value becomes the spacing.
• Extract data from matrices x = M( :, 1) --- extract column 1 from matrix M
y = M( :, 4) --- extract column 4 from matrix M
z = M(2, : ) --- extract row 2 from matrix M
a = M(2:3, : ) --- extract rows 2 and 3 from matrix M
b = M( :, 2:4) --- extract column 2 to column 4 from matrix M
c = M(2:3, 3:5) --- extract not whole rows or whole columns
from matrix M
• Converts a two dimensional matrix to a single column M( : )
M = 1 2 3 4 5 2 3 4 5 6 3 4 5 6 7
Practice QuestionQ. What is the output of the following program? int main (void) { int magicNumber = 25; if ( magicNumber < 70 ) { printf("The number is a bit low ... "); } if ( magicNumber > 100 ) { printf("The number is way too high ... "); } if ( magicNumber = 77 ) { /* note the single equal sign! */ printf("77 is a very lucky number. "); } if (magicNumber > 70 ) { printf("At least you are not TOO low."); } }
a.) The number is a bit low ... b.) The number is a bit low ... 77 is a very lucky number. c.) The number is a bit low ... 77 is a very lucky number. At least you are not TOO low. d.) The number is a bit low ... At least you are not TOO low. e.) The number is way too high …
Solu
tion
: C