Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 1: Matlab Universe

Similar presentations


Presentation on theme: "Lecture 1: Matlab Universe"— Presentation transcript:

1 Lecture 1: Matlab Universe
Tom Rebold ENGR 196.3

2 Course Overview

3 The Way the Class Works I lecture for 15 – 20 minutes
You do lab for 30 – 40 minutes Labs link to extra Problems online for fast students Everyone turn in a solution to the last problem they solve today HOMEWORK: Bring in 3 Math problems to solve…medium, hard, impossible We’ll have independent study time

4 To Buy Matlab Student Version, $100 Can purchase, download online
Link from ENGR196.3 class webpage Bookstore does not stock MATLAB retails for $1600, so it’s a pretty good deal

5 Why MATLAB Compared to other choices:
C++, Fortran, Java Excel, MathCad, Mathematica, Labview Matlab is a Very High Level Language Designed for complex numerical calculations Vast array of Toolboxes for different specialties Excellent visualization tools Symbolic math somewhat awkward Simulink for modelling dynamic systems

6 Today’s Agenda MATLAB Overview Working in MATLAB’s Environment
Simple calculations, variables Vectors, Matrices, Plotting Applications—Problem Solving Systems of equations Analyzing a data file 3D Plotting

7 MATLAB’s ENVIRONMENT

8 Download week1.zip Follow instructions in Lab1 View toolbox demos
Experiment with workspace configuration

9 Numeric Data At it’s most basic level, Matlab can be used as a simple calculator, by typing in an arithmetic expression and hitting enter. For example, at the command prompt, type: >> 8/10 >>4 * 3 >>8/10 + 4*3 >>9^ (what does the ^ operator do? )

10 Arithmetic rules of precedence
>> 8 + 3*5 >> 8 + (3*5) >> (8 + 3) * 5 >> 4^2 – 12 >> 8/4*2 >> 8/(4*2) >> 3*4^2 >> (3*4)^2 >> 27^(1/3) >> 27^1/3

11 built in functions Matlab has hundreds of built in functions to do more complicated math sqrt(9) log10(1000) log(10) pi cos(pi) i exp(i*pi)

12 Variables Usually we need to hang on to the result of a calculation
We need a way to name memory for storage Variable--name of a place in memory where information is stored r = 8/10 r s=20*r score = 4 * r + s z = sqrt(1000) z = sqrt(s)

13 Assignment Operator = means “gets” Translation: OK in Math
MATLAB: r = 8/10 ENGLISH: r “gets” the value 8/10 OK in Math x + 2 = NOT OK IN MATLAB !! (only variable on Left Side)

14 Expressing Math in MATLAB
2 yx _______________ x-y 3x _______________ 2y

15 Saving Work in Matlab Script (.m) files
You’ll want to build up complex calculations slowly Try, correct, try again, improve, etc .m Files store your calculations Can be edited in Matlab Can be re-executed by typing the file name

16 Example .m file Volume of a Cylinder. The volume of a cylinder is V= pr2h. A particular cylinder is 15 meters high with a radius of 8 meters. We want to construct another cylinder tank with a volume 20% greater, but with the same height. How large must its radius be? The session follows: r = 8; h = 15; V = pi*r^2*h V = V + 0.2*V  adds 20% to V r = sqrt(V/ (pi * h)) Put this in a file called cyl_volume.m to save retyping

17 Finish Section IV If you finish early, please follow the link to practice problems online

18 Vectors Matlab has a very concise language for dealing with vectors (arrays of data) scalar: x = 3 vector: x = [ ] A vector is a series of data grouped together Row Vectors and Column Vectors Transpose operator Functions and Arithmetic with vectors Colon operator Multiplication—cell by cell vs ‘dot product’

19 Finish Section V If you finish early, please follow the link to practice problems online

20 Basic Plotting Experimental Results Mathematical Formulas
v = [20:10:70]; d = [46, 75, 128, 201, 292, 385]; plot(v, d); Mathematical Formulas x=[0:0.01:2]; y=exp(-3*x).*sin(8*pi*x);  .* is needed here plot(x,y); Both involve using plot( ) on vectors

21 Finish Section VI Play with multiple plots, linetypes, etc
If you finish early, please follow the link to practice problems online

22 VII Application: Polynomial Math
We can represent polynomials by vectors of coefficients, for example: x3 – 9x2 + 2x represented by [ ] Matlab provides commands to calculate Roots Multiplication and division of polynomials Example on structural resonance online More problems online

23 VIII Matrices A matrix is a 2 dimensional vector Useful tools:
Useful tools: Transpose Cell address Merging and extracting vectors multiplication

24 IX Application: Systems of Equations
A common occurrence, need to solve a system of simultaneous equations: 3x + 4y + 5z = 32 21x + 5y + 2z = 20 x – 2y + 10z = 120 A solution is a value of x, y, and z that satisfies all 3 equations In general, these 3 equations could have 1 solution, many solutions, or NO solutions

25 Using Matlab to Solve Simultaneous Equations
Set up the equation in matrix/vector form: A = [3 4 5; ; ] u = [ x y z]’ b = [ ]’ In other words, A u = b (this is linear algebra) x y z 32 20 120 * =

26 The solution uses matrix inverse
If you multiply both sides by 1/A you get u = 1/A * b In the case of matrices, order of operation is critical (WRONG: u = b/A ) SO we have “Left division” u = A \ b (recommended approach) OR use inv( ) function: u = inv(A) * b

27 The solution >> u = A\b u = 1.4497 ( value of x)
( value of y) ( value of z) You can plug these values in the original equation test = A * u and see if you get b

28 Caution with Systems of Eqs
Sometimes, Matrix A does not have an inverse: This means the 3 equations are not really independent and there is no single solution (there may be an infinite # of solns) Take determinant det(A) if 0, it’s singular x y z 32 10 22 * =

29 Application: Analyze Data from A Real Science Project

30

31

32

33

34

35

36 Data Files

37

38

39


Download ppt "Lecture 1: Matlab Universe"

Similar presentations


Ads by Google