0% found this document useful (0 votes)
18 views4 pages

Rajshahi University of Engineering & Technology

To perform circular convolution of given sequences using (a) the convolution summation formula (b) the matrix method and (c) Linear convolution from circular convolution with zero padding.

Uploaded by

abirf2003
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views4 pages

Rajshahi University of Engineering & Technology

To perform circular convolution of given sequences using (a) the convolution summation formula (b) the matrix method and (c) Linear convolution from circular convolution with zero padding.

Uploaded by

abirf2003
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Heaven’s Light is our Guide

Rajshahi University of Engineering & Technology

Department of Mechatronics Engineering

Course No: MTE 4104


Course Title: Digital Signal Processing & Machine Vision Sessional
Experiment name: To develop a program for computing DFT and IDFT using
FFT.
Experiment no: 06
Date of experiment: 22-09-2024
Date of submission: 22-10-2024

Submitted by Submitted to
Jubayer Al Mahmud Md Manirul Islam
Roll: 1908056 Assistant Professor
Department of Mechatronics Engineering
Rajshahi University of Engineering & Technology

Md. Hafiz Ahamed


Assistant Professor
Department of Mechatronics Engineering
Rajshahi University of Engineering & Technology
Experiment No: 06
Name of the experiment: To develop a program for computing DFT and IDFT using FFT.

Objective:
● Develop a program to compute the Discrete Fourier Transform (DFT) using the Fast
Fourier Transform (FFT) algorithm in MATLAB.
● Compute the Inverse Discrete Fourier Transform (IDFT) using the Inverse Fast Fourier
Transform (IFFT) in MATLAB.

Theory:
The Discrete Fourier Transform (DFT) is a fundamental mathematical tool used in signal
processing to convert a discrete-time sequence into its frequency-domain representation. The
DFT transforms a sequence of length N into another sequence of length N by evaluating the
frequency components of the original signal. It is mathematically defined as:
𝑁−1 2π
−𝑗 𝑘𝑛
X(k)= ∑ x(n).𝑒 𝑁
for k=1,2,3,.............,N-1
𝑛=0
Where:

● x(n) is the time-domain sequence.


● X(k) is the frequency-domain sequence (DFT result).
● N is the length of the sequence.
● j is the imaginary unit.

The Inverse Discrete Fourier Transform (IDFT) converts the frequency-domain sequence back
into the time domain and is given by:

𝑁−1 2π
1 𝑗 𝑘𝑛
x(n)= 𝑁
∑ X(k).𝑒 𝑁

𝑘=0

The Fast Fourier Transform (FFT) is an efficient algorithm to compute the DFT and IDFT with a
time complexity of O(Nlog⁡N), which is significantly faster than the direct computation of DFT,
2
which has a time complexity of O(𝑁 ).

MATLAB Code:
% Define the input sequence

x = [1, 2, 3, 4]; % Example sequence

N = length(x); % Length of the sequence


% Compute the DFT using FFT

X_fft = fft(x);

% Compute the IDFT using IFFT

x_ifft = ifft(X_fft);

% Display the results

disp('Original Sequence:');

disp(x);

disp('DFT (using FFT):');

disp(X_fft);

disp('Reconstructed Sequence (using IFFT):');

disp(x_ifft);

Output:

Figure: Output of the MATLAB Code.

Explanation of Code:

1. Input Sequence: The time-domain sequence x(n)=[1,2,3,4] is provided as an example.


The fft function in MATLAB computes the DFT, while the ifft function computes
the IDFT.
2. DFT Using FFT: The fft function computes the DFT efficiently by using the Fast
Fourier Transform algorithm.
3. IDFT Using IFFT: The ifft function computes the Inverse DFT (IDFT), returning the
sequence from the frequency domain back to the time domain.
4. Display Results: The original time-domain sequence, the DFT result, and the
reconstructed sequence from IDFT are displayed.

Discussion:

The DFT computation using FFT allows for efficient transformation of a time-domain signal
into the frequency domain. In this experiment, the fft function in MATLAB was used to
compute the DFT of a given sequence. The FFT reduces the computational complexity, making it
practical to analyze long sequences. The output of the FFT is a sequence of complex numbers
that represent the amplitude and phase of different frequency components in the original signal.
This frequency-domain representation is critical for tasks like filtering, spectral analysis, and
system identification.

The Inverse DFT (IDFT), computed using the ifft function, reconstructs the original
time-domain sequence from its frequency-domain representation. This process verifies that the
FFT and IFFT are inverse operations, and they allow signals to be transformed back and forth
between time and frequency domains without loss of information. The results from the IDFT are
consistent with the original sequence, showing that the transformation is accurate and reversible.
The ability to efficiently compute both DFT and IDFT is essential in numerous applications,
including digital signal processing, image processing, and communications systems.

Conclusion:

In this experiment, we successfully developed a MATLAB program to compute the Discrete


Fourier Transform (DFT) and Inverse Discrete Fourier Transform (IDFT) using the Fast Fourier
Transform (FFT) algorithm. The use of the FFT algorithm makes the computation efficient and
suitable for real-time applications where large data sets need to be processed. The experiment
demonstrated that the FFT and IFFT functions in MATLAB provide a reliable and efficient way
to perform these transformations, which are crucial in analyzing the frequency content of signals
and reconstructing them in the time domain.

You might also like