0% found this document useful (1 vote)
160 views61 pages

2014338040

This lab report summarizes the results of generating and plotting various sequences in MATLAB. The sequences included impulse sequences, step sequences, exponential sequences, and periodic sequences. Key results were plotted and analyzed over different intervals. The report was prepared by student Md. Omar Faruque Swapon for the DSP lab under instructor Hriteshwar Talukder.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
160 views61 pages

2014338040

This lab report summarizes the results of generating and plotting various sequences in MATLAB. The sequences included impulse sequences, step sequences, exponential sequences, and periodic sequences. Key results were plotted and analyzed over different intervals. The report was prepared by student Md. Omar Faruque Swapon for the DSP lab under instructor Hriteshwar Talukder.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 61

Lab Report: EEE332 Department of EEE SUST

DSP LAB REPORT


Lab number: 01

Prepared by:
Student Name: Md. Omar Faruque Swapon

Student ID: 2014338040

Names of the Group Member: MD. Omar Faruque Swapon

Course Instructor: Hriteshwar Talukder


Example 2.1: Generating and plotting each of the following sequences
over the indicated interval.

(a)
𝑥(𝑛) = 2𝛿(𝑛 + 2) − 𝛿(𝑛 − 4), −5 ≤ 𝑛 ≤ 5

First we built a unit impulse sequence over n1 ≤ n0 ≤ n2interval and we will use
the following MATLAB function:

To solve the problem we will use this function by calling it on command window.

Plot of the sequences:


(b)x(n) = n[u(n) − u(n − 10)]+10𝑒 −.3(𝑛−10) [u(n − 10) − u(n − 20)],0 ≤ n ≤20.

We have to built a step sequence function and will use the following
MATLABfunction
To solve the problem we will use this function by calling it on command window.
\

(c) x(n) = cos(0.04πn) + 0.2w(n),0 ≤ n ≤ 50, where w(n) is a


Gaussianrandom sequence with zero mean and unit variance.

Matlab command:

Plot:
(d) x˜(n) = {..., 5, 4, 3, 2, 1, ,4, 3, 2, 1, 5, 4, 3, 2, 1, ...}; -10 ≤ n ≤ 9.
Result:

Example 2.2
(a)

x1(n) = 2x(n - 5) - 3x(n + 4)

The first part is obtained by shifting x(n) by 5 and the second part byshifting x(n)
by -4. This shifting and the addition can be easily done usingthe sigshift and the
sigadd function.

Signal shift function:

Signal add function:

Matlab command:
Plot:

(b) x2(n) = x(3 - n) + x(n)x(n - 2).

Sigfold function:

sigmult functions:
Matlab command:

Plot:

Example 2.3:
Matlab command:

Plot:
Example 2.4

Evenodd function:

Matlab command:

Plot:
Exercise:
Problem 2.1(1):
Code:
% P0201a: x1(n) = 3*delta(n + 2) + 2*delta(n) - delta(n -
3) +
% 5*delta(n - 7), -5 <= n <= 15.
clc; close all;
x1 = 3*impseq(-2,-5,15) + 2*impseq(0,-5,15) - impseq(3,-
5,15) ...
+ 5*impseq(7,-5,15); Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0201a'); n1 = [-
5:15];
Hs = stem(n1,x1,'filled'); set(Hs,'markersize',2);
axis([min(n1)-1,max(n1)+1,min(x1)-1,max(x1)+1]);
xlabel('n'); ylabel('x_1(n)');
title('Sequence x_1(n)');

Result:

Problem 2.1(2):
Code:
% P0201b: x2(n) = sum_{k = -5}^{5} e^{-|k|}*delta(n - 2k),
-10 <= n <= 10
clc;
close all;
n2 = [-10:10]; x2 = zeros(1,length(n2));
for k = -5:5
x2 = x2 + exp(-abs(k))*impseq(2*k ,-10,10);
end
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0201b');
Hs = stem(n2,x2,'filled'); set(Hs,'markersize',2);
axis([min(n2)-1,max(n2)+1,min(x2)-1,max(x2)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_2(n)','FontSize',LFS);
title('Sequence x_2(n)','FontSize',TFS);
set(gca,'XTickMode','manual','XTick',n2);
print -deps2 ../EPSFILES/P0201b;

Result:

Problem 2.1(4):
Code:
% P0201d: x4(n) = e ^ {0.1n} [u(n + 20) - u(n - 10)].
clc; close all;
n4 = [-25:15];
x4 = exp(0.1*n4).*(stepseq(-20,-25,15) - stepseq(10,-
25,15));
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0201d');
Hs = stem(n4,x4,'filled'); set(Hs,'markersize',2);
axis([min(n4)-2,max(n4)+2,min(x4)-1,max(x4)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_4(n)','FontSize',LFS);
title('Sequence x_4(n)','FontSize',TFS); ntick =
[n4(1):5:n4(end)];
set(gca,'XTickMode','manual','XTick',ntick);
print -deps2 ../CHAP2_EPSFILES/P0201d;
print -deps2 ../../Latex/P0201d;

Result:

Problem 2.1(8):
Code:
% P0201h: x8(n) = e ^ {0.01*n}*sin(0.1*pi*n), 0 <= n <=100.
clc; close all;
n8 = [0:100]; x8 = exp(0.01*n8).*sin(0.1*pi*n8);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0201h');
Hs = stem(n8,x8,'filled'); set(Hs,'markersize',2);
axis([min(n8)-5,max(n8)+5,min(x8)-1,max(x8)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_8(n)','FontSize',LFS);
title('Sequence x_8(n)','FontSize',TFS);
ntick = [n8(1): 10:n8(end)];
set(gca,'XTickMode','manual','XTick',ntick);
print -deps2 ../CHAP2_EPSFILES/P0201h

Result:

Problem 2.2(1):
Code:
% P0202a: x1(n) = uniform[0,2]
clc; close all;
n1 = [0:100000-1]; x1 = 2*rand(1,100000);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0202a');
[h1,x1out] = hist(x1,100); bar(x1out, h1);
axis([-0.1 2.1 0 1200]);
xlabel('interval','FontSize',LFS);
ylabel('number of elements','FontSize',LFS);
title('Histogram of sequence x_1(n) in 100
bins','FontSize',TFS);
print -deps2 ../CHAP2_EPSFILES/P0202a;

Result:

Problem 2.2(4):
Code:
%P0202d: x4(n) = sum_{k=1} ^ {4} y_k(n), where each
independent of others
% with samples uniformly distributed over [-0.5,0.5];
clc; close all;
y1 = rand(1,100000) - 0.5; y2 = rand(1,100000) - 0.5;
y3 = rand(1,100000) - 0.5; y4 = rand(1,100000) - 0.5;
x4 = y1 + y2 + y3 + y4;
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0202d');
[h4,x4out] = hist(x4,100); bar(x4out,h4);
xlabel('interval','FontSize',LFS);
ylabel('number of elements','FontSize',LFS);
title('Histogram of sequence x_4(n) in 100
bins','FontSize',TFS);
print -deps2 ../CHAP2_EPSFILES/P0202d;

Result:

Problem 2.2(3):
Code:
% P0202c: x3(n) = x1(n) + x1(n - 1) where x1(n) =
uniform[0,2]
clc; close all;
n1 = [0:100000-1]; x1 = 2*rand(1,100000);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0202c');
[x11,n11] = sigshift(x1,n1,1);
[x3,n3] = sigadd(x1,n1,x11,n11);
[h3,x3out] = hist(x3,100);
bar(x3out,h3); axis([-0.5 4.5 0 2500]);
xlabel('interval','FontSize',LFS);
ylabel('number of elements','FontSize',LFS);
title('Histogram of sequence x_3(n) in 100
bins','FontSize',TFS);
print -deps2 ../CHAP2_EPSFILES/P0202c;

Result:

Problem 2.3(1):
Code:
periodic. 5 periods
clc; close all;
n1 = [-12:12]; x1 = [-2,-1,0,1,2];
x1 = x1'*ones(1,5); x1 = (x1(:))';
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0203a');
Hs = stem(n1,x1,'filled'); set(Hs,'markersize',2);
axis([min(n1)-1,max(n1)+1,min(x1)-1,max(x1)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_1(n)','FontSize',LFS);
title('Sequence x_1(n)','FontSize',TFS);
ntick = [n1(1):2:n1(end)]; ytick = [min(x1) - 1:max(x1) +
1];
set(gca,'XTickMode','manual','XTick',ntick);
set(gca,'YTickMode','manual','YTick',ytick);
print -deps2 ../CHAP2_EPSFILES/P0203a

Result:

Problem 2.3(4):
Code:
% P0203d x1(n) = {...,-2,-1,0,1,2,-2,-1,0,1,2...} periodic.
5 periods
clc; close all;
n4 = [0:24]; x4a = [1 2 3]; x4a = x4a'*ones(1,9); x4a =
(x4a(:))';
x4b = [1 2 3 4]; x4b = x4b'*ones(1,7); x4b = (x4b(:))';
x4 = x4a(1:25) + x4b(1:25);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0203d');
Hs = stem(n4,x4,'filled'); set(Hs,'markersize',2);
axis([min(n4)-1,max(n4)+1,min(x4)-1,max(x4)+1]);
xlabel('n', 'FontSize', LFS);
ylabel('x_4(n)','FontSize',LFS);
title('Sequence x_4(n):Period = 12','FontSize',TFS);
ntick = [n4(1) :2:n4(end)];
set(gca,'XTickMode','manual','XTick',ntick);
print -deps2 ../CHAP2_EPSFILES/P0203d;

Result:

Problem 2.4(1):
Code:
% P0204a: x(n) = [2,4,-3,1,-5,4,7]; -3 <=n <= 3;
% x1(n) = 2x(n - 3) + 3x(n + 4) - x(n)
clc;
close all;
n = [-3:3]; x = [2,4,-3,1,-5,4,7];
[x11,n11] = sigshift(x,n,3); % shift by 3
[x12,n12] = sigshift(x,n,-4); % shift by -4
[x13,n13] = sigadd(2*x11,n11,3*x12,n12); % add two
sequences
[x1,n1] = sigadd(x13,n13,-x,n); % add two sequences
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0204a');
Hs = stem(n1,x1,'filled');
set(Hs,'markersize',2);
axis([min(n1)-1,max(n1)+1,min(x1)-3,max(x1)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_1(n)','FontSize',LFS);
title('Sequence x_1(n)','FontSize',TFS);
ntick = n1;
ytick = [min(x1)-3:5:max(x1)+1];
set(gca,'XTickMode','manual','XTick',ntick);
set(gca,'YTickMode','manual','YTick',ytick);
print -deps2 ../CHAP2_EPSFILES/P0204a;

Result:
Problem 2.4(1):
Code:
% P0204d: x(n) = [2,4,-3,1,-5,4,7]; -3 <=n <= 3;
% x4(n) = 2*e^{0.5n}*x(n)+cos(0.1*pi*n)*x(n+2), -10 <=n<
=10
clc; close all;
n = [-3:3]; x = [2,4,-3,1,-5,4,7]; % given sequence x(n)
n4 = [-10:10]; x41 = 2*exp(0.5*n4); x412 = cos(0.1*pi*n4);
[x42,n42] = sigmult(x41,n4,x,n);
[x43,n43] = sigshift(x,n,-2);
[x44,n44] = sigmult(x412,n42,x43,n43);
[x4,n4] = sigadd(x42,n42,x44,n44);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0204d');
Hs = stem(n4,x4,'filled'); set(Hs,'markersize',2);
axis([min(n4)-1,max(n4)+1,min(x4)-11,max(x4)+10]);
xlabel('n','FontSize',LFS);
ylabel('x_4(n)','FontSize',LFS);
title('Sequence x_4(n)','FontSize',TFS);
ntick = n4; ytick = [ -20:10:70];
set(gca,'XTickMode','manual','XTick',ntick);
set(gca,'YTickMode','manual','YTick',ytick);
print -deps2 ../CHAP2_EPSFILES/P0204d;

Result:

Problem 2.5(2):
Code:
% P0205b: x1(n) = e^{0.1*j*pi*n} -100 <=n <=100

clc; close all;


n1 = [-100:100]; x1 = exp(0.1*j*pi*n1);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0205b');
subplot(2,1,1); Hs1 = stem(n1,real(x1),'filled');
set(Hs1,'markersize',2);
axis([min(n1)-5,max(n1)+5,min(real(x1))-
1,max(real(x1))+1]);
xlabel('n','FontSize',LFS);
ylabel('Real(x_1(n))','FontSize',LFS);
title(['Real part of sequence x_1(n) = ' ...
'exp(0.1 \times j \times pi \times n) ' char(10) ...
' Period = 20, K = 1, N = 20'],'FontSize',TFS);
ntick = [n1(1):20:n1(end)];
set(gca,'XTickMode','manual','XTick',ntick);
subplot(2,1,2); Hs2 = stem(n1,imag(x1),'filled');
set(Hs2,'markersize',2);
axis([min(n1)-5,max(n1)+5,min(real(x1))-
1,max(real(x1))+1]);
xlabel('n','FontSize',LFS);
ylabel('Imag(x_1(n))','FontSize',LFS);
title(['Imaginary part of sequence x_1(n) = ' ...
'exp(0.1 \times j \times pi \times n) ' char(10) ...
'Period = 20, K = 1, N = 20'],'FontSize',TFS);
ntick = [n1(1):20:n1(end)];
set(gca,’XTickMode’,’manual’,’XTick’,ntick);
print -deps2 ../CHAP2_EPSFILES/P0205b; print -deps2
../../Latex/P0205b;
Result:
Problem 2.5(3):
Code:
% P0205c: x2(n) = cos(0.1n), -20 <= n <= 20
clc; close all;
n2 = [-20:20]; x2 = cos(0.1*n2);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0205c');
Hs = stem(n2,x2,'filled'); set(Hs,'markersize',2);
axis([min(n2)-1,max(n2)+1,min(x2)-1,max(x2)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_2(n)','FontSize',LFS);
title(['Sequence x_2(n) = cos(0.1 \times n)' char(10) ...
'Not periodic since f_0 = 0.1 / (2 \times \pi)' ...
' is not a rational number'], 'FontSize',TFS);
ntick = [n2(1):4:n2(end)];
set(gca,'XTickMode','manual','XTick',ntick);
print -deps2 ../CHAP2_EPSFILES/P0205c;

Result:
Problem 2.6(2):
Code:
% P0206a: % Even odd decomposition of x1(n) = [0 1 2 3 4 5
6 7 8 9];
% n = 0:9;
clc;
close all;
x1 = [0 1 2 3 4 5 6 7 8 9]; n1 = [0:9]; [xe1,xo1,m1] =
evenodd(x1,n1);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0206a');
subplot(2,1,1); Hs = stem(m1,xe1,'filled');
set(Hs,'markersize',2);
axis([min(m1)-1,max(m1)+1,min(xe1)-1,max(xe1)+1]);
xlabel('n','FontSize','LFS');
ylabel('x_e(n)','FontSize',LFS);
title('Even part of x_1(n)','FontSize',TFS);
ntick = [m1(1):m1(end)]; ytick = [-1:5];
set(gca,'XTick',ntick);set(gca,'YTick',ytick);
subplot(2,1,2);
Hs = stem(m1,xo1,'filled');
set(Hs,'markersize',2);
axis([min(m1)-1,max(m1)+1,min(xo1)-2,max(xo1)+2]);
xlabel('n','FontSize',LFS);
ylabel('x_o(n)','FontSize',LFS);
title('Odd part of x_1(n)','FontSize',TFS);
ntick = [m1(1):m1(end)]; ytick = [-6:2:6];
set(gca,'XTick',ntick);set(gca,'YTick',ytick);
print -deps2 ../CHAP2_EPSFILES/P0206a;
print -deps2 ../../Latex/P0206a;
Result:
Problem 2.6(4):
Code:
% P0206d: x4(n) = e ^ {-0.05*n}*sin(0.1*pi*n + pi/3), 0 <=
n <= 100
clc; close all;
n4 = [0:100]; x4 = exp(-0.05*n4).*sin(0.1*pi*n4 + pi/3);
[xe4,xo4,m4] = evenodd(x4,n4);
Hf_1 = figure;
set(Hf_1,'NumberTitle','off','Name','P0206d');
subplot(2,1,1); Hs = stem(m4,xe4,'filled');
set(Hs,'markersize',2);
axis([min(m4)-10,max(m4)+10,min(xe4)-1,max(xe4)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_e(n)','FontSize',LFS);
title(['Even part of x_4(n) = ' ...
'exp(-0.05 \times n) \times sin(0.1 \times \pi \times n + '
...
'\pi/3)'],'FontSize',TFS);
ntick = [m4(1):20:m4(end)]; set(gca,'XTick',ntick);
subplot(2,1,2); Hs = stem(m4,xo4,'filled');
set(Hs,'markersize',2);
axis([min(m4)-10,max(m4)+10,min(xo4)-1,max(xo4)+1]);
xlabel('n','FontSize',LFS);
ylabel('x_o(n)','FontSize',LFS);
title(['Odd part of x_4(n) = ' ...
'exp(-0.05 \times n) \times sin(0.1 \times\pi\times n+' ...
'\pi/3)'],'FontSize',TFS);
ntick = [m4(1):20 :m4(end)]; set(gca,'XTick',ntick);
Result:
Problem 2.8(1):
Code:
Result:
Problem 2.8(2):
Code:

Result:
Problem 2.9(1):
Code:

Result:
Problem 2.9(2):
Code:

Result:
Problem 2.10:
Code:

Result:
Problem 2.11(1):
Code:
Problem 2.11(2):
Code:
Problem 2.11(3):
Code:
Problem 2.12(1):
Code:
Problem 2.12(2):
Problem 2.12(3):
Problem 2.12(4):
Code:

Problem 2.12(5):
Code:

Problem 2.12(6):
Code:
Problem 2.14(1):
Code:
Problem 2.14(2):
Code:
Problem 2.14(3):
Code:
Problem 2.15(1):
Code:

Result:

Problem 2.15(2):
Code:
Result:

Problem 2.15(3):
Code:

Result:
Problem 2.15(4):
Code:

Result:
Problem 2.16(1):
Code:

Result:
Problem 2.18(a):
Code:

Problem 2.18(a):
Code:

Result:
Problem 2.19(a):
Code:

Result:
Problem 2.19(b):
Clearly from the system is stable.

Problem 2.19(c):
Code:

Result:
Problem 2.20(a):
Code:

Result:
Problem 2.20(b):
Code:

Result:
Problem 2.20(a):
Code:

Result:

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy