Bu olgunun spektral sızıntı ile ilgisi yoktur. Ne gözlemlediğiniz sıfır dolgusunun etkisidir. Birkaç örnek N- verildiğinde, elde edilebilecek maksimum olası frekans çözünürlüğü Δ f vardır:
Δ f= fsN-
Sizin durumunuzda Δ f tam olarak 2H z . Sinyalinizi sıfırlarsanız, alınacak ek bilgi yoktur - yalnızcafrekans aralığını azaltırsınız.
Yukarıdaki örnekte, artırabilir zaman N- için 1000 , bir frekans aralığı elde 1H z . Gözlemlenen tüm örnekler yalnızca pencere fonksiyonu tarafından yapılan bir enterpolasyondur (s i n c senin durumunda). Pencere spektrumunun yan loblarını gözlemlemeye başlayacaksınız. Sinyali örtülü olarak dikdörtgen bir pencere ile çarptığınızdan, bu, sinyalin spektrumunun (iki Dirac'ın + DC)s i n c fonksiyonuile evrilmesiyle sonuçlanacaktır.
Buna bakmanın bir başka yolu, DFT'nin temel olarak kaydırılmış s i n c işlevlerinden oluşan bir filtre bankası olduğunu hayal etmektir . Bunlar öyle bir şekilde hizalı, birinin zirvesi neredes i n c
Mavi filtreye karşılık gelen frekansın mevcut olduğunu düşünelim. Bu, karşılık gelen bir kutudaki genliği verecektir. Kalan tüm frekanslar mevcut değildir (turuncu ve sarı), böylece bu s i n c 's0s i n c
İşte N-= 1000N-= 10000
Ve yakınlaştırılmış bir kısım:
Dikkat edilmesi gerekenler:
Ve tabii ki sonuçları yeniden üretmek için kod:
Fs=1000;
Ns=500;
Ns2=1000;
Ns3=10000;
t=0:1/Fs:(Ns-1)*1/Fs;
f1=10;
f2=400;
x=5+5*sin(2*pi*f1*t)+2*sin(2*pi*f2*t);
X1 = abs(fft(x))/length(x);
X2 = abs(fft(x, Ns2))/Ns;
X3 = abs(fft(x, Ns3))/Ns;
F1 = 0:Fs/Ns:Fs-Fs/Ns;
F2 = 0:Fs/Ns2:Fs-Fs/Ns2;
F3 = 0:Fs/Ns3:Fs-Fs/Ns3;
plot(F1, 20*log10(X1))
hold on
plot(F2, 20*log10(X2))
plot(F3, 20*log10(X3))
xlim([0, Fs/2])
grid on
legend({'N=500', 'N=1000', 'N=10000'})