Transcript Document 1333610
MATLAB FUNDAMENTALS:
MATRIX/ARRAY FUNCTIONS THE COLON MATRIX/ARRAY MANIPULATION INPUT/OUTPUT HP 100 – MATLAB Wednesday, 9/3/2014 www.clarkson.edu/class/honorsmatlab
Before We Begin:
Any Questions? Comments? Concerns?
Feel free to contact Joe or Jim We can set up small group tutoring or one-on-one You can email us with any questions or concerns We are here for you! Even if it isn't about MATLAB
Quote/Video of the Week
“ English is ambiguous. If someone said, ‘ The horse flies like the devil, ’ they could either be advising me on a horse race, or merely commenting on the rising tide of Satanism among some insects.
” - Professor Felland Foundations of Mathematics https://www.youtube.com/watch?v=I15bDqhkxwE
Matrix/Array Functions
A = [1 1 1; 1 1 1]
A = 1 1 1 1 1 1
B = [0 0; 0 0; 0 0]
B = 0 0 0 0 0 0
C = [1 1; 1 1]
C = 1 1 1 1
Matrix/Array Functions
A = ones(2,3)
A = 1 1 1 1 1 1
B = zeros(3,2)
B = 0 0 0 0 0 0
C = ones(2)
C = 1 1 1 1
Matrix/Array Functions
Built in Commands/Functions: See Tables 3.5,6,7 max : Maximum Value min : Minimum Value mean median sum prod : Mean Value : Median Value : Sum of Vector : Product of Vector
Matrix/Array Functions
Sorting Functions sort sortrows Size Functions size length Table 3.8
Table 3.9
Dimensions of Array Largest Dimension
Special Values / Misc.
The following have special meanings: pi - The constant 3.141592 … i,j Inf - Imaginary Number - Infinty, or overflow NaN - Not a number, Undefined (0/0) clock - [year month day hour minute seconds] date
The Colon Operator
Used for: Creating Vectors Referencing arrays Future applications [loops]
Creating Vectors
A = [2 4 6 8 10 12]
A = 2 4 6 8 10 12
B = [2:2:12]
B = 2 4 6 8 10 12
C = [4:6:30]
C = 4 10 16 22 28
The Colon Operator Let:
A = 2 9 -3 10 -4 13 1 6
A(2,3) = A(1, :) = A(:, 3) = A(:, 1:2:4) =
The Colon Operator Built-in function –
A =
end
4 7 13 5 2 6 1 9 8
A(:,end)= [13; 6; 8] A(end,end) = 8 diag(A) = [4; 2; 8]
Matrix/Array Manipulation
You can define new arrays or matrices in terms of other arrays or matrices.
This can be tricky, but always try to say it out loud and visualize what is happening.
I/O – Input / Output
Definition: Hardcoding: Setting variables equal to particular numbers in the code.
Example: Calculate the square root of a number.
number = 100; sqrt_of_number = sqrt(number); The code snippet always calculates the square root of 100, unless you manually change the code.
What if we want to do it for the number the user chooses (whomever is using your program/code)?
I/O – Input / Output
Methods: Ask the user for input through the command window.
Load data from files.
Function inputs (We will get to this in a few weeks.) Input Command: number = input('Please Specify a Number: ');
I/O – Input / Output
Loading data from files: Many different ways, depending on what type of file it is. We do this in the future.
Use the load command.
I/O – Input / Output
Calculations, Manipulation, Calculations… We Still need to display our Results Methods: Display in the command window Good for quick solutions, small amount of data.
Commands: disp fprintf Write the results to a file.
Great for processing and saving lots of information.
A bit harder to do, can be highly customized.
Commands: fprintf save
I/O – Input / Output
Command: disp Example: x = 5; Converts a number to a string.
disp(x); disp(['The value of x is ' num2str(x) ‘ . Cool Ehh?
’ ]); Tells MATLAB to combine everything inside together into an array, in this case, a character array Things inside of single quotation marks are strings, or just simply text (stored as plain text)
I/O – Input / Output
Command: fprintf This can be used to either print out to the command window or write to a file.
This is saved for your own reading/learning.
It ’ s another way to display, also. It allows for more formatting and pretty outputs
Example Code Time
The Golf Ball Example Please take note of lots of little things that are done, they add to the readability and to the end results being pretty Problem Description: Calculate the X-Position and Y-Position of a golf ball hit with an initial speed and angle. Assume constant acceleration from gravity and no drag. Also find the maximum height and display the results.
Homework
Please review/read: Chapter 3, Chapter 4 It is very important to review the tables indicated and go through the example problems.
Please do: 3.4, 4.1, 4.6
Before you go…
Do Problem 4.1 in the book