1 / 33

Digital Signal Processing : Introduction to MATLAB

BEIT, 6th Semester. Books:. Getting Started with MATLAB"- Rudra PratapDigital Signal Processing "- Sanjit K. Mitra.Digital Signal Processing-A Practitioner's Approach"- Kaluri V. Rangarao- Ranjan K. Mallik. BEIT, 6th Semester. Introduction. MATLAB -> MATrix LABoratoryBuilt-in F

kail
Télécharger la présentation

Digital Signal Processing : Introduction to MATLAB

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. BEIT, 6th Semester Digital Signal Processing : Introduction to MATLAB Ms. T. Samanta Lecturer Department of Information Technology

    2. BEIT, 6th Semester Books: Getting Started with MATLAB - Rudra Pratap Digital Signal Processing - Sanjit K. Mitra. Digital Signal Processing-A Practitioners Approach - Kaluri V. Rangarao - Ranjan K. Mallik

    3. BEIT, 6th Semester Introduction MATLAB -> MATrix LABoratory Built-in Functions -Computations -Graphics -External Interface -Optional Toolbox for Signal Processing, System analysis, Image Processing

    4. BEIT, 6th Semester How many windows?

    5. BEIT, 6th Semester MATLAB Windows Command window: main window characterized by >> command prompt. Edit window: where programs are written and saved as M-files. Graphics window: shows figures, alternately known as Figure window.

    6. BEIT, 6th Semester

    7. BEIT, 6th Semester Matlab Basics

    8. BEIT, 6th Semester MATLAB Basics: Variables Variables: -Variables are assigned numerical values by typing the expression directly >> a = 1+2 press enter >> a = 3 >> a = 1+2; suppresses the output

    9. BEIT, 6th Semester Variables several predefined variables i sqrt(-1) j sqrt(-1) pi 3.1416... >> y= 2*(1+4*j) >> y= 2.0000 + 8.0000i

    10. BEIT, 6th Semester Variables Global Variables Local Variables

    11. BEIT, 6th Semester MATLAB Basics: Arithmetic operators: + addition, - subtraction, * multiplication, /division, ^ power operator, ' transpose

    12. BEIT, 6th Semester Matrices Matrices : Basic building block Elements are entered row-wise >> v = [1 3 5 7] creates a 1x4 vector >> M = [1 2 4; 3 6 8] creates a 2x3 matrix >> M(i,j) => accesses the element of ith row and jth column

    13. BEIT, 6th Semester Basics Matrices Special Matrices null matrix: M = []; nxm matrix of zeros: M = zeros(n,m); nxm matrix of ones: M = ones(n,m); nxn identity matrix: M = eye(n); --Try these Matrices [eye(2);zeros(2)],[eye(2);zeros(3)], [eye(2),ones(2,3)]

    14. BEIT, 6th Semester Matrix Operations Matrix operations: A+B is valid if A and B are of same size A*B is valid if As number of columns equals Bs number of rows. A/B is valid and equals A.B-l for same size square matrices A & B. Element by element operations: .* , ./ , .^ etc --a = [1 2 3], b = [2 2 4], =>do a.*b and a*b

    15. BEIT, 6th Semester Vectors

    16. BEIT, 6th Semester Few methods to create vector LINSPACE(x1, x2): generates a row vector of 100 linearly equally spaced points between x1 and x2. LINSPACE(x1, x2, N): generates N points between x1 and x2. LOGSPACE(d1, d2): generates a row vector of 50 logarithmically equally spaced points between decades 10^d1 and 10^d2. a = 0:2:10 generates a row vector of 6 equally spaced points between 0 and 10.

    17. BEIT, 6th Semester Waveform representation

    18. BEIT, 6th Semester 2D Plotting plot: creates linear continuous plots of vectors and matrices; plot(t,y): plots the vector t on the x-axis versus vector y on the y-axis. To label your axes and give the plot a title, type xlabel('time (sec)') ylabel('step response') title('My Plot') Change scaling of the axes by using the axis command after the plotting command:axis([xmin xmax ymin ymax]);

    19. BEIT, 6th Semester 2D Plotting stem(k,y): for discrete-time signals this command is used. To plot more than one graph on the screen, subplot(m,n,p): breaks the Figure window into an m-by-n matrix of small axes, selects the p-th sub-window for the current plot grid : shows the underlying grid of axes

    20. BEIT, 6th Semester Example: Draw sine wave t=-2*pi:0.1:2*pi; y=1.5*sin(t); plot(t,y); xlabel('------> time') ylabel('------> sin(t)')

    21. BEIT, 6th Semester Matlab Plot

    22. BEIT, 6th Semester Example: Discrete time signal t=-2*pi:0.5:2*pi; y=1.5*sin(t); stem(t,y); xlabel('------> time') ylabel('------> sin(t)')

    23. BEIT, 6th Semester

    24. BEIT, 6th Semester Example: Draw unit step and delayed unit step functions n=input('enter value of n') t=0:1:n-1; y1=ones(1,n); %unit step y2=[zeros(1,4) ones(1,n-4)]; %delayed unit step subplot(2,1,1); stem(t,y1,'filled');ylabel('amplitude'); xlabel('n----->');ylabel('amplitude'); subplot(2,1,2); stem(t,y2,'filled'); xlabel('n----->');ylabel('amplitude');

    25. BEIT, 6th Semester Matlab Plot

    26. BEIT, 6th Semester Functions

    27. BEIT, 6th Semester Scripts and Functions Script files are M-files with some valid MATLAB commands. Generally work on global variables present in the workspace. Results obtained after executing script files are left in the workspace.

    28. BEIT, 6th Semester Scripts and Functions Function files are also M-files but with local variables . Syntax of defining a function function [output variable] = function_name (input variable) File name should be exactly same as function name.

    29. BEIT, 6th Semester Example : user defined function Assignment is the method of giving a value to a variable. You have already seen this in the interactive mode. We write x=a to give the value of a to the value of x. Here is a short program illustrating the use of assignment. function r=mod(a,d) %If a and d are integers, then r is the integer remainder of a after division by d. If a and b are integer matrices, then r is the matrix of remainders after division by corresponding entries. r=a-d.*floor(a./d); %You should make a file named mod.m and enter this program exactly as it is written. %Now assign some integer values for a and d writing another .m file and Run a =[10 10 10]; d = [3 3 3]; mod(a,d);

    30. BEIT, 6th Semester Loops, flows: for m=1:10:100 num = 1/(m + 1) end %i is incremented by 10 from 1 to 100 I = 6; j = 21 if I > 5 k = I; elseif (i>1) & (j == 20) k = 5*I + j else k = 1; end %if statement

    31. BEIT, 6th Semester Recapitulate

    32. BEIT, 6th Semester Few in-built Matlab functions sin() sqrt() cos() square() log() rand() asin() random() acos() real(x) exp() imag(x) sinh() conv() Type help, followed by the function name on the Matlab command window, press enter. This will display the function definition. Study the definition of each function.

    33. BEIT, 6th Semester Practice 1>Draw a straight line satisfying the equation: y = 3*x + 10 2> Create matrices with zeros, eye and ones 3>Draw a circle with radius unity. (use cos? for x axis, sin? for y axis) 4>Draw a cosine wave with frequency 10kHz. Use both plot and stem functions to see the difference. 5>Multiply two matrices of sizes 3x3. 6>Plot the parametric curve x(t) = t, y(t) = exp(-t/2) for 0<t<pi/2 using ezplot 7>Plot a cardioid r(?) = 1 + cos(?) for 0< ? <pi/2

More Related