SlideShare a Scribd company logo
Introduction to Matlab




                 By: İ.Yücel
    Özbek
Outline:
   What is Matlab?
   Matlab Screen
   Variables, array, matrix, indexing
   Operators (Arithmetic, relational, logical )
   Display Facilities
   Flow Control
   Using of M-File
   Writing User Defined Functions
   Conclusion
What is Matlab?
   Matlab is basically a high level language
    which has many specialized toolboxes for
    making things easier for us
   How high?
                      Matlab

                       High Level
                   Languages such as
                     C, Pascal etc.




                    Assembly
What are we interested in?
     Matlab is too broad for our purposes in this
      course.
     The features we are going to require is
                                 Matlab
  Series of
   Matlab
 commands
                                  Command
                   m-files                        mat-files
                                    Line


                  functions   Command execution          Data
       Input                  like DOS command         storage/
      Output                        window             loading
     capability
Matlab Screen
   Command Window
     type commands

   Current Directory
      View folders and m-files

   Workspace
      View program variables
      Double click on a variable
      to see it in the Array Editor

   Command History
     view past commands
     save a whole session
      using diary
Variables
   No need for types. i.e.,

         int a;
         double b;
         float c;

   All variables are created with double precision unless
    specified and they are matrices.
         Example:
         >>x=5;
         >>x1=2;

   After these statements, the variables are 1x1 matrices
    with double precision
Array, Matrix
   a vector           x = [1 2 5 1]

    x =
          1    2       5    1

   a matrix           x = [1 2 3; 5 1 4; 3 2 -1]

    x =
          1        2        3
          5        1        4
          3        2       -1

   transpose          y = x’             y =
                                                1
                                                2
                                                5
                                                1
Long Array, Matrix
         t =1:10

    t =
          1   2   3   4        5    6    7    8    9   10
         k =2:-0.5:-1

    k =
          2   1.5    1   0.5    0      -0.5   -1

         B   = [1:4; 5:8]

    x =
          1      2        3        4
          5      6        7        8
Generating Vectors from functions
   zeros(M,N) MxN matrix of zeros        x = zeros(1,3)
                                          x =
                                            0     0      0
   ones(M,N)   MxN matrix of ones
                                          x = ones(1,3)
                                          x =
                                            1     1     1
   rand(M,N)   MxN matrix of uniformly
                distributed random        x = rand(1,3)
                numbers on (0,1)          x =
                                           0.9501 0.2311 0.6068
Matrix Index
     The matrix indices begin from 1 (not 0 (as in C))
     The matrix indices must be positive integer
Given:




     A(-2), A(0)

     Error: ??? Subscript indices must either be real positive integers or logicals.

     A(4,2)
     Error: ??? Index exceeds matrix dimensions.
Concatenation of Matrices
     x = [1 2], y = [4 5], z=[ 0 0]

      A = [ x y]

           1     2   4    5

      B = [x ; y]

               1 2
               4 5

      C = [x y ;z]
Error:
??? Error using ==> vertcat CAT arguments dimensions are not consistent.
Operators (arithmetic)
 +   addition
 -   subtraction
 *   multiplication
 /   division
 ^   power
 ‘   complex conjugate transpose
Matrices Operations


  Given A and B:



 Addition   Subtraction   Product   Transpose
Operators (Element by Element)


 .* element-by-element multiplication
 ./ element-by-element division
 .^ element-by-element power
The use of “.” – “Element” Operation
A = [1 2 3; 5 1 4; 3 2 1]
   A=
         1 2 3
         5 1 4
         3 2 -1

                                    b = x .* y    c=x./y           d = x .^2
x = A(1,:)    y = A(3 ,:)
                                    b=            c=               d=
x=            y=                         3 8 -3     0.33 0.5 -3         1   4   9
     1 2 3         3 4 -1

      K= x^2
      Erorr:
       ??? Error using ==> mpower Matrix must be square.
      B=x*y
      Erorr:
      ??? Error using ==> mtimes Inner matrix dimensions must agree.
Basic Task: Plot the function sin(x)
between 0≤x≤4π
    Create an x-array of 100 samples between 0
     and 4π.

      >>x=linspace(0,4*pi,100);

    Calculate sin(.) of the x-array1

                                  0.8

                                  0.6


      >>y=sin(x);                 0.4

                                  0.2

                                    0


    Plot the y-array             -0.2

                                  -0.4

                                  -0.6


      >>plot(y)                   -0.8

                                   -1
                                         0   10   20   30   40   50   60   70   80   90   100
Plot the function e-x/3sin(x) between
0≤x≤4π
   Create an x-array of 100 samples between 0
    and 4π.
    >>x=linspace(0,4*pi,100);

   Calculate sin(.) of the x-array
    >>y=sin(x);

   Calculate e-x/3 of the x-array
    >>y1=exp(-x/3);

   Multiply the arrays y and y1
     >>y2=y*y1;
Plot the function e-x/3sin(x) between
0≤x≤4π
   Multiply the arrays y and y1 correctly
       >>y2=y.*y1;

   Plot the y2-array
                              0.7

       >>plot(y2)             0.6

                              0.5

                              0.4

                              0.3

                              0.2

                              0.1

                               0

                             -0.1

                             -0.2

                             -0.3
                                    0   10   20   30   40   50   60   70   80   90   100
Display Facilities                 0.7

                                   0.6

                                   0.5

   plot(.)                        0.4

                                   0.3


       Example:
                                   0.2

                                   0.1

       >>x=linspace(0,4*pi,100);     0

       >>y=sin(x);                 -0.1


       >>plot(y)                   -0.2


       >>plot(x,y)
                                   -0.3
                                          0   10   20   30   40   50   60   70   80   90   100


                                   0.7

   stem(.)                        0.6

                                   0.5

                                   0.4

                                   0.3



       Example:
                                   0.2

                                   0.1

       >>stem(y)                     0

       >>stem(x,y)                 -0.1

                                   -0.2

                                   -0.3
                                          0   10   20   30   40   50   60   70   80   90   100
Display Facilities

   title(.)
        >>title(‘This is the sinus function’)
                                                                                   This is the sinus function
                                                           1

                                                         0.8

   xlabel(.)                                            0.6

                                                         0.4


        >>xlabel(‘x (secs)’)                             0.2




                                                sin(x)
                                                           0


   ylabel(.)
                                                         -0.2

                                                         -0.4

                                                         -0.6

                                                         -0.8
        >>ylabel(‘sin(x)’)                                -1
                                                                0   10   20   30       40      50    60         70   80   90   100
                                                                                            x (secs)
Operators (relational, logical)

    == Equal to
    ~= Not equal to
    < Strictly smaller
    > Strictly greater
    <= Smaller than or equal to
    >= Greater than equal to
    & And operator
    | Or operator
Flow Control

    if
    for
    while
    break
    ….
Control Structures
                           Some Dummy Examples
    If Statement Syntax
                           if ((a>3) & (b==5))
                                Some Matlab Commands;
 if (Condition_1)          end
        Matlab Commands
                           if (a<3)
 elseif (Condition_2)           Some Matlab Commands;
        Matlab Commands    elseif (b~=5)
                                Some Matlab Commands;
 elseif (Condition_3)      end
        Matlab Commands
                           if (a<3)
 else                           Some Matlab Commands;
        Matlab Commands    else
                                Some Matlab Commands;
 end                       end
Control Structures
                      Some Dummy Examples
   For loop syntax   for i=1:100
                          Some Matlab Commands;
                      end

for i=Index_Array     for j=1:3:200
                          Some Matlab Commands;
  Matlab Commands     end

end                   for m=13:-0.2:-21
                          Some Matlab Commands;
                      end

                      for k=[0.1 0.3 -13 12 7 -9.3]
                          Some Matlab Commands;
                      end
Control Structures

   While Loop Syntax

                        Dummy Example
while (condition)
  Matlab Commands       while ((a>3) & (b==5))
                           Some Matlab Commands;
end                     end
Use of M-File
Click to create
a new M-File




  • Extension “.m”
  • A text file containing script or function or program to run
Use of M-File   Save file as Denem430.m




                           If you include “;” at the
                           end of each statement,
                           result will not be shown
                           immediately
Writing User Defined Functions
    Functions are m-files which can be executed by
     specifying some inputs and supply some desired outputs.
    The code telling the Matlab that an m-file is actually a
     function is
       function out1=functionname(in1)
       function out1=functionname(in1,in2,in3)
       function [out1,out2]=functionname(in1,in2)



    You should write this command at the beginning of the
     m-file and you should save the m-file with a file name
     same as the function name
Writing User Defined Functions
    Examples
      Write a function : out=squarer (A, ind)

        Which takes the square of the input matrix if the input

          indicator is equal to 1
        And takes the element by element square of the input

          matrix if the input indicator is equal to 2

                                                   Same Name
Writing User Defined Functions
   Another function which takes an input array and returns the sum and product
    of its elements as outputs




   The function sumprod(.) can be called from command window or an m-file as
Notes:
   “%” is the neglect sign for Matlab (equaivalent
    of “//” in C). Anything after it on the same line
    is neglected by Matlab compiler.
   Sometimes slowing down the execution is
    done deliberately for observation purposes.
    You can use the command “pause” for this
    purpose
       pause %wait until any key
       pause(3) %wait 3 seconds
Useful Commands

    The two commands used most by Matlab
     users are
     >>help functionname



     >>lookfor keyword
Questions

   ?
   ?
   ?
   ?
   ?
Thank You…

More Related Content

PDF
Ch 04 Arithmetic Coding (Ppt)
PDF
06 Arithmetic 1
PDF
Lesson 1: Functions
PDF
PDF
Mementopython3 english
PPTX
Introduction to Monads in Scala (2)
DOC
Applications of derivatives
PDF
Fp in scala part 2
Ch 04 Arithmetic Coding (Ppt)
06 Arithmetic 1
Lesson 1: Functions
Mementopython3 english
Introduction to Monads in Scala (2)
Applications of derivatives
Fp in scala part 2

What's hot (19)

PDF
Python_ 3 CheatSheet
PPTX
Principles of functional progrmming in scala
PDF
Lec 9 05_sept [compatibility mode]
PDF
Probabilistic Programming in Scala
PDF
Intelligent System Optimizations
PDF
Python 2.5 reference card (2009)
PDF
numdoc
PDF
Mit6 094 iap10_lec03
PDF
Mit6 094 iap10_lec04
PDF
Mit6 094 iap10_lec01
PDF
Matlab plotting
PDF
Mit6 094 iap10_lec02
PPTX
Introduction to Monads in Scala (1)
PPT
Chapter2
PDF
Distilling Free-Form Natural Laws from Experimental Data
PDF
Scala. Introduction to FP. Monads
PPT
Chapter2
PDF
Rcommands-for those who interested in R.
Python_ 3 CheatSheet
Principles of functional progrmming in scala
Lec 9 05_sept [compatibility mode]
Probabilistic Programming in Scala
Intelligent System Optimizations
Python 2.5 reference card (2009)
numdoc
Mit6 094 iap10_lec03
Mit6 094 iap10_lec04
Mit6 094 iap10_lec01
Matlab plotting
Mit6 094 iap10_lec02
Introduction to Monads in Scala (1)
Chapter2
Distilling Free-Form Natural Laws from Experimental Data
Scala. Introduction to FP. Monads
Chapter2
Rcommands-for those who interested in R.
Ad

Similar to Introduction to matlab (20)

PPT
Introduction to matlab
PDF
INTRODUCTION TO MATLAB session with notes
PPTX
Introduction to Matlab and application.pptx
PPTX
Introduction to matlab
PDF
PDF
Matlab-free course by Mohd Esa
PPT
Introduction to MATLAB
PPTX
COMPANION TO MATRICES SESSION II.pptx
PPT
MATLAB-Introd.ppt
PPTX
MATLAB Workshop for project and research
PDF
Programming with matlab session 1
PPTX
lect.no.3.pptx
PPTX
Mat lab day 1
PPTX
INTRODUCTION TO MATLAB presentation.pptx
PDF
1010n3a
PPT
MATLAB/SIMULINK for Engineering Applications day 2:Introduction to simulink
PDF
Notes and guide for matlab coding and excersie
PPS
PPTX
Introduction to MATLAB Programming for Engineers
PDF
Introduction to Matlab.pdf
Introduction to matlab
INTRODUCTION TO MATLAB session with notes
Introduction to Matlab and application.pptx
Introduction to matlab
Matlab-free course by Mohd Esa
Introduction to MATLAB
COMPANION TO MATRICES SESSION II.pptx
MATLAB-Introd.ppt
MATLAB Workshop for project and research
Programming with matlab session 1
lect.no.3.pptx
Mat lab day 1
INTRODUCTION TO MATLAB presentation.pptx
1010n3a
MATLAB/SIMULINK for Engineering Applications day 2:Introduction to simulink
Notes and guide for matlab coding and excersie
Introduction to MATLAB Programming for Engineers
Introduction to Matlab.pdf
Ad

Recently uploaded (20)

PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PDF
Computing-Curriculum for Schools in Ghana
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PPTX
master seminar digital applications in india
PPTX
Pharma ospi slides which help in ospi learning
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
Microbial disease of the cardiovascular and lymphatic systems
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PPTX
Presentation on HIE in infants and its manifestations
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
PPTX
Cell Structure & Organelles in detailed.
PPTX
Institutional Correction lecture only . . .
Chinmaya Tiranga quiz Grand Finale.pdf
Computing-Curriculum for Schools in Ghana
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Microbial diseases, their pathogenesis and prophylaxis
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
master seminar digital applications in india
Pharma ospi slides which help in ospi learning
human mycosis Human fungal infections are called human mycosis..pptx
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Final Presentation General Medicine 03-08-2024.pptx
2.FourierTransform-ShortQuestionswithAnswers.pdf
Microbial disease of the cardiovascular and lymphatic systems
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Presentation on HIE in infants and its manifestations
Module 4: Burden of Disease Tutorial Slides S2 2025
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
Cell Structure & Organelles in detailed.
Institutional Correction lecture only . . .

Introduction to matlab

  • 1. Introduction to Matlab By: İ.Yücel Özbek
  • 2. Outline:  What is Matlab?  Matlab Screen  Variables, array, matrix, indexing  Operators (Arithmetic, relational, logical )  Display Facilities  Flow Control  Using of M-File  Writing User Defined Functions  Conclusion
  • 3. What is Matlab?  Matlab is basically a high level language which has many specialized toolboxes for making things easier for us  How high? Matlab High Level Languages such as C, Pascal etc. Assembly
  • 4. What are we interested in?  Matlab is too broad for our purposes in this course.  The features we are going to require is Matlab Series of Matlab commands Command m-files mat-files Line functions Command execution Data Input like DOS command storage/ Output window loading capability
  • 5. Matlab Screen  Command Window  type commands  Current Directory  View folders and m-files  Workspace  View program variables  Double click on a variable to see it in the Array Editor  Command History  view past commands  save a whole session using diary
  • 6. Variables  No need for types. i.e., int a; double b; float c;  All variables are created with double precision unless specified and they are matrices. Example: >>x=5; >>x1=2;  After these statements, the variables are 1x1 matrices with double precision
  • 7. Array, Matrix  a vector x = [1 2 5 1] x = 1 2 5 1  a matrix x = [1 2 3; 5 1 4; 3 2 -1] x = 1 2 3 5 1 4 3 2 -1  transpose y = x’ y = 1 2 5 1
  • 8. Long Array, Matrix  t =1:10 t = 1 2 3 4 5 6 7 8 9 10  k =2:-0.5:-1 k = 2 1.5 1 0.5 0 -0.5 -1  B = [1:4; 5:8] x = 1 2 3 4 5 6 7 8
  • 9. Generating Vectors from functions  zeros(M,N) MxN matrix of zeros x = zeros(1,3) x = 0 0 0  ones(M,N) MxN matrix of ones x = ones(1,3) x = 1 1 1  rand(M,N) MxN matrix of uniformly distributed random x = rand(1,3) numbers on (0,1) x = 0.9501 0.2311 0.6068
  • 10. Matrix Index  The matrix indices begin from 1 (not 0 (as in C))  The matrix indices must be positive integer Given: A(-2), A(0) Error: ??? Subscript indices must either be real positive integers or logicals. A(4,2) Error: ??? Index exceeds matrix dimensions.
  • 11. Concatenation of Matrices  x = [1 2], y = [4 5], z=[ 0 0] A = [ x y] 1 2 4 5 B = [x ; y] 1 2 4 5 C = [x y ;z] Error: ??? Error using ==> vertcat CAT arguments dimensions are not consistent.
  • 12. Operators (arithmetic) + addition - subtraction * multiplication / division ^ power ‘ complex conjugate transpose
  • 13. Matrices Operations Given A and B: Addition Subtraction Product Transpose
  • 14. Operators (Element by Element) .* element-by-element multiplication ./ element-by-element division .^ element-by-element power
  • 15. The use of “.” – “Element” Operation A = [1 2 3; 5 1 4; 3 2 1] A= 1 2 3 5 1 4 3 2 -1 b = x .* y c=x./y d = x .^2 x = A(1,:) y = A(3 ,:) b= c= d= x= y= 3 8 -3 0.33 0.5 -3 1 4 9 1 2 3 3 4 -1 K= x^2 Erorr: ??? Error using ==> mpower Matrix must be square. B=x*y Erorr: ??? Error using ==> mtimes Inner matrix dimensions must agree.
  • 16. Basic Task: Plot the function sin(x) between 0≤x≤4π  Create an x-array of 100 samples between 0 and 4π. >>x=linspace(0,4*pi,100);  Calculate sin(.) of the x-array1 0.8 0.6 >>y=sin(x); 0.4 0.2 0  Plot the y-array -0.2 -0.4 -0.6 >>plot(y) -0.8 -1 0 10 20 30 40 50 60 70 80 90 100
  • 17. Plot the function e-x/3sin(x) between 0≤x≤4π  Create an x-array of 100 samples between 0 and 4π. >>x=linspace(0,4*pi,100);  Calculate sin(.) of the x-array >>y=sin(x);  Calculate e-x/3 of the x-array >>y1=exp(-x/3);  Multiply the arrays y and y1 >>y2=y*y1;
  • 18. Plot the function e-x/3sin(x) between 0≤x≤4π  Multiply the arrays y and y1 correctly >>y2=y.*y1;  Plot the y2-array 0.7 >>plot(y2) 0.6 0.5 0.4 0.3 0.2 0.1 0 -0.1 -0.2 -0.3 0 10 20 30 40 50 60 70 80 90 100
  • 19. Display Facilities 0.7 0.6 0.5  plot(.) 0.4 0.3 Example: 0.2 0.1 >>x=linspace(0,4*pi,100); 0 >>y=sin(x); -0.1 >>plot(y) -0.2 >>plot(x,y) -0.3 0 10 20 30 40 50 60 70 80 90 100 0.7  stem(.) 0.6 0.5 0.4 0.3 Example: 0.2 0.1 >>stem(y) 0 >>stem(x,y) -0.1 -0.2 -0.3 0 10 20 30 40 50 60 70 80 90 100
  • 20. Display Facilities  title(.) >>title(‘This is the sinus function’) This is the sinus function 1 0.8  xlabel(.) 0.6 0.4 >>xlabel(‘x (secs)’) 0.2 sin(x) 0  ylabel(.) -0.2 -0.4 -0.6 -0.8 >>ylabel(‘sin(x)’) -1 0 10 20 30 40 50 60 70 80 90 100 x (secs)
  • 21. Operators (relational, logical)  == Equal to  ~= Not equal to  < Strictly smaller  > Strictly greater  <= Smaller than or equal to  >= Greater than equal to  & And operator  | Or operator
  • 22. Flow Control  if  for  while  break  ….
  • 23. Control Structures Some Dummy Examples  If Statement Syntax if ((a>3) & (b==5)) Some Matlab Commands; if (Condition_1) end Matlab Commands if (a<3) elseif (Condition_2) Some Matlab Commands; Matlab Commands elseif (b~=5) Some Matlab Commands; elseif (Condition_3) end Matlab Commands if (a<3) else Some Matlab Commands; Matlab Commands else Some Matlab Commands; end end
  • 24. Control Structures Some Dummy Examples  For loop syntax for i=1:100 Some Matlab Commands; end for i=Index_Array for j=1:3:200 Some Matlab Commands; Matlab Commands end end for m=13:-0.2:-21 Some Matlab Commands; end for k=[0.1 0.3 -13 12 7 -9.3] Some Matlab Commands; end
  • 25. Control Structures  While Loop Syntax Dummy Example while (condition) Matlab Commands while ((a>3) & (b==5)) Some Matlab Commands; end end
  • 26. Use of M-File Click to create a new M-File • Extension “.m” • A text file containing script or function or program to run
  • 27. Use of M-File Save file as Denem430.m If you include “;” at the end of each statement, result will not be shown immediately
  • 28. Writing User Defined Functions  Functions are m-files which can be executed by specifying some inputs and supply some desired outputs.  The code telling the Matlab that an m-file is actually a function is function out1=functionname(in1) function out1=functionname(in1,in2,in3) function [out1,out2]=functionname(in1,in2)  You should write this command at the beginning of the m-file and you should save the m-file with a file name same as the function name
  • 29. Writing User Defined Functions  Examples  Write a function : out=squarer (A, ind)  Which takes the square of the input matrix if the input indicator is equal to 1  And takes the element by element square of the input matrix if the input indicator is equal to 2 Same Name
  • 30. Writing User Defined Functions  Another function which takes an input array and returns the sum and product of its elements as outputs  The function sumprod(.) can be called from command window or an m-file as
  • 31. Notes:  “%” is the neglect sign for Matlab (equaivalent of “//” in C). Anything after it on the same line is neglected by Matlab compiler.  Sometimes slowing down the execution is done deliberately for observation purposes. You can use the command “pause” for this purpose pause %wait until any key pause(3) %wait 3 seconds
  • 32. Useful Commands  The two commands used most by Matlab users are >>help functionname >>lookfor keyword
  • 33. Questions  ?  ?  ?  ?  ?