Docstoc

Introduction to MATLAB

Document Sample
Introduction to MATLAB Powered By Docstoc
					Introduction to MATLAB
Northeastern University: College of
Computer and Information Science

Co-op Preparation University (CPU)

            10/22/2003
     Overview for 10/22/2003
• Review of topics covered in last session
  (10/20/2003)

• Review of the MATLAB environment
  (covered in last session)

• Declaring and manipulating variables
• Useful functions
       Review of 10/20/2003
• Contact Information

• Course Overview

• MATLAB Overview
        Contact Information
• E-mail: wmason@ccs.neu.edu

• “Office Hours”: Wednesday after class

• Some information available:
  – http://www.ccs.neu.edu/home/wmason
         Course Overview
• Course Structure
          Course Structure
• Week 1: Overview of MATLAB
  – History of MATLAB
  – Overview of MATLAB environment
  – Discussion of MATLAB in co-op
• Week 2: Basic MATLAB
  – Simple MATLAB functionality
    • Syntax, Commands
  – Exercises involving basic MATLAB
    functionality
    Course Structure, con’t: 2
• Week 3: Advanced MATLAB Functionality
  – Beyond MATLAB as a calculator
  – The MATLAB programming language
  – Project showcasing MATLABs advanced
    functionality
 Meeting Times and Locations
• Week 1
  – Class 1
    • Monday, Oct. 20, 6 - 7 p.m., 257 CN
  – Class 2
    • Wednesday, Oct. 22, 6 - 7 p.m., 257 CN
  – Class 3
    • Thursday, Oct. 23, 6 - 7 p.m., 247 CN
   Meeting Times and Locations,
             con’t: 2
• Week 2
  – Class 1
    • Monday, Oct. 27, 6 - 7 p.m., 257 CN
  – Class 2
    • Wednesday, Oct. 29, 6 - 7 p.m., 257 CN
  – Class 3
    • Thursday, Oct. 30, 6 - 7 p.m., 247 CN
   Meeting Times and Locations,
             con’t: 3
• Week 3
  – Class 1
    • Monday, Nov. 3, 6 - 7 p.m., 257 CN
  – Class 2
    • Wednesday, Nov. 5, 6 - 7 p.m., 257 CN
  – Class 3
    • Thursday, Nov. 6, 6 - 7 p.m., 247 CN
               Coursework
• Collection of exercises:
  – Will occur during the second week
  – Will involve MATLABs basic functionality


• Final project:
  – Will occur during the final two sessions
  – Will cover MATLABs basic and advanced
    functionality
         History of MATLAB
• Ancestral software to MATLAB
  – Fortran subroutines for solving linear
    (LINPACK) and eigenvalue (EISPACK)
    problems
  – Developed primarily by Cleve Moler in the
    1970’s
   History of MATLAB, con’t: 2
• Later, when teaching courses in
  mathematics, Moler wanted his students to
  be able to use LINPACK and EISPACK
  without requiring knowledge of Fortran
• MATLAB developed as an interactive
  system to access LINPACK and EISPACK
   History of MATLAB, con’t: 3
• MATLAB gained popularity primarily
  through word of mouth because it was not
  officially distributed
• In the 1980’s, MATLAB was rewritten in C
  with more functionality (such as plotting
  routines)
   History of MATLAB, con’t: 4
• The Mathworks, Inc. was created in 1984
• The Mathworks is now responsible for
  development, sale, and support for
  MATLAB
• The Mathworks is located in Natick, MA
• The Mathworks is an employer that hires
  co-ops through our co-op program
              MATLAB GUI
• Launch Pad / Toolbox

• Workspace

• Current Directory

• Command History

• Command Window
       Launch Pad / Toolbox
• Will not be covered

• Launch Pad allows you to start
  help/demos

• Toolbox is for use with specialized
  packages (Signal Processing)
              Workspace
• Allows access to data

• Area of memory managed through the
  Command Window

• Shows Name, Size (in elements), Number
  of Bytes and Type of Variable
           Current Directory
• MATLAB, like Windows or UNIX, has a
  current directory

• MATLAB functions can be called from any
  directory

• Your programs (to be discussed later) are
  only available if the current directory is the
  one that they exist in
          Command History
• Allows access to the commands used
  during this session, and possibly previous
  sessions

• Clicking and dragging to the Command
  window allows you to re-execute previous
  commands
         Command Window
• Probably the most important part of the
  GUI

• Allows you to input the commands that will
  create variables, modify variables and
  even (later) execute scripts and functions
  you program yourself.
          Simple Commands
• who

• whos

• save

• clear

• load
                    who
• who lists the variables currently in the
  workspace.

• As we learn more about the data
  structures available in MATLAB, we will
  see more uses of “who”
                   whos
• whos is similar to who, but also gives size
  and storage information
• s = whos(...) returns a structure with these
  fields name variable name size variable
  size bytes number of bytes allocated for
  the array class class of variable and
  assigns it to the variable s. (We will
  discuss structures more).
                     Save
• save – saves workspace variables on disk

• save filename stores all workspace variables in
  the current directory in filename.mat

• save filename var1 var2 ... saves only the
  specified workspace variables in filename.mat.
  Use the * wildcard to save only those variables
  that match the specified pattern.
                  Clear
• clear removes items from workspace,
  freeing up system memory

• Examples of syntax:
  – clear
  – clear name
  – clear name1 name2 name3 ...
                    clc
• Not quite clear

• clc clears only the command window, and
  has no effect on variables in the
  workspace.
                    Load
• load - loads workspace variables from disk

• Examples of Syntax:
  – load
  – load filename
  – load filename X Y Z
Declaring a variable in MATLAB
• Not necessary to specify a type. (Such as
  int or float)

• Several kinds of variables:
  – Vector
  – Matrix
  – Structure
  – Cell array
  Declaring a variable, con’t: 2
• For an integer or floating point number:
  simply set a variable name equal to some
  character

• Ex. A = 5;
• Or A = 5
              Sidenote 1
• The presence or lack of a semi-colon after
  a MATLAB command does not generate
  an error of any kind

• The presence of a semi-colon tells
  MATLAB to suppress the screen output of
  the command
         Sidenote 1, con’t: 2
• The lack of a semi-colon will make
  MATLAB output the result of the command
  you entered

• One of these options is not necessarily
  better than the other
   Declaring a variable, con’t: 3
• You may now use the simple integer or
  float that you used like a normal number
  (though internally it is treated like a 1 by 1
  matrix)

• Possible operations:
  – +, -, /
  – Many functions (round(), ceil(), floor())
  Declaring a variable, con’t: 4
• You may also make a vector rather simply

• The syntax is to set a variable name equal
  to some numbers, which are surrounded
  by brackets and separated by either
  spaces or commas
• Ex. A = [1 2 3 4 5];
• Or A = [1,2,3,4,5];
  Declaring a variable, con’t: 5
• You may also declare a variable in a
  general fashion much more quickly

• Ex. A = 1:1:10
• The first 1 would indicate the number to
  begin counting at
• The second 1 would be the increase each
  time
• And the count would end at 10
   Declaring a variable, con’t: 6
• Matrices are the primary variable type for
  MATLAB

• Matrices are declared similar to the declaration
  of a vector

• Begin with a variable name, and set it equal to a
  set of numbers, surrounded by brackets. Each
  number should be seperated by a comma or
  semi-colon
  Declaring a variable, con’t: 7
• The semi-colons in a matrix declaration
  indicate where the row would end
• Ex. A = [ 1,2;3,4] would create a matrix
  that looks like
           [12
            34]
  Declaring a variable, con’t: 7
• Matrices may be used as normal variables
  now. Multiplying is already defined for
  matrices, and additional code does not
  need to be written.
  Declaring a variable, con’t: 8
• The final type of variable we will discuss
  today will be a struct.

• The command struct is used to create a
  structure

• Syntax:
  – s = struct('field1',{},'field2',{},...)
  – s = struct('field1',values1,'field2',values2,...)
   Declaring a variable, con’t 9
• A simple declaration of a structure is as
  follows:

Student.name = “Joe”;
Student.age = 23;
Student.major = “Computer Science”;
  Declaring a variable, con’t: 10
• Arrays of structures are possible.

• Taking the previous example, if one were to
  write:

Student(2).name = “Bill”
…etc

Then the array would be created for you.
 Declaring a variable, con’t: 11
• Structures can group information, but
  methods are not written for them.
Another satisfied MATLAB user!




          End

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:8
posted:2/13/2012
language:
pages:43