stem function and fft
21 ビュー (過去 30 日間)
古いコメントを表示
i used stem function to convert a continuous signal to discrete signal.
and then i want the discrete function to get the fast Fourier transform of it.
stem return a vertical lines only so what should i do with this vertical lines???
I hope that my question was clear.
Thanks,
0 件のコメント
回答 (1 件)
Wayne King
2011 年 12 月 16 日
Hi Eman, stem() is not converting the continuous signal to discrete time. stem() just plots. If you have the sequence (vector) in MATLAB, then it is already a discrete-time sequence.
You want to operate on the vector with the function fft()
% an example
x = cos(pi/4*(0:95));
stem(x);
% now obtain the discrete Fourier transform
xdft = fft(x);
stem(abs(xdft));
2 件のコメント
Wayne King
2011 年 12 月 16 日
The discrete Fourier transform of a vector is (in general) complex-valued, so you want to plot either the magnitudes (abs()), or the phases (angle() )
In the simple example I gave you, the imaginary parts are all zero, but that is not going to be the case with any real-world signal
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!