Skip to main content

Linear Convolution of two sequences

The program code is :

clc
clear all
close all

X1=input('ENTER THE SEQUENCE 1 >');
i1=input('ENTER THE STARTING INDEX OF THE SEQUENCE 1 >');

X2=input('ENTER THE SEQUENCE 2 >');
i2=input('ENTER THE STARTING INDEX OF THE SEQUENCE 2 >');

m1=length(X1);
m2=length(X2);

Y=conv(X1,X2)

n1=i1:i1+m1-1;
n2=i2:i2+m2-1;

n3=(i1+i2):(i1+i2+length(Y)-1);
subplot(3,1,1)
stem(n1,X1,'r')
xlabel('n');
ylabel('Amplitude');
title('Sequence 1');

subplot(3,1,2)
stem(n2,X2,'g')
xlabel('n');
ylabel('Amplitude');
title('Sequence 2');

subplot(3,1,3)
stem(n3,Y,'c')
xlabel('n');
ylabel('Amplitude');
title('Linear Convolution of the Above two sequences');


output :




Please feel free to ask your questions in the comment session

Comments

Popular posts from this blog

Introduction to this Blog

In this blog we are willing to accumulate useful information related to the hot topic in market : Digital Signal Processing !! | Starting with very basics this blog would lead to you some interesting topics in DSP which will help you a lot !

DFT and IDFT using Mathematical Formula

dftidft2 clc clear all close all X=input( 'Enter the Input Sequence' ); N=input( 'Enter the N value such that N-point DFT is calculated' ); %Inputs are given% L=length(X); if N>L X=[X zeros(1,N-L)]; else X=X(1:N); end %Adjusting the Length of the input Sequence by appending Zeros or truncating the sequence% for k=1:N key=0; for n=1:N key=key+X(n)*exp(-(j*2*pi*(k-1)*(n-1))/N); end Y(k)=key; end %DFT is calculated% Y %DFT is printed% L=length(Y); n=0:1:L-1; figure,plot(n,abs(Y)),title( 'Magnitude Response of DFT' ) figure, plot(n, angle(Y)), title( 'Phase Response of DFT' ) %MAGNITUDE and PHASERESPONSE OF DFT SIGNAL IS PLOTTED% for k=1:N key=0; for n=1:N key=key+Y(n)*exp((j*2*pi*(k-1)*(n-1))/N); end Yinv(k)=key/N; end %IDFT is calculated% Yinv L=length(Y); n=0:1:L-1; figure,plot(n,abs(Yinv)),title( 'Magnitude Response of IDFT' ) figure, plot(n, ang...

DFT and IDFT using FFT command in Matlab

dftidft1 clc clear all close all X=input( 'Enter the Input Sequence' ); N=input( 'Enter the Value of N such that N-point DFT is to be Calculated' ); % INPUTS ARE GIVEN % Y= fft(X,N) %DFT IS CALCULATED% L=length(Y); n=0:1:L-1; figure,plot(n,abs(Y)),title( 'Magnitude Response of DFT' ) figure, plot(n, angle(Y)), title( 'Phase Response of DFT' ) %MAGNITUDE and PHASERESPONSE OF DFT SIGNAL IS PLOTTED% Yinv=ifft(Y,N) %IDFT IS CALCULATED% figure,plot(n,abs(Yinv)),title( 'Magnitude Response of IDFT' ) figure, plot(n, angle(Yinv)), title( 'Phase Response of IDFT' ) %MAGNITUDE and PHASERESPONSE OF ORIGINAL SIGNAL IS PLOTTED% Error using input Cannot call INPUT from EVALC. Error in dftidft1 (line 5) X=input('Enter the Input Sequence'); Published with MATLAB® R2013b