relation between the fft of full and segmented signal
1 回表示 (過去 30 日間)
古いコメントを表示
Hello,
Suppose I the following signal of 10s:
fs=1e4;
t_duration=10; % duration of signal (seconds)
t = 0:1/fs:t_duration-1/fs; % time samples
s=sin(2*pi*1000*t); %narrowband signal from the source
N=length(s);
I compute its FFT and plot 2-sided spectrum as:
S=fft(s);
f=fs*[0:N-1]/N;
stem(abs(S)); %peaks at 10001 and 90001
Now, if i break the signal into 10 segments of 1s duration each and take its fft() and plot, the bins are somehow jumbled.
s1=s(1:10000);
N1=length(s1);
S1=fft(s1);
f1=fs*[0:N1-1]/N1;
stem(abs(S1)); %peaks at 1001 and 9001
Ofcourse, if I plot the magnitude spectrum with 'f' and 'f1' vectors, I get the peaks at right frequencies.
But without 'f' and 'f1', how can I relate/interpret this 1s segment result to my original 10s long signal? please clarify.
3 件のコメント
採用された回答
Wayne King
2012 年 9 月 21 日
編集済み: Wayne King
2012 年 9 月 21 日
That's because the spacing between the DFT bins depends not only on the sampling frequency, but ALSO on the length of the input signal.
The spacing is Fs/N, in the second case you have reduced the length of the signal by a factor of 10 so your DFT bins are spaced much more 10 times farther apart.
In the first case, your spacing is 0.1 Hz. In the second case, your spacing is 1 Hz.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Spectral Measurements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!