Discrete Fourier Transform(DFT)
Discrete Fourier Transform(DFT)
It decomposes of a function(signal) with basic functions(signal) which are orthogonality.
When considering a matrix-vector representation, inner product of each rows must be ‘zero’. (If the row contains complex number, one of the row should be conjugated. )
-
Definition(Source)
Relations with other spectrum analysis methods
Below methods are all similar in that they are used for decomposing a signal.
But target signal’s form of period and frequency are somewhat different.
-
Fourier series
Applying to continuous-time signal, assuming period T
-
Fourier transform
Applying to continuous-time signal, assuming aperiodic
-
Discrete-time Fourier Transform
Applying to discrete-time signal, assuming aperiodic
Example with Matlab
We can do a simple example.
I’ll try a Discrete Cosine Transform(DCT) which is similar to DFT.
It decomposes of the origin signal with only cosine functions, in other words, it contains only real number axis informations.
It helps reducing computational load eliminating imaginary components.
close all;
clear; clc;
%% org
m=1:1:200;
org = m+50*cos(m*2*pi/10) + 25*sin(m*2*pi/5);
dct_org = dct(org);
plot( dct_org);hold on;
%% sampled
n=0:2:200;
samp = n+50*cos(n*2*pi/10) + 25*sin(n*2*pi/5);
% plot(n, samp)
dct_samp = dct(samp);
plot(dct_samp);grid on;
legend('org', 'dct');
- Original signal
- DCT results of original and sampled signals.