Why is the FFT of a constant returns 0 for the angle?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Is there an explanation to this? Thank you in advance.
2 commentaires
Réponse acceptée
Wayne King
le 19 Fév 2013
Modifié(e) : Wayne King
le 19 Fév 2013
The DFT of a single constant, or a constant vector is only going to give a nonzero discrete Fourier transform coefficient at 0 frequency, the exp(-1i*2*pi*0/N), complex exponential.
Specifically, it will just be the sum of the elements in your vector. If you really meant a single constant, that is obviously equal to the constant
fft(2)
If you have a vector
x = 2*ones(10,1);
fft(x) % gives only one nonzero term (20) the sum of the element
For a real-valued signal that will always have a phase of 0 since it will be of the form
a+1i*0
where a is the sum. Note that if the input is complex-valued, the angle is the same as each of the constant inputs.
x = 2*ones(10,1)+1i*3*ones(10,1);
angle(x(1))
xdft = fft(x);
angle(xdft(1))
0 commentaires
Voir également
Catégories
En savoir plus sur Fourier Analysis and Filtering dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!