signal & system lab - electronics club · operations on signals and sequences such as addition,...
TRANSCRIPT
0 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
SIGNAL & SYSTEM LAB CONTENTS
S. No. List of Experiment Page
No
1. Generate a matrix and perform basic operation on matrices using MATLAB
software. 01-03
2.
Generation of Various Signals and Sequences (Periodic and Aperiodic), such
as Unit Impulse, Unit Step, Square, Saw tooth, Triangular, Sinusoidal,
Ramp, Sinc.
04-06
3. Operations on Signals and Sequences such as Addition, Multiplication,
Scaling, Shifting, Folding, Computation of Energy and Average Power 07-10
4. Finding the Even and Odd parts of Signal/Sequence and Real and Imaginary
parts of Signal 11-13
5. Convolution between Signals and sequences 14-15
6. Auto Correlation and Cross Correlation between Signals and Sequences. 16-18
7.
Computation of Unit sample, Unit step and Sinusoidal responses of the
given LTI system and verifying its physical realiazability and stability
properties.
19-21
8.
To find the Fourier Transform of a given signal and plotting its magnitude and
phase spectrum.
22-23
Lab In-charge
1 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.1
Objective:
Generate a matrix and perform basic operation on matrices using MATLAB software. Software Required: MATLAB software
Theory: -
MATLAB treats all variables as matrices. Vectors are special forms of matrices and contain
only one row or one column. Whereas scalars are special forms of matrices and contain only
one row and one column. A matrix with one row is called row vector and a matrix with single
column is called column vector.
The first one consists of convenient matrix building functions, some of which are given
below.
1. eye - identity matrix
2. zeros - matrix of zeros
3. ones - matrix of ones
4. diag - extract diagonal of a matrix or create diagonal matrices
5. triu - upper triangular part of a matrix
6. tril - lower triangular part of a matrix
7. rand - ran
commands in the second sub-category of matrix functions are
1. size- size of a matrix
2. det -determinant of a square matrix
3. inv- inverse of a matrix
4. rank- rank of a matrix
5. rref- reduced row echelon form
6. eig- eigenvalues and eigenvectors
7. poly- characteristic polynomialdomly generated matrix
Program:
% Creating a column vector
>> a=[1;2;3]
a =
1
2
3
% Creating a row vector >> b=[1 2 3] % Creating a matrix
>> m=[1 2 3;4 6 9;2 6 9]
m =
1 2 3
4 6 9
2 6 9
% Extracting sub matrix from matrix
>> sub_m=m(2:3,2:3)
sub_m =
2 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
6 9
6 9
% extracting column vector from matrix
>> c=m (:,2)
c =
2
6
6
% extracting row vector from matrix
>> d=m (3,:)
d =
2 6 9
% creation of two matrices a and b
>> a=[2 4 -1;-2 1 9;-1 -1 0]
a =
2 4 -1
-2 1 9
-1 -1 0
>> b=[0 2 3;1 0 2;1 4 6]
b =
0 2 3
1 0 2 1 4 6 % matrix multiplication
>> x1=a*b
x1 =
3 0 8
10 32 50
-1 -2 -5
% element to element multiplication
>> x2=a.*b
x2 =
0 8 -3
-2 0 18
-1 -4 0
% matrix addition
>> x3=a+b
x3 =
2 6 2
-1 1 11
0 3 6
% matrix subtraction
>> x4=a-b
x4 =
2 2 -4
-3 1 7
-2 -5 -6
% matrix division
>> x5=a/b
3 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
x5 =
-9.0000 -3.5000 5.5000
12.0000 3.7500 -5.7500
3.0000 0.7500 -1.7500
% element to element division
>> x6=a./b Warning: Divide by zero. x6 =
Inf 2.0000 -0.3333
-2.0000 Inf 4.5000
-1.0000 -0.2500 0
% inverse of matrix a
>> x7=inv(a)
x7 =
-0.4286 -0.0476 -1.7619
0.4286 0.0476 0.7619
-0.1429 0.0952 -0.4762
% transpose of matrix a
>> x8=a'
x8 =
2 -2 -1
4 1 -1
-1 9 0
RESULT: Matrix operations are performed using Matlab software.
-------------------------------
4 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.2
Object:
Generate various signals and sequences (Periodic and aperiodic), such as Unit Impulse,
Unit Step, Square, Saw tooth, Triangular, Sinusoidal, Ramp, Sinc.
Software Required: Matlab software
Theory: If the amplitude of the signal is defined at every instant of time then it is called
continuous time signal. If the amplitude of the signal is defined at only at some instants
of time then it is called discrete time signal. If the signal repeats itself at regular
intervals then it is called periodic signal. Otherwise they are called aperiodic signals.
EX: ramp,Impulse,unit step, sinc- Aperiodic signals square,sawtooth,triangular
sinusoidal – periodic signals.
Ramp sinal: The ramp function is a unitary real function, easily computable as the
mean of the independent variable and its absolute value.This function is applied in
engineering. The name ramp function is derived from the appearance of its graph.
Unit impulse signal: One of the more useful functions in the study of linear systems is
the "unit impulse function."An ideal impulse function is a function that is zero
everywhere but at the origin, where it isinfinitely high. However, the area of the
impulse is finite.
Unit step signal: The unit step function and the impulse function are considered to be
fundamental functions in engineering, and it is strongly recommended that the reader
becomes very familiar with both of these functions.
Sinc signal: There is a particular form that appears so frequently in communications
engineering, that we give it its own name. This function is called the "Sinc function”.
The Sinc function is defined in the following manner:
The value of sinc(x) is defined as 1 at x = 0, since
5 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Procedure:
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program For the output see command window\ Figure window
PROGRAM: % Generation of signals and sequences
clc;
clear all;
close all;
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of unit impulse signal
t1=-1:0.01:1
y1=(t1==0);
subplot(2,2,1);
plot(t1,y1);
xlabel('time');
ylabel('amplitude');
title('unit impulse signal');
%generation of impulse sequence
subplot(2,2,2);
stem(t1,y1);
xlabel('n');
ylabel('amplitude');
title('unit impulse sequence');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of unit step signal
t2=-10:1:10;
y2=(t2>=0);
subplot(2,2,3);
plot(t2,y2);
xlabel('time');
ylabel('amplitude');
title('unit step signal');
%generation of unit step sequence
subplot(2,2,4);
stem(t2,y2);
xlabel('n');
ylabel('amplitude');
title('unit step sequence');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of square wave signal
t=0:0.002:0.1; y3=square(2*pi*50*t);
figure;
6 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
subplot(2,2,1);
plot(t,y3);
axis([0 0.1 -2 2]);
xlabel('time');
ylabel('amplitude');
title('square wave signal');
%generation of square wave sequence
subplot(2,2,2);
stem(t,y3);
axis([0 0.1 -2 2]);
xlabel('n');
ylabel('amplitude');
title('square wave sequence');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of sawtooth signal
y4=sawtooth(2*pi*50*t);
subplot(2,2,3);
plot(t,y4);
axis([0 0.1 -2 2]);
xlabel('time');
ylabel('amplitude');
title('sawtooth wave signal');
%generation of sawtooth sequence
subplot(2,2,4);
stem(t,y4);
axis([0 0.1 -2 2]);
xlabel('n');
ylabel('amplitude');
title('sawtooth wave sequence');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of triangular wave signal
y5=sawtooth(2*pi*50*t,.5);
figure;
subplot(2,2,1);
plot(t,y5);
axis([0 0.1 -2 2]);
xlabel('time');
ylabel('amplitude');
title(' triangular wave signal');
%generation of triangular wave sequence
subplot(2,2,2);
stem(t,y5);
axis([0 0.1 -2 2]);
xlabel('n');
ylabel('amplitude');
title('triangular wave sequence'); %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of sinsoidal wave signal
y6=sin(2*pi*40*t);
subplot(2,2,3);
7 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
plot(t,y6);
axis([0 0.1 -2 2]);
xlabel('time');
ylabel('amplitude');
title(' sinsoidal wave signal');
%generation of sin wave sequence
subplot(2,2,4);
stem(t,y6);
axis([0 0.1 -2 2]);
xlabel('n');
ylabel('amplitude');
title('sin wave sequence');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of ramp signal
y7=t;
figure;
subplot(2,2,1);
plot(t,y7);
xlabel('time');
ylabel('amplitude');
title('ramp signal');
%generation of ramp sequence
subplot(2,2,2);
stem(t,y7);
xlabel('n');
ylabel('amplitude');
title('ramp sequence');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%generation of sinc signal
t3=linspace(-5,5);
y8=sinc(t3);
subplot(2,2,3);
plot(t3,y8);
xlabel('time');
ylabel('amplitude');
title(' sinc signal');
%generation of sinc sequence
subplot(2,2,4);
stem(y8);
xlabel('n');
ylabel('amplitude'); title('sinc sequence');
Result: Various signals & sequences generated using Matlab software.
9 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
------------------------------
10 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.3
Object: perform the operations on signals and sequences such as addition,
multiplication, scaling, shifting, folding and also compute energy and power.
Software Required: Matlab software.
Theory:
Signal Addition
Addition: any two signals can be added to form a third signal,
z (t) = x (t) + y (t)
Multiplication :
Multiplication of two signals can be obtained by multiplying their values at every
instants . z
z(t) = x (t) y (t)
Time reversal/Folding:
Time reversal of a signal x(t) can be obtained by folding the signal about t=0.
Y(t)=y(-t)
Signal Amplification/Scaling : Y(n)=ax(n) if a < 1 attnuation
a >1 amplification
Time shifting: The time shifting of x(n) obtained by delay or advance the signal in time
by
using y(n)=x(n+k)
If k is a positive number, y(n) shifted to the right i e the shifting delays the signal
If k is a negative number, y(n ) it gets shifted left. Signal Shifting advances the signal
Energy:
11 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Average power:
Program:
clc;
clear all;
close all;
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
% generating two input signals
t=0:.01:1;
x1=sin(2*pi*4*t);
x2=sin(2*pi*8*t);
subplot(2,2,1);
plot(t,x1);
xlabel('time');
ylabel('amplitude');
title('input signal 1');
subplot(2,2,2);
plot(t,x2);
xlabel('time');
ylabel('amplitude');
title('input signal 2');
% addition of signals
y1=x1+x2;
subplot(2,2,3);
plot(t,y1);
xlabel('time');
ylabel('amplitude');
title('addition of two signals');
% multiplication of signals
y2=x1.*x2;
subplot(2,2,4);
plot(t,y2);
xlabel('time');
ylabel('amplitude');
title('multiplication of two signals');
% scaling of a signal1
A=2;
y3=A*x1;
figure;
subplot(2,2,1);
plot(t,x1);
xlabel('time');
ylabel('amplitude');
12 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
title('input signal')
subplot(2,2,2);
plot(t,y3);
xlabel('time');
ylabel('amplitude');
title('amplified input signal');
% folding of a signal1
h=length(x1);
nx=0:h-1;
subplot(2,2,3);
plot(nx,x1);
xlabel('nx');
ylabel('amplitude');
title('input signal')
y4=fliplr(x1);
nf=-fliplr(nx);
subplot(2,2,4);
plot(nf,y4);
xlabel('nf');
ylabel('amplitude');
title('folded signal');
%shifting of a signal 1
figure;
subplot(3,1,1);
plot(t,x1);
xlabel('time t');
ylabel('amplitude');
title('input signal');
subplot(3,1,2);
plot(t+2,x1);
xlabel('t+2');
ylabel('amplitude');
title('right shifted signal');
subplot(3,1,3);
plot(t-2,x1);
xlabel('t-2');
ylabel('amplitude');
title('left shifted signal');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%operations on sequences
n1=1:1:9;
s1=[1 2 3 0 5 8 0 2 4];
figure;
subplot(2,2,1);
stem(n1,s1);
xlabel('n1');
ylabel('amplitude');
title('input sequence1');
s2=[1 1 2 4 6 0 5 3 6];
13 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
subplot(2,2,2);
stem(n1,s2);
xlabel('n2');
ylabel('amplitude');
title('input sequence2');
% addition of sequences
s3=s1+s2;
subplot(2,2,3);
stem(n1,s3);
xlabel('n1');
ylabel('amplitude');
title('sum of two sequences');
% multiplication of sequences
s4=s1.*s2;
subplot(2,2,4);
stem(n1,s4);
xlabel('n1');
ylabel('amplitude');
title('product of two sequences');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
% program for energy of a sequence
z1=input('enter the input sequence');
e1=sum(abs(z1).^2);
disp('energy of given sequence is');e1
% program for energy of a signal
t=0:pi:10*pi;
z2=cos(2*pi*50*t).^2;
e2=sum(abs(z2).^2);
disp('energy of given signal is');e2
% program for power of a sequence
p1= (sum(abs(z1).^2))/length(z1);
disp('power of given sequence is');p1
% program for power of a signal
p2=(sum(abs(z2).^2))/length(z2);
disp('power of given signal is');p2
OUTPUT:
enter the input sequence[1 3 2 4 1]
energy of given sequence is
e1 = 31
energy of given signal is
e2 = 4.0388
power of given sequence is
p1 = 6.2000
power of given signal is
p2 = 0.3672
Result: Various operations on signals and sequences are performed.
15 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
-------------------------------
16 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.4
Object: - Finding even and odd part of the signal and sequence and also find real and imaginary
parts of signal.
Software Required: Matlab software
Theory: One of characteristics of signal is symmetry that may be useful for signal analysis.
Even signals are symmetric around vertical axis, and Odd signals are symmetric about origin.
Even Signal: A signal is referred to as an even if it is identical to its time-reversed
counterparts; x(t) = x(-t).
Odd Signal: A signal is odd if x(t) = -x(-t).
An odd signal must be 0 at t=0, in other words, odd signal passes the origin.
Using the definition of even and odd signal, any signal may be decomposed into a sum of
its even part, xe(t), and its odd part, xo(t), as follows
Even and odd part of a signal: Any signal x(t) can be expressed as sum of even and odd
components i.e .,
x(t)=xe(t)+xo(t)
Program:
clc
close all;
clear all;
%Even and odd parts of a signal
t=0:.001:4*pi;
x=sin(t)+cos(t); % x(t)=sint(t)+cos(t)
subplot(2,2,1)
plot(t,x)
xlabel('t');
ylabel('amplitude')
title('input signal')
y=sin(-t)+cos(-t); % y(t)=x(-t)
subplot(2,2,2)
plot(t,y)
xlabel('t');
ylabel('amplitude')
title('input signal with t= -t')
even=(x+y)/2;
subplot(2,2,3)
plot(t,even)
xlabel('t');
17 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
ylabel('amplitude')
title('even part of the signal')
odd=(x-y)/2;
subplot(2,2,4)
plot(t,odd)
xlabel('t');
ylabel('amplitude');
title('odd part of the signal');
% Even and odd parts of a sequence
x1=[0,2,-3,5,-2,-1,6];
n=-3:3;
y1= fliplr(x1);%y1(n)=x1(-n)
figure;
subplot(2,2,1);
stem(n,x1);
xlabel('n');
ylabel('amplitude');
title('input sequence');
subplot(2,2,2);
stem(n,y1);
xlabel('n');
ylabel('amplitude');
title('input sequence with n= -n');
even1=.5*(x1+y1);
odd1=.5*(x1-y1);
% plotting even and odd parts of the sequence
subplot(2,2,3);
stem(n,even1);
xlabel('n');
ylabel('amplitude');
title('even part of sequence');
subplot(2,2,4);
stem(n,odd1);
xlabel('n');
ylabel('amplitude');
title('odd part of sequence');
% plotting real and imginary parts of the signal
x2=sin(t)+j*cos(t);
figure;
subplot(3,1,1);
plot(t,x2);
xlabel('t');
ylabel('amplitude');
title('input signal');
subplot(3,1,2)
plot(t,real(x2));
xlabel('time');
ylabel('amplitude');
title('real part of signal');
subplot(3,1,3)
plot(t,imag(x2));
xlabel('time');
ylabel('amplitude');
title('imaginary part of siganl');
18 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
RESULT: Even and odd part of the signal and sequence, real and imaginary parts of signal
are computed. Output:
19 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
-------------------------------
20 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.5
Object: - Write the program for convolution between two signals and also between two
sequences.
Software Required: Matlab software
Theory:-
Convolution involves the following operations.
1. Folding
2. Multiplication
3. Addition
4. Shifting
These operations can be represented by a Mathematical Expression as follows:
x[n]= Input signal Samples
h[ n-k]= Impulse response co-efficient.
y[ n]= Convolution output.
n = No. of Input samples
h = No. of Impulse response co-efficient.
Example : X(n)={1 2 -1 0 1}, h(n)={ 1,2,3,-1}
Program: clc;
close all;
clear all;
%program for convolution of two sequences
x=input('enter input sequence: ');
h=input('enter impulse response: ');
y=conv(x,h);
subplot(3,1,1);
stem(x);
xlabel('n');
ylabel('x(n)');
title('input sequence')
subplot(3,1,2);
stem(h);
xlabel('n');
ylabel('h(n)');
title('impulse response sequence')
subplot(3,1,3);
stem(y);
21 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
xlabel('n');
ylabel('y(n)');
title('linear convolution')
disp('linear convolution y=');
disp(y)
%program for signal convolution
t=0:0.1:10;
x1=sin(2*pi*t);
h1=cos(2*pi*t);
y1=conv(x1,h1);
figure;
subplot(3,1,1);
plot(x1);
xlabel('t');
ylabel('x(t)');
title('input signal')
subplot(3,1,2);
plot(h1);
xlabel('t');
ylabel('h(t)');
title('impulse response')
subplot(3,1,3);
plot(y1);
xlabel('n');
ylabel('y(n)');
title('linear convolution');
RESULT: convolution between signals and sequences is computed.
Output:
enter input sequence: [1 3 4 5]
enter impulse response: [2 1 4]
linear convolution y=
2 7 15 26 21 20
23 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.6
Objective:
To compute Auto correlation and Cross correlation between signals and sequences.
Software Required: Mat lab software
Theory:
Correlations of sequences:
It is a measure of the degree to which two sequences are similar. Given two real-valued
sequences x(n) and y(n) of finite energy,
Convolution involves the following operations.
1. Shifting
2. Multiplication
3. Addition
These operations can be represented by a Mathematical Expression as follows:
Cross correlation
The index l is called the shift or lag parameter
Autocorrelation
Program:
clc;
close all;
clear all;
% two input sequences
x=input('enter input sequence');
h=input('enter the impulse suquence');
subplot(2,2,1);
stem(x);
xlabel('n');
ylabel('x(n)');
title('input sequence');
subplot(2,2,2);
stem(h);
xlabel('n');
ylabel('h(n)');
title('impulse sequence');
% cross correlation between two sequences
24 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
y=xcorr(x,h);
subplot(2,2,3);
stem(y);
xlabel('n');
ylabel('y(n)');
title(' cross correlation between two sequences ');
% auto correlation of input sequence
z=xcorr(x,x);
subplot(2,2,4);
stem(z);
xlabel('n');
ylabel('z(n)');
title('auto correlation of input sequence');
% cross correlation between two signals
% generating two input signals
t=0:0.2:10;
x1=3*exp(-2*t);
h1=exp(t);
figure;
subplot(2,2,1);
plot(t,x1);
xlabel('t');
ylabel('x1(t)');
title('input signal');
subplot(2,2,2);
plot(t,h1);
xlabel('t');
ylabel('h1(t)');
title('impulse signal');
% cross correlation
subplot(2,2,3);
z1=xcorr(x1,h1);
plot(z1);
xlabel('t');
ylabel('z1(t)');
title('cross correlation ');
% auto correlation
subplot(2,2,4);
z2=xcorr(x1,x1);
plot(z2);
xlabel('t');
ylabel('z2(t)');
title('auto correlation ');
Result: Auto correlation and Cross correlation between signals and sequences is computed.
Output: enter input sequence [1 2 5 7]
enter the impulse sequence [2 6 0 5 3]
25 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
-------------------------------
26 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.7 Objective:
Compute the Unit sample, unit step and sinusoidal response of the given LTI system
and verifying its stability.
Software Required: Mat lab software 7.0 and above
Theory:
A discrete time system performs an operation on an input signal based on predefined criteria
to produce a modified output signal. The input signal x(n) is the system excitation, and y(n) is
the system response. The transform operation is shown as,
If the input to the system is unit impulse i.e. x(n) = δ(n) then the output of the system is
known as impulse response denoted by h(n) where,
h(n) = T[δ(n)]
we know that any arbitrary sequence x(n) can be represented as a weighted sum of discrete
impulses. Now the system response is given by,
For linear system (1) reduces to
%given difference equation y(n)-y(n-1)+.9y(n-2)=x(n);
27 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Program: %given difference equation y(n)-y(n-1)+.9y(n-2)=x(n);
clc;
clear all;
close all;
b=[1];
a=[1,-1,.9];
n =0:3:100;
%generating impulse signal
x1=(n==0);
%impulse response
y1=filter(b,a,x1);
subplot(3,1,1);
stem(n,y1);
xlabel('n');
ylabel('y1(n)');
title('impulse response');
%generating step signal
x2=(n>0);
% step response
y2=filter(b,a,x2);
subplot(3,1,2);
stem(n,y2);
xlabel('n');
ylabel('y2(n)')
title('step response');
%generating sinusoidal signal
t=0:0.1:2*pi;
x3=sin(t);
% sinusoidal response
y3=filter(b,a,x3);
subplot(3,1,3);
stem(t,y3);
xlabel('n');
ylabel('y3(n)');
title('sin response');
% verifing stability
figure;
zplane(b,a);
Result: The Unit sample, unit step and sinusoidal response of the given LTI system is
computed and its stability verified. Hence all the poles lie inside the unit circle, so system is
stable.
28 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Output:
-------------------------------
29 ShriRam College of Engineering & Managment
National Expressway (A.B. Road), Banmore
Experiment No.8
Object: To find the Fourier Transform of a given signal and plotting its magnitude and phase
spectrum.
Software Required: Matlab software
Theory:
Fourier Transform:
The Fourier transform as follows. Suppose that ƒ is a function which is zero outside of some
interval [−L/2, L/2]. Then for any T ≥ L we may expand ƒ in a Fourier series on the interval
[−T/2,T/2], where the "amount" of the wave e2πinx/T in the Fourier series of ƒ is given by
By definition Fourier Transform of signal f(t) is defined as
Inverse Fourier Transform of signal F(w) is defined as
Program: clc;
clear all;
close all;
fs=1000;
N=1024; % length of fft sequence
t=[0:N-1]*(1/fs);
% input signal
x=0.8*cos(2*pi*100*t);
subplot(3,1,1);
plot(t,x);
axis([0 0.05 -1 1]);
grid;
xlabel('t');
ylabel('amplitude');
title('input signal');
% Fourier transformof given signal
x1=fft(x);
% magnitude spectrum
k=0:N-1;
Xmag=abs(x1);
subplot(3,1,2);
plot(k,Xmag);
grid;
xlabel('t');
ylabel('amplitude');
title('magnitude of fft signal')
%phase spectrum
Xphase=angle(x1);
subplot(3,1,3);