200 likes | 422 Views
Matlab. http://www.mathworks.com/academia/student_version/doc_r14.html Cost: $100 Available in labs on Windows and Unix machines. What is Matlab?.
E N D
Matlab http://www.mathworks.com/academia/student_version/doc_r14.html Cost: $100 Available in labs on Windows and Unix machines.
What is Matlab? • high-performance language for technical computing. It integrates computation, visualization, and programming in an easy-to-use environment where problems and solutions are expressed in familiar mathematical notation.
Uses • Math and computation • Algorithm development • Data acquisition • Modeling, simulation, and prototyping • Data analysis, exploration, and visualization • Scientific and engineering graphics • Application development, including graphical user interface building
Basic Idea • Particularly useful for problems that can be cast into matrix, vector form • MATLAB=Matrix Laboratory • Starting matlab • Windows: double click on icon • Unix: type matlab at the prompt
Basics: Matlab • Use as a calculator • No compiling • Interactive or through an .m script • Direct access to the variables in memory: who? • Syntax • Set work directory for m scripts.
Enter Matrices • Enter an explicit list of elements. • Load matrices from external data files. • Generate matrices using built-in functions. • Create matrices with your own functions in M-files.
Durer’s matrix example • Page 4-3 • How to enter matrix • Matlab has built in function to manipulate matrix • Sum • Diag • Tranpose with prime • Subsripts use • Acces individual matrix elements
Expressions • “Variables” on page 4-10 • “Numbers” on page 4-11 • “Operators” on page 4-11 • “Functions” on page 4-12
Variables and numbers • Examples of number Integer, real: 3 -99 0.0001 Scientific: 9.6397238 1.60210e-20 6.02252e23 Imaginary: 1i -3.14159j 3e5i • Like any other language matlab can assign variables and change them • N=32; M=N etc…..
Operators • + Addition • - Subtraction • * Multiplication • / Division • \ Left division (described in “Matrices and LinearAlgebra” in the MATLAB documentation) • ^ Power • ' Complex conjugate transpose • ( ) Specify evaluation order
Functions • Many functions avaliable • Sin,cos, tan • Exp • Bessel • Help elfun • Help specfun • Help elmat
Working with Matrices • “Generating Matrices” on page 4-14 • “The load Function” on page 4-15 • “M-Files” on page 4-15 • “Concatenation” on page 4-16 • “Deleting Rows and Columns” on page 4-17
Linear Algebra • A=A+A’ • Determinant: det(A) • Inverse: inv(A) • Eigenvalue eig(A) • Matrix-vector produce • V=ones(4,1) • A*v
Arrays • + Addition • - Subtraction • .* Element-by-element multiplication • ./ Element-by-element division • .\ Element-by-element left division • .^ Element-by-element power • .' Unconjugated array transpose
Graphics • very important for visualization of results: not available in any other tool. • help graphics • plot opens in figure • edit with gui (5-15 and further) • subplot • plot to file
Basic plotting functions • “Creating a Plot” on page 5-38 • “Multiple Data Sets in One Graph” on page 5-40 • “Specifying Line Styles and Colors” on page 5-41 • “Plotting Lines and Markers” on page 5-41 • “Imaginary and Complex Data” on page 5-43 • “Adding Plots to an Existing Graph” on page 5-44 • “Figure Windows” on page 5-46 • “Multiple Plots in One Figure” on page 5-46 • “Controlling the Axes” on page 5-48 • “Axis Labels and Titles” on page 5-49 • “Saving Figures” on page 5-51
Mesh and surface plots • Will be used in this class • Meshes are required for numerical computations. • meshgrid: transforms the domain specified by a single vector or two vectors x and y into matrices X and Y for use in evaluating functions of two variables.
Progamming • “if” on page 6-2 • “switch and case” on page 6-4 • “for” on page 6-5 • “while” on page 6-6 • “continue” on page 6-6 • “break” on page 6-7
Animations • matlabinto_anim.m