1 / 27

MA/CS 375

MA/CS 375. Fall 2003 Lecture 3. .* Multiplication. We can use the .* operator to perform multiplication entry by entry of two matrices:. ./ Division. We can use the ./ operator to perform division with the entries of A in the numerator and entries of B in the denominator. . Division.

bailey
Download Presentation

MA/CS 375

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MA/CS 375 Fall 2003 Lecture 3

  2. .* Multiplication • We can use the .* operator to perform multiplication entry by entry of two matrices:

  3. ./ Division • We can use the ./ operator to perform division with the entries of A in the numerator and entries of B in the denominator.

  4. .\ Division • We can use the .\ operator to perform division with the entries of A in the denominator and entries of B in the numerator.

  5. .^ Power • We can use the .^ operator to compute:

  6. Dot Operators and Matrices • We can also use the dot versions of multiplication, division… on matrices

  7. Quick Test • What does C equal??

  8. Solution: Recall: even though wechanged B on the last step,C does not change!!!.

  9. Functions in Matlab • Matlab has a number of built-in functions: • cos, sin, tan, acos, asin, atan • cosh, sinh, tanh, acosh, asinh, atanh • exp, log, sqrt • They all take matrices as arguments and return matrices of the same dimensions. • e.g. cos([1 2 3]) • For other functions type: > help matlab\elfun

  10. Example of Function of Vector

  11. Special Random Matrix Function • Say I want to create a 3 by 2 matrix with random entries, with each entry between 0 and 1: What will happen if I run this again?

  12. Customizing Matlab

  13. Changing Your “Working” Directory • First make a directory you want to do store your results in on the Desktop • Click on the … in the box next to the “Current Directory”

  14. cont • Next click on your directory (which should be somewhere on the desktop) • For following lectures bring a 3.5 inch floppy diskette

  15. Matlab is Yours to Command • It is very likely that you will need to use the same string of commands, over and over. • We can create an M-File which contains a set of commands which will be executed. • e.g. create a script file mygrid.m containing: x1d = linspace( 0, 1, Npts); y1d = linspace( 0, 1, Npts); [x2d, y2d] = meshgrid( x1d, y1d);

  16. Creating a Matlab M-File Click on: File/New/M-File

  17. Editing a Matlab M-File

  18. Saving Your M-File Make sure you save it in your “Working Directory”

  19. Calling Your Own Script

  20. Custom-Made Matlab Functions Say we wish to create a function that turns Cartesian coordinates into polar coordinates. We can create a text file with the following text. It can be called like any built in function. function [ radius, theta] = myfunc( x, y) % this is a comment, just like // in C++ % now create and evaluate theta (in radians) theta = atan2(y,x); % now create and evaluate radius radius = sqrt( x.^2 + y.^2);

  21. Make sure you that the Matlab current directory is set to the directory containing myfunc.m the arguments to myfunccould also have been matrices – leading to two matrices being output. Custom Built Function For Matlab

  22. Constraints on Custom-Built Matlab Functions • Matlab follows similar scope rules to C. • Without resorting to the Matlab command global the only variables available inside the function are those passed as arguments to the function, or created inside the function. • Just in case you are thinking about using global – I consider it poor programming…

  23. Loops in Matlab

  24. Loops in Matlab • Much like C or Fortran we can use a loop syntax to repeat a sequence of commands. • HOWEVER, Matlab is an interpreted language and as such is not efficient in executing loop operations. • In other words, using loops in Matlab is very slow!.

  25. Loops in Matlab One variant of Matlab loop syntax is: for var=start:end commands; end

  26. Say I want to add the numbers from 1 to 10, without using the Matlab intrinsic sum. Example of a Matlab Loop

  27. Summary of Lectures 2 and 3 • We have learnt how to: • run matlab • create matrices (and hence vectors) • set the entries of a matrix • add two matrices • subtract two matrices • multiply two matrices • loops • creating custom functions..

More Related