You are on page 1of 8

EXPERIMENT 11

Fourier transform of signals in MATLAB


Objectives:
• Familiarizing students with Aperiodic signals.
• Calculate Fourier transform of continuous and discrete time signals.

Equipment required:
• MATLAB installed on PCs

Background Knowledge:
The Fourier Transform is a mathematical technique that transforms a function of time, x(t) to a function of
frequency, X(w). Fourier transform is closely related to the Fourier Series. Fourier Series is only applicable
on periodic signals. To represent aperiodic signals, Fourier developed a mathematical model to transform
signals from time domain to frequency domain & vice versa, which is called 'Fourier transform'.
Aperiodic Signals:
A signal which does not repeat itself after a specific time interval is known as aperiodic signal.
Continuous Time Fourier Transform:
The Continuous Time Fourier Transform (CTFT) expresses a continuous signal 𝑥(𝑡) in frequency domain
in terms of complex exponential signal 𝒆−𝒋𝒘𝒕, where 𝑤 is real frequency variable. The mathematical
expression for continuous time Fourier transform is:
+∞
X(w) = ∫ x(t)e−jwt dt
−∞

Inverse Fourier transform for continuous time signals is defined as:


1 +∞
𝑥(𝑡) = ∫ 𝑋(𝑤)𝑒 𝑗𝑤𝑡 𝑑w
2π −∞

It is important to note that the Fourier transform is applicable to aperiodic signals, since the limits of integral
are from −∞ to +∞.
The Fourier transform representation of a signal is unique, and the original signal can be computed from its
Fourier transform by inverse transformation operation.
The fourier and ifourier command:
MATLAB allows direct computation of Fourier transform for a signal x(t) by using fourier command.
fourier(f) returns the Fourier Transform of f. The inverse Fourier transform is computed by using
ifourier command. ifourier(F) returns the Inverse Fourier Transform of F. Declare the variables 𝑡 and w
as symbolic variables and then execute these commands.
Some important MATLAB functions that will be used in this lab are as follows:

Function Usage

rectpuls(t,w) Generates a rectangular pulse with time t and width w


abs() Returns the absolute value of a function

fourier() Calculates the Fourier transform of a signal

ifourier() Calculates the inverse Fourier transform of a signal

Example:
Calculate the Fourier transform of the given continuous time signal x(t), defined as:
0 t<0
x(t) = { −t
e t≥0
Theoretically, the Fourier transform X(w)for exponentially decaying signal x(t), is given by:
+∞
𝑋(𝑤) = ∫ 𝑥(𝑡)𝑒 −𝑗𝑤𝑡 𝑑𝑡
−∞

1
=
𝑖𝑤 + 1
In MATLAB, we use symbolic toolkit to compute the Fourier transform for this signal.

To retrieve the original signal x(t), ifourier command is used.


Example:

Calculate the Fourier transform of f(t), such that f(t) = e−|t| . Plot the signal and its transform.

The Fourier transform of f(t) comes out to be:

The inverse Fourier transform is:


The signal f(t), its Fourier transform, and then inverse Fourier transform is plotted as:

Discrete Time Fourier Transform:


The Discrete Time Fourier Transform (DTFT) expresses a discrete signal 𝑥[𝑛] in frequency domain in
terms of complex exponential signal 𝒆−𝒋𝒘𝒏, where 𝑤 is real frequency variable. The mathematical
expression for discrete time Fourier transform is:

𝑗𝑤
X(𝑒 ) = ∑ 𝑥[𝑛] 𝑒 −𝑗𝑤𝑛
𝑘=−∞

In DTFT a discrete, aperiodic time domain signal is transformed into continuous, periodic frequency
domain signal. DTFT is only theoretical and cannot be practically implemented since it is impossible to
process infinite samples. Discrete Fourier Transform (DFT) is derived from DTFT to solve this issue, where
DFT is used for finite length sequences. The discrete Fourier transform (DFT) can be seen as the sampled
version (in frequency-domain) of the DTFT output. It is used to calculate the frequency spectrum of a
discrete-time signal with a computer, because computers can only handle a finite number of values.
DFT of a signal x[n] is defined as:
𝑁−1
2𝜋𝑘
−𝑗( )𝑛
x(𝑘) = ∑ 𝑥[𝑛] 𝑒 𝑁
𝑛=0

A fast Fourier transform is an algorithm that computes the discrete Fourier transform of a sequence, or its
inverse. The FFT algorithm is used to convert a discrete signal x[n] with length (N) in time domain to a
signal in frequency domain X(w).
Lab Tasks:
1. Find the Fourier transform of the given signal:
𝑡
𝑥(𝑡) = 𝑒 −2 𝑢(𝑡)
where, 𝑢(𝑡) is the unit step signal. Retrieve the original signal by taking inverse Fourier transform
of your answer.
2. Find the Fourier transform of the given signal:
𝑥(𝑡) = 2𝑒 −3𝑡 𝑢(𝑡)
where, 𝑡 = −3: 0.01: 3. Now take the inverse Fourier transform to retrieve the original signal.
3. Calculate the discrete Fourier transform of the given discrete time signal u[𝑛], defined as:
u[𝑛] = [1,1,1,1,1] 𝑓𝑜𝑟 𝑛 = [0,1,2,3,4]
Conclusion:

You might also like