You are on page 1of 6

Mehran University of Engineering and Technology, SZAB Campus, Khairpur Mir’s

Department of Electronic Engineering


Signals & Systems
Lab # 01

Name: Roll No: ________

Score: ______________________Signature: ____________ Date:

Introduction to MATLAB

OBJECTIVES:

Following are the objectives of this lab.


 To become familiar with the basics of MATLAB.
 To generate matrices, arrays and to plot the signals in MATLAB.

EQUIPMENT:

IBM compatible computer


MATLAB

DISCUSSION:

INTRODUCTION:

MATLAB - The Language of Technical Computing.

The MATLAB and Simulink product families are fundamental computational tools at the
world's educational institutions. Adopted by more than 3500 universities and colleges,
MathWorks products accelerate the pace of learning, discovery, and research in
engineering and science. MathWorks products also help prepare students for careers in
industry, where they are widely used tools for research and development.

Application Areas:

Technical Computing
Mathematical computation, analysis, visualization, and algorithm development.
Control Design
Model-Based Design for control systems, including simulation, rapid prototyping, and
code generation for embedded systems.
DSP - Digital Signal Processing & Communications
Model-Based Design for signal processing and communication systems, including
simulation, code generation, and verification.
Image Processing
Image acquisition, analysis, visualization, and algorithm development.
Test & Measurement
Hardware connectivity and data analysis for test and measurement applications.
Computational Biology
Analysis, visualization, and simulation of biological data and systems.
Computational Finance
Financial modeling, analysis, and application deployment.

Some fundamental commands:

Help
To get command-line function help, you can use the MATLAB help function.
For example, to get help for the ‘imread’ function, type,
Help imread

Who
Use who to list the current workspace variables.

Whos
Use whos to list the variables and information about their size and class.

Exist
Use exist to see if the specified variable is in the workspace.

Clear all
All the variables are deleted and the workspace becomes empty. Executing ‘who’ can
verify this.

Clc
It is used to clear command window

Close all
All existing figures are closed.

%
Commenting in M-files
You can make any line in an M-file a comment by typing % at the beginning of the line.
To put a comment within a line, type % followed by the comment text; MATLAB treats
all the information after the % on a line as a comment.

;
Output Suppression
When placed at the end of a command, the semicolon tells MATLAB not to display any
output from that command in the command window.
LAB TASKS:
Generation / Fundamental operations on arrays and matrices:
Write your results and observations after executing each of the following:

1. A=[1 2 3]
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

2. Size(A)
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

3. B=[1 2 3;4 5 6;7 8 9]


________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

4. A*A’ (Please use matrix A defined in ‘1’)


________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

5. A.*A
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

6. A+A
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

7. Ones(1,4)
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

8. Zeros(2,2)
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

9. KK=0:2:10
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

10. B(1,:) (Please use matrix B defined in ‘3’)


________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

11. B(:,2)
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

The following code demonstrates two ways to the array [0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5]

%% Array generation
vect=0:0.5:5 %Generate a sequence from 0 to 5 with increments of 0.5
vect_lins=linspace(0,5,11) %Generates 11 numbers between 0 and 5

1. What is the difference between the commands ‘linspace’ and ‘logspace’. Discuss
with an example (generated vector).
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

Signal Generation:
The following piece of code generates an exponential signal. Its output is shown on
the next page.
t=0:0.1:1;
x=exp(-10*t);
%figure
subplot(1,2,1)
stem(t,x)
subplot(1,2,2)
plot(t,x)
grid on;
2. With the help of the code provided on the previous page and MATLAB help,
write a program to generate any decaying exponential signal. Also label the axes
and give your figure a title. (Use ‘xlabel’, ‘ylabel’ and ‘title’ commands. See
MATLAB help for syntax.)
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

Implementing single line equations:


Single line equations can be implemented as anonymous functions. These can be useful
for performing repetitive computations within a program. An example is shown in the
code:
% Anonymous function to find the area of a circle (a=πr2)
%For more details:
%http://www.mathworks.com/help/matlab/matlab_prog/anonymous-
functions.html
a=@(r) pi*(r^2) %Define the anonymous function for computing area
a(2) %Calculate area of circle for a radius of 2
3. Write an anonymous function for converting Fahrenheit temperature to
Centigrade using the equation:

Introduction to Loops:
Matlab allows the use of For and While loop structures. The following code demonstrates
the use of the For loop.
%% Introduction to loops
for p=1:10
x=2*p
fprintf(‘value of x:’,x)
end
%Display p in the command window
What is the output of this program?

4. Use the While loop to perform the above task and discuss the difference between
the two.
5. Is there a more efficient way of generating the vector p? Provide Matlab code.

________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________
________________________________________________________________________

Final Check List:


 Save your programs & turn off PC.
 Submit your answers to questions, and results before the next laboratory.

You might also like