Lab Manual Signal and System
Lab Manual Signal and System
MATLAB is a software package for high-performance language for technical computing. It integrates
computation, visualization, and Programing in an easy-to-use environment where problems and solutions are
expressed in familiar mathematical notation. Typical uses include the following:
Math and computation
Algorithm development
Data acquisition
Modeling, simulation, and prototyping
Data analysis, exploration, and visualization
Scientific and engineering graphics
Application development, including graphical user interface building
9|Page
At its core ,MATLAB is essentially a set (a ―toolbox‖) of routines (called ―m files‖ or ―mex files‖) that sit
on your computer and a window that allows you to create new variables with names (e.g. voltage and time)
and process those variables with any of those routines (e.g. plot voltage against time, find the largest voltage,
etc).
It also allows you to put a list of your processing requests together in a file and save that combined
list with a name so that you can run all of those commands in the same order at some later time.
Furthermore, it allows you to run such lists of commands such that you pass in data and/or get data back out
(i.e. the list of commands is like a function in most programming languages). Once you save a function, it
becomes part of your toolbox (i.e. it now looks to you as if it were part of the basic toolbox that you started
with). For those with computer programming backgrounds: Note that MATLAB runs as an interpretive
language (like the old BASIC). That is, it does not need to be compiled. It simply reads through each line of
the function, executes it, and then goes on to the next line. (In practice, a form of compilation occurs when
you first run a function, so that it can run faster the next time you run it.)
The name MATLAB stands for matrix laboratory. MATLAB was originally written to provide easy access
to matrix software developed by the LINPACK and EISPACK projects. Today, MATLAB engines
incorporate the LAPACK and BLAS libraries, embedding the state of the art in software for matrix
computation. MATLAB has evolved over a period of years with input from many users. In university
environments, it is the standard instructional tool for introductory and advanced courses in mathematics,
engineering, and science. In industry, MATLAB is the tool of choice for high-productivity research,
development, and analysis.
MATLAB features a family of add-on application-specific solutions called toolboxes. Very important to
most users of MATLAB, toolboxes allow learning and applying specialized technology. Toolboxes are
comprehensive collections of MATLAB functions (M-files) that extend the MATLAB environment to solve
particular classes of problems. Areas in which toolboxes are available include Image processing, signal
processing, control systems, neural networks, fuzzy logic, wavelets, simulation, and many others.
10 | P a g e
The main features of MATLAB
1. Advance algorithm for high performance numerical computation, especially in the Field matrix algebra
2. A large collection of predefined mathematical functions and the ability to define one’s own functions.
3. Two-and three dimensional graphics for plotting and displaying data
4. A complete online help system
5. Powerful, matrix or vector oriented high level programming language for individual applications.
6. Toolboxes available for solving advanced problems in several application areas
1. Command Window : This is the main window .It is characterized by MATLAB command
prompt >> when you launch the application PROGRAM MATLAB puts you in this window all
commands including those for user-written PROGRAMs ,are typed in this window at the
MATLAB prompt .
2. Graphics window: the OUTPUT of all graphics commands typed in the command window are
flushed to the graphics or figure window, a separate gray window with white background color the
user can create as many windows as the system memory will allow .
3. Edit window: This is where you write, edit, create and save your own PROGRAMs in files
called M files.
Write OUTPUT files. Input-OUTPUT: MATLAB supports interactive computation taking the input from
the screen and flushing, the OUTPUT to the screen. In addition it can read input files and
11 | P a g e
Data Type: the fundamental data–type in MATLAB is the array. It encompasses several distinct data
objects- integers, real numbers, matrices, character strings, structures and cells. There is no need to declare
variables as real or complex, MATLAB automatically sets the variable to be real.
Dimensioning: Dimensioning is automatic in MATLAB. No dimension statements are required for vectors
or arrays .we can find the dimensions of an existing matrix or a vector with the size and length commands.
· The functional unit of data in any MATLAB PROGRAM is the array. An array is a collection
of data values organized into rows and columns, and known by a single name.
· MATLAB variable is a region of memory containing an array, which is known by a user
specified name. MATLAB variable names must begin with a letter, followed by any combination
of letters, numbers, and the underscore (_) character. Only the first 31 characters are significant; if
more than 31 are used, the remaining characters will be ignored. If two variables are declared with
names that only differ in the 32nd character, MATLAB will treat them as same variable.
· Spaces cannot be used in MATLAB variable names, underscore letters can be substituted to
create meaningful names.
· It is important to include a data dictionary in the header of any PROGRAM that you write. A
data dictionary lists the definition of each variable used in a PROGRAM. The definition should
include both a description of the contents of the item and the units in which it is measured.
· MATLAB language is case-sensitive. It is customary to use lower-case letters for
ordinary variable names.
· The most common types of MATLAB variables are double and char.
· MATLAB is weakly typed language. Variables are not declared in a PROGRAM before it
is used.
· MATLAB variables are created automatically when they are initialized. There are three
12 | P a g e
Input data into the variable from the keyboard.
Read data from a file.
· The semicolon at the end of each assignment statement suppresses the automatic echoing of
values that normally occurs whenever an expression is evaluated in an assignment statement.
You will find a Command window where in which you can type the commands and see the
OUTPUT. For example if you type PWD in the command window, it will print current
working directory.
If you want to create a directory type mkdir mydir in the command window, it will create a
directory called pes.
If you want delete a directory type rmdir mydir in the command window.
How to open a file in MATLAB?
Go to File _ New_ M-File and click
Then type the PROGRAM in the file and save the file with an extension of .m. While
giving filename we should make sure that given file name should not be a command. It is
better to give the filename as my convolution .
How to run a MATLAB file?
Go to Debug->run and click
10. stem (t,x) :- This instruction will display a figure window as shown
11. Subplot: This function divides the figure window into rows and columns. Subplot (2 2
1) divides the figure window into 2 rows and 2 columns 1 represent number of the
figure
14 | P a g e
Subplot (3 1 2) divides the figure window into 3 rows and 1 column 2 represent the figure number
12. Conv Syntax: w = conv(u,v) Description: w = conv(u,v) convolves vectors u and v.
Algebraically, convolution is the same operation as multiplying the polynomials whose
coefficients are the elements of u and v.
13. Disp Syntax: disp(X) Description: disp(X) displays an array, without printing the array name.
If X contains a text string, the string is displayed. Another way to display an array on the screen is
to type its name, but this prints a leading "X=," which is not always desirable.
Note: disp does not display empty arrays.
16. Title Syntax : title('string') Description: title('string') OUTPUTs the string at the top and in the
center of the current axes.
17. grid on Syntax : grid on Description: grid on adds major grid lines to the current axes.
15 | P a g e
18. FFT Discrete Fourier transform. FFT(X) is the discrete Fourier transform (DFT) of vector X. For
matrices, the FFT operation is applied to each column. For N-D arrays, the FFT operation operates on the
first non-singleton dimension. FFT(X,N) is the N-point FFT, padded with zeros if X has less than N points
and truncated if it has more.
19. ABS Absolute value. ABS(X) is the absolute value of the elements of X. When X is complex, ABS(X)
is the complex modulus (magnitude) of the elements of X.
20. ANGLE Phase angle. ANGLE (H) returns the phase angles, in radians, of a matrix with complex
elements.
21. INTERP Resample data at a higher rate using lowpass interpolation. Y = INTERP(X,L) resamples the
sequence in vector X at L times the original sample rate. The resulting resampled vector Y is L times
longer, LENGTH(Y) = L*LENGTH(X).
22. DECIMATE Resample data at a lower rate after low pass filtering.
Y = DECIMATE(X, M) resample the sequence in vector X at 1/M times the original sample
rate. The resulting resample vector Y is M times shorter, i.e., LENGTH(Y) = CEIL (LENGTH(X)/M). By
default, DECIMATE filters the data with an 8th order Chebyshev Type I low pass filter with cutoff
frequency .8*(Fs/2)/R, before resampling.
16 | P a g e
EXPERIMENT-1
BASIC OPERATIONS ON MATRICES
AIM:
To generate matrix and perform basic operation on matrices Using MATLAB Software.
EQUIPMENTS:
PC with windows (95/98/XP/NT/2000).
MATLAB Software
THEORY:
MATLAB treats all variables as matrices. For our purposes a matrix can be thought of
as an array, in fact, that is how it is stored.
• Vectors are special forms of matrices and contain only
one row OR one column.
• Scalars are matrices with only one row AND one column.A matrix with only
one row AND one column is a scalar. A scalar can be reated in MATLAB as
follows:
≫ a_value=23
a_value =23
• A matrix with only one row is called a row vector. A row vector can be
created in MATLAB as follows :
≫ rowvec = [12 , 14 , 63]
rowvec =
12 14 63
• A matrix with only one column is called a column vector. A column vector can
be created in MATLAB as follows:
≫ colvec = [13 ; 45 ; -2]
colvec =
13
45
-2
• A matrix can be created in MATLAB as follows:
≫ matrix = [1 , 2 , 3 ; 4 , 5 ,6 ; 7 , 8 , 9]
matrix =
17 | P a g e
123
456
789
Extracting a Sub-Matrix
A portion of a matrix can be extracted and stored in a smaller matrix by
specifying the names of both matrices and the rows and columns to extract. The
syntax is:
sub_matrix = matrix ( r1 : r2 , c1 : c2 ) ;
Where r1 and r2 specify the beginning and ending rows and c1 and c2 specify
the beginning and ending columns to be extracted to make the new matrix.
• A column vector can beextracted from a matrix.
• As an example we create a matrix below:
≫ matrix=[1,2,3;4,5,6;7,8,9]
matrix = 1 2 3
456
789
Here we extract column 2 of the matrix and make a column vector:
≫ col_two=matrix( : , 2) col_two =
258
• A row vector can be extracted from a matrix.
As an example we create a matrix below:
≫ matrix=[1,2,3;4,5,6;7,8,9]
matrix = 1 2 3
456
789
• Here we extract row 2 of the matrix and make a row vector. Note that the
2:2 specifies the second row and the 1:3 specifies which columns of the row.
≫ rowvec=matrix(2 : 2 , 1 :3)
rowvec =4 5 6
18 | P a g e
≫a=3;
≫ b=[1, 2, 3;4, 5, 6] b = 1 2 3
456
≫ c= b+a % Add a to each element of b c = 4 5 6
789
• Scalar - Matrix Subtraction
≫ a=3;
≫ b=[1, 2, 3;4, 5, 6] b = 1 2 3
456
≫ c = b - a %Subtract a from each element of b c = -2-10
123
• Scalar - Matrix Multiplication
≫ a=3;
≫ b=[1, 2, 3; 4, 5, 6] b = 1 2 3
456
≫ c = a * b % Multiply each element of b by a c = 3 6 9
12 15 18
• Scalar - Matrix Division
≫ a=3;
≫ b=[1, 2, 3; 4, 5, 6]
19 | P a g e
b =123 4
56
≫ c = b / a % Divide each element of b by a c = 0.3333 0.6667 1.0000
y=a+b;
disp('the addition value
is');
disp(y);
x=a-b;
disp('the subtraction value
is');
disp(x);
%multiplication of two
matrices z=a*b;
disp('the multiplication value
is'); disp(z);
20 | P a g e
%multiplication of two matrices element by
element z=a.*b;
disp('the multiplication value
is'); disp(z);
r=a/2;
disp('the matrix division by a value 2 is');
disp(r);
%transpose of a
matrix p=a';
disp('the transpose of matrix a
is'); disp(p);
%inverse of
matrix q=inv(a);
disp('the inverse of matrix a
is'); disp(q);
%determinant of a matrix
r=det(a);
disp('the detrerment of matrix a is');
disp(r);
CONCLUSION:
In this experiment basic operations on matrices Using MATLAB have been demonstrated.
21 | P a g e
RESULT:
22 | P a g e
EXPERIMENT-2
AIM:
To generate different types of signals Using MATLAB Software.
EQUIPMENTS:
PC with windows (95/98/XP/NT/2000).
MATLAB Software
23 | P a g e
Square waves: Like sine waves, square waves are described in terms of
period, frequency and amplitude:
24 | P a g e
Peak amplitude, Vp , and peak-to-peak amplitude, Vpp , are measured as you might
expect. However, the rms amplitude, Vrms , is greater than that of a sine wave.
Remember that the rms amplitude is the DC voltage which will deliver the same
power as the signal.
If a square wave supply is connected across a lamp, the current flows first one way and
then the other. The current switches direction but its magnitude remains the same. In other
words, the square wave delivers its maximum power throughout the cycle so that Vrms is
equal to Vp . (If this is confusing, don't worry, the rms amplitude of a square wave is not
something you need to think about very often.)
Although a square wave may change very rapidly from its minimum to maximum
voltage, this change cannot be instaneous. The rise time of the signal is defined as the
time taken for the voltage to change from 10% to 90% of its maximum value. Rise
timesare usually very short, with durations measured in nanoseconds (1 ns = 10-9 s), or
microseconds (1 μs = 10-6 s), as indicated in the graph
SAW TOOTH:
The sawtooth wave (or saw wave) is a kind of non-sinusoidal waveform. It is named a
sawtooth based on its resemblance to the teeth on the blade of a saw. The Convention is
that a sawtooth wave ramps upward and then sharply drops. However, there are also
sawtooth waves in which the wave ramps downward and then sharply rises. The latter type
of sawtooth wave is called a 'reverse sawtooth wave' or 'inverse sawtooth wave'. As audio
signals, the two orientations of sawtooth wave sound identical. The piecewise linear
function based on the floor function of time t, is an example of a sawtooth wave with
period 1. A more general form, in the range −1 to 1, and with period a, is this sawtooth
function has the same phase as the sine function. A sawtooth wave's sound is harsh and
clear and its spectrum contains both even and odd harmonics of the fundamental
frequency. Because it contains all the integer harmonics, it is one of the best waveforms to
use for synthesizing musical sounds, particularly bowed string instruments like violins and
cellos, using subtractive synthesis.
25 | P a g e
Triangle wave
A triangle wave is a non-sinusoidal waveform named for its triangular shape.A
bandlimited triangle wave pictured in the time domain (top) and frequency domain
(bottom). The fundamental is at 220 Hz (A2).Like a square wave, the triangle wave
contains only odd harmonics. However, the higher harmonics roll off much faster than in
a square wave (proportional to the inverse square of the harmonic number as opposed to
just the inverse).It is possible to approximate a triangle wave with additive synthesis by
adding odd harmonics of the fundamental, multiplying every (4n−1)th harmonic by −1
(or changing its phase by π), and rolling off the harmonics by the inverse square of their
relative frequency to the fundamental.This infinite Fourier series converges to the triangle
wave:
26 | P a g e
• υ, the phase, specifies where in its cycle the oscillation begins at t = 0.
A sampled sinusoid may be written as:
where f is the signal frequency, fs is the sampling frequency, θ is the phase and A is
the amplitude of the signal. The PROGRAM and its OUTPUT is shown below:
Note that there are 64 samples with sampling frequency of 8000Hz or sampling time
of 0.125 mS (i.e. 1/8000). Hence the record length of the signal is 64x0.125=8mS.
There are exactly 8 cycles of sinewave, indicating that the period of one cycle is 1mS
which means that the signal frequency is 1KHz.
SINC FUNCTION:
The sinc function computes the mathematical sinc function for an input vector or matrix
x. Viewed as a function of time, or space, the sinc function is the inverse Fourier
transform of the rectangular pulse in frequency centered at zero of width 2π and height
1. The following equation defines the sinc function:
27 | P a g e
PROGRAM:
%discrete unit impulse sequence generation clc;
close all; n=-
3:4;
x=[n==0];
subplot(4,4,1),stem(n,x);
title('discrete unit impulse');
%continuous unit impulse signal generation
t=-3:.25:4;
x=[t==0];
subplot(4,4,2),plot(t,x); title('continuous
unit impulse');grid;
n=-3:4;
y=[n>=0];
subplot(4,4,3),stem(n,y);
xlabel('n')
28 | P a g e
ylabel('amplitude'); title('discrete
unit step');grid;
t = -5:.01:5; x =
square(t);
subplot(4,4,5),plot(t,x);
xlabel('Time (sec)');ylabel('Amplitude'); title('continuous Square Periodic Wave');grid;
5:5;
x = square(n);
subplot(4,4,6),stem(n,x);
xlabel('Time (sec)');ylabel('Amplitude');title('discrete Square Periodic Wave');grid;
5:.01:5;
x = sawtooth(t);
subplot(4,4,7),plot(t,x);
xlabel('Time (sec)');ylabel('Amplitude'); title('continuous Sawtooth Periodic Wave');grid;
29 | P a g e
n = -5:5;
x = sawtooth(n);
subplot(4,4,8),stem(n,x);
xlabel('Time (sec)');ylabel('Amplitude');title('discrete Sawtooth Periodic Wave');grid;
5:.01:5;
x = sin(t);
subplot(4,4,9),plot(t,x);
xlabel('Time (sec)');ylabel('Amplitude'); title('continuous Sinusodial Periodic Wave');grid;
5:5;
x = sin(n);
subplot(4,4,10),stem(n,x);
xlabel('Time (sec)');ylabel('Amplitude');title('discrete Sinsodial Periodic Wave');grid;
0:.01:5;
x=2*t;
subplot(4,4,11),plot(t,x);
xlabel('Time (sec)');ylabel('Amplitude'); title('continuous ramp APeriodic Wave');grid;
0:5;
x=2*n;
subplot(4,4,12),stem(n,x);
xlabel('Time (sec)');ylabel('Amplitude');title('discrete ramp APeriodic sequence');grid
30 | P a g e
% continuous sinc signal generator
t = -5:.01:5; x = sinc(t);
subplot(4,4,13),plot(t,x);
5:.1:5;
x = sinc(n);
subplot(4,4,14),stem(n,x);
xlabel('Time (sec)');ylabel('Amplitude');title('discrete Sinc APeriodic Wave');grid;
31 | P a g e
OUTPUT:
RESULT:
VIVA QUESTIONS:
1. Define Signal
2. Define determistic and Random Signal
3. Define Delta Function
4. What is Signal Modeling
5. Define Periodic and a periodic Signal
6. Define Symetric and Anti-Symmetric Signals
7. Define Continuous and Discrete Time Signals
8. What are the Different types of representation of discrete
32 | P a g e
EXPERIMENT-3
OPERATIONS ON SIGNALS AND SEQUENCES
AIM: To performs functions on signals and sequences such as addition, multiplication, scaling, shifting,
folding, computation of energy and average power.
On the contrary, the power signal is not limited in time. It always exists from beginning to end
and it never ends. For example, sine wave in infinite length is power signal. Since the
energy of a power signal is infinite, it has no meaning to us. Thus, we use power
(energy per given time) for power signal, because the power of power signal is finite, 0 <
P<∞.
33 | P a g e
PROGRAM:
Operations on signals such as addition, subtraction,
multiplication,amplitude scaling
clc;
clear
all;
close
all;
%plot 2 hz sinusodial
signal t=0:.01:1;
f1=2; A=8;
s1=A*sin(2*pi*f1*t);
figure,
subplot(2,1,1),plot(t,s1,'r');
grid; xlabel('---time');
ylabel('amplitude');
title('signal 1');
%plot 10 hz sinusodial
signal t=0:.01:1;
f2=10;
A=6;
s2=A*sin(2*pi*f2*t);
subplot(2,1,2),plot(t,s2,'g');gri
d; xlabel('---time');
ylabel('amplitude');
title('signal 2');
%signal
y=s1+s2;
figure,
subplot(2,1,1),plot(t,y);gri
d; xlabel('-->time');
ylabel('amplitude');
34 | P a g e
title('the summed signal s1+s2');
%signal subtraction y=s1-s2;
subplot(2,1,2),plot(t,y,'r');gri
d; xlabel('-->time');
ylabel('amplitude');
title('the subtracted signal s1-s2');
%signal multiplication element by
element y=s1.*s2;
figure,
plot(t,y,'g')
;
xlabel('-->time');
ylabel('amplitude')
;
title('the multiplied signal s1.*s2');
%Amplitude scaling of signal
s1 alpa= 3;
y=alpha*s1
; figure,
subplot(2,1,1),plot(t,y);
xlabel('-->time');
ylabel('amplitude')
;
title('the signal s1 amplitude is multiplied by alpha');
%amplitude scaling of signal
s2 alpha=1/2;
y=alpha*s2;
subplot(2,1,2),plot(t,y)
;
xlabel('-->time');
ylabel('amplitude')
;
title('the signal s2 is amplitude scaled by 1/alpha');
35 | P a g e
PROGRAM2: Operations on signals such as time shifting, time scaling & time reversal
clc; clear all;
close all;
%plot ramp signal
t=[0:0.01:5];
x=1*t;
subplot(2,2,1),plot(t,x);grid;axis([0 5 0 5]);
title('ramp signal');xlabel('t');ylabel('amplitude');
%plot advanced ramp signal t=[-
3:0.01:2]
x=1*(t+3); subplot(2,2,2),plot(t,x);grid;axis([-3
2 0 5]);
title('advanced ramp signal');xlabel('t');ylabel('amplitude');
%plot delayed ramp signal
t=[3:0.01:8];
x=1*(t-3); subplot(2,2,3),plot(t,x);grid;axis([3
8 0 5]);
title('delayed ramp
signal');xlabel('t');ylabel('amplitude'); %plot folding or
time reversal operation t=[-5:.01:0];
x=1*-t;
subplot(2,2,4),plot(t,x);grid;
title('time reversal operation');xlabel('t');ylabel('amplitude');
%plot time scaling t=[-
6:.01:6];
x=2*rectpuls(t,4);
figure;
subplot(3,1,1),plot(t,x);grid;
title('original signal');xlabel('t');ylabel('amplitude');
36 | P a g e
%plot compressed signal t=[-
6:.01:6];
x=2*rectpuls(2*t,4);
subplot(3,1,2),plot(t,x,'g');grid;
title('compressed signal');xlabel('t');ylabel('amplitude');
%plot('expanded signal t=[-6:.01:6];
x=2*rectpuls(1/2*t,4);
subplot(3,1,3),plot(t,x,'r');grid;
title('expanded signal');xlabel('t');ylabel('amplitude');
37 | P a g e
%time advance sequence
subplot(4,4,8),stem(n-2,x1);grid;
title('time advance sequence');
%time folding sequence;
subplot(4,4,9),stem((-n),x1);
xlabel('n');ylabel('amplitude');grid;
title('time folding sequence');
%time scaling sequence
subplot(4,4,10),stem(2*n,x1);
xlabel('n');ylabel('amplitude');grid;
title('time scaling sequence');
38 | P a g e
OUTPUT:
39 | P a g e
PROGRAM2o/p:
40 | P a g e
PROGRAM3 o/p:
enter the number of elements5
enter the first sequence[3 4 7 9 8]
enter the second sequence[1 2 3 4 6]
41 | P a g e
PROGRAM4 o/p:
enter the value of N200
energy is
201
power is 0.5012
CONCLUSION:
In this experiment various operations on signals and sequences and energy and power
of signals have been calculated Using MATLAB
Exercise questions:
1.x(t)= u(-t+1)
2. x(t)=3r(t-1)
3. x(t)=U(n+2-u(n-3)
4. x(n)=x1(n)+x2(n)where x1(n)={1,3,2,1},x2(n)={1,-2,3,2}
5. x(t)=r(t)-2r(t-1)+r(t-2)
6. x(n)=2δ(n+2)-2δ(n-4), -5≤ n ≥5.
7. X(n)={1,2,3,4,5,6,7,6,5,4,2,1} determine and plot the following
sequence a. x1(n)=2x(n-5-3x(n+4))
1. b. x2(n)=x(3-n)+x(n)x(n-2)
4 calculate the following signals energies
1.x(t)= e j(2t+Π/4)
2.x(t)=cos(t)
3.x(t)=cos(Π/4 n
RESULT:
VIVA QUESTIONS:
1. What are the Different types of Operation performed on signals.
2. Define Energy and Power signal.
3. What is the result of adding & subtracting two unit step signals.
4. Consider any one signal and perform shifting, scaling and reversal operations
5. Define the Properties of Impulse Signal
6. What is Causality Condition of the Signal
42 | P a g e
EXPERIMENT-4
GIBBS PHENOMENON
EQUIPMENTS:
PC with windows (95/98/XP/NT/2000).
MATLAB Software
THEORY:
the Gibbs phenomenon, the Fourier series of a piecewise continuously differentiable periodic
function behaves at a jump discontinuity. The n the approximated function shows amounts of ripples
at the points of discontinuity. This is known as the Gibbs Phenomina . partial sum of the Fourier
series has large oscillations near the jump, which might increase the maximum of the partial sum
above that of the function itself. The overshoot does not die out as the frequency increases, but
approaches a finite limit
The Gibbs phenomenon involves both the fact that Fourier sums overshoot at a jump discontinuity,
and that this overshoot does not die out as the frequency increases Gibbs Phenomina
PROGRAM :
t=0:0.1:(pi*8);
y=sin(t);
subplot(5,1,1);
plot(t,y);
xlabel('k'); ylabel('amplitude');
title('gibbs phenomenon'); h=2;
%k=3;
for k=3:2:9
y=y+sin(k*t)/k;
subplot(5,1,h);
43 | P a g e
plot(t,y);
xlabel('k');
ylabel('amplitude');
h=h+1;
end
OUTPUT:
44 | P a g e
CONCLUSION:
In this experiment Gibbs phenomenon have been
demonstrated Using MATLAB
RESULT:
VIVA QUESTIONS:
45 | P a g e
EXPERIMENT-5
Fourier Transform AND INVERSE FOURIER TRANSFORM
AIM: To find the Fourier Transform of a given signal and plotting its magnitude
and phase spectrum
EQUIPMENTS:
PC with windows (95/98/XP/NT/2000).
MATLAB Software.
THEORY:
Fourier Transform Theorems:
We may use Fourier series to motivate 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 e 2πinx/T in the
Fourier series of ƒ is given by By definition
DFT of a sequence
PROGRAM:
47 | P a g e
OUTPUT:
48 | P a g e
ylabel('X(K)')
subplot(2,1,2)
plot(phase); grid
xlabel('k')
ylabel('degrees')
OUTPUT:
Applications:
The no of multiplications in DFT = N2.
The no of Additions in DFT = N(N-1). For
FFT.
The no of multiplication = N/2 log 2N.
49 | P a g e
The no of additions = N log2 N.
CONCLUSION:
In this experiment the fourier transform of a given signal and plotting its
magnitude and phase spectrum have been demonstrated using matlab
RESULT:
VIVA QUESTIONS:
1 .Define Fourier Series
2 What is Half Wave Symmetry
50 | P a g e
EXPERIMENT-6
PROPERTIES OF FOURIER TRNASFORM
AIM:
EQUIPMENTS:
THEORY:
DTFT Properties
Time shifting
Time reversal
Convolution
Let x[n] X(ejw) and h[n] H(ejw).
If y[n] = x[n] h[n], then
Y(ejw) = X(ejw)H(ejw)
51 | P a g e
PROGRAM:
% Time-Shifting Property of
DTFT clc;
clear all;
close all;
w = -pi:2*pi/255:pi; wo = 0.4*pi; D = 10;
num = [1 2 3 4 5 6 7 8 9];
h1 = freqz(num, 1, w);
h2 = freqz([zeros(1,D) num], 1, w);
subplot(2,2,1)
plot(w/pi,abs(h1));grid
title('Magnitude Spectrum of Original Sequence')
subplot(2,2,2)
plot(w/pi,abs(h2));grid
title('Magnitude Spectrum of Time-Shifted Sequence')
subplot(2,2,3)
plot(w/pi,angle(h1));grid
title('Phase Spectrum of Original Sequence')
subplot(2,2,4)
plot(w/pi,angle(h2));grid
title('Phase Spectrum of Time-Shifted Sequence')
w = -pi:2*pi/255:pi; wo = 0.4*pi; D = 10;
num = [1 2 3 4 5 6 7 8 9];
h1 = freqz(num, 1, w);
h2 = freqz([zeros(1,D) num], 1, w);
subplot(2,2,1)
plot(w/pi,abs(h1));grid
title('Magnitude Spectrum of Original Sequence')
subplot(2,2,2)
plot(w/pi,abs(h2));grid
title('Magnitude Spectrum of Time-Shifted Sequence')
subplot(2,2,3)
plot(w/pi,angle(h1));grid
title('Phase Spectrum of Original Sequence')
52 | P a g e
subplot(2,2,4)
plot(w/pi,angle(h2));grid
title('Phase Spectrum of Time-Shifted Sequence')
OUTPUT:
53 | P a g e
title('Magnitude Spectrum of Original Sequence')
subplot(2,2,2)
plot(w/pi,abs(h3));grid
title('Magnitude Spectrum of Time-Reversed Sequence')
subplot(2,2,3)
plot(w/pi,angle(h1));grid
title('Phase Spectrum of Original Sequence')
subplot(2,2,4)
plot(w/pi,angle(h3));grid
title('Phase Spectrum of Time-Reversed Sequence')
OUTPUT:
54 | P a g e
x1 = [1 3 5 7 9 11 13 15 17];
x2 = [1 -2 3 -2 1];
y = conv(x1,x2);
h1 = freqz(x1, 1, w);
h2 = freqz(x2, 1, w);
hp = h1.*h2;
h3 = freqz(y,1,w);
subplot(2,2,1)
plot(w/pi,abs(hp));grid
title('Product of Magnitude Spectra')
subplot(2,2,2)
plot(w/pi,abs(h3));grid
title('Magnitude Spectrum of Convolved Sequence')
subplot(2,2,3)
plot(w/pi,angle(hp));grid
title('Sum of Phase Spectra')
subplot(2,2,4)
plot(w/pi,angle(h3));grid
title('Phase Spectrum of Convolved Sequence')
OUTPUT:
55 | P a g e
CONCLUSION:
In this experiment the properties of DTFT are verified using MATLAB
RESULT:
56 | P a g e
LAB ASSIGNMENT
1. To verify the frequency-shifting property of the DTFT
57 | P a g e
EXPERIMENT-7
LAPLACE TRNASFORM
EQUIPMENTS:
PC with windows (95/98/XP/NT/2000).
MATLAB Software
THEORY:
Bilateral Laplace transform :
When one says "the Laplace transform" without qualification, the unilateral or one- sided
transform is normally intended. The Laplace transform can be alternatively defined as the
bilateral Laplace transform or two-sided Laplace transform by extending the limits of
integration to be the entire real axis. If that is done the common unilateral transform
simply becomes a special case of the bilateral transform where the definition of the
function being transformed is multiplied by the Heaviside step function. The bilateral
Laplace transform is defined as follows:
The inverse Laplace transform is given by the following complex integral, which
is known by various names (the Bromwich integral, the Fourier-Mellin integral,
and
Mellin's inverse formula):
PROGRAM:
syms f t; f=t;
laplace(f)
PROGRAM for nverse Laplace Transform
f(s)=24/s(s+8) invese LT
syms F s
58 | P a g e
F=24/(s*(s+8));
ilaplace(F)
y(s)=24/s(s+8) invese LT poles and zeros
Signal synthese using Laplace Tnasform:
clear all
clc t=0:1:5
s=(t); subplot(2,3,1)
plot(t,s); u=ones(1,6)
subplot(2,3,2)
plot(t,u); f1=t.*u;
subplot(2,3,3)
plot(f1);
s2=-2*(t-1);
subplot(2,3,4);
plot(s2);
u1=[0 1 1 1 1 1];
f2=-2*(t-1).*u1;
subplot(2,3,5);
plot(f2);
u2=[0 0 1 1 1 1];
f3=(t-2).*u2;
subplot(2,3,6);
plot(f3); f=f1+f2+f3;
figure; plot(t,f);
% n=exp(-t);
% n=uint8(n);
59 | P a g e
% f=uint8(f);
% R = int(f,n,0,6)
laplace(f);
OUTPUT:
60 | P a g e
CONCLUSION:
In this experiment the Triangular signal synthesised
using Laplece Trnasforms using MATLAB
Applications of laplace transforms:
1.Derive the circuit (differential) equations in the time domain, then transform these ODEs
to the s-domain;
2.Transform the circuit to the s-domain, then derive the circuit equations in the sdomain
RESULT:
VIVA QUESTIONS:
1. Define Laplace-Transform
2. What is the Condition for Convergence of the L.T
3. What is the Region of Convergence(ROC)
4. State the Shifting property of L.T
5. State convolution Property of L.T
6. Define Transfer Function
7. Define Pole-Zeros of the Transfer Function
61 | P a g e
EXPERIMENT-8
AUTO CORRELATION AND CROSS CORRELATION BETWEEN
SIGNALS AND SEQUENCES
AIM:To compute auto correlation and cross correlation between signals and sequences
EQUIPMENTS:
PC with windows (95/98/XP/NT/2000).
MATLAB 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
PROGRAM:
% Cross
Correlation clc;
close all;
69 | P a g e
clear all;
x=input('enter input sequence');
h=input('enter the impulse suquence');
subplot(3,1,1);
stem(x);
xlabel('n');
ylabel('x(n)'); title('input
signal'); subplot(3,1,2);
stem(h); xlabel('n');
ylabel('h(n)'); title('impulse
signal'); y=xcorr(x,h);
subplot(3,1,3);
stem(y); xlabel('n');
ylabel('y(n)');
disp('the resultant signal is');
disp(y);
title('correlation signal');
OUTPUT:
70 | P a g e
PROGRAM:
% auto correlation
clc; close all; clear
all;
x = [1,2,3,4,5]; y =
[4,1,5,2,6]; subplot(3,1,1);
stem(x); xlabel('n');
ylabel('x(n)'); title('input
signal'); subplot(3,1,2);
stem(y); xlabel('n');
ylabel('y(n)'); title('input
signal'); z=xcorr(x,x);
subplot(3,1,3); stem(z);
xlabel('n'); ylabel('z(n)');
71 | P a g e
OUTPUT:
CONCLUSION:
In this experiment correlation of various signals have been
performed Using MATLAB Applications:it is used to measure the degree to which the
two signals are similar and it is also used for radar detection by estimating the time
delay.it is also used in Digital communication, defence applications and sound
navigation Excersize questions: perform convolution between the following signals 1.
X(n)=[1 -1 4 ], h(n) = [ -1 2 -3 1]
2. perform convolution between the. Two periodic
sequences x1(t)=e-3t{u(t)-u(t-2)} , x2(t)= e -3t for 0 ≤ t ≤ 2
RESULT:
VIVA QUESTIONS:
1. Define Correlation
2. Define Auto Correlation and Cross Correlation
3. What is the Difference Between Convolution& Correlation
72 | P a g e