正餘弦訊號DFT頻譜分析(續),餘弦dft
上一篇講到實際可以通過補零的方法增加序列長度,使得最後增大N來增加視在解析度。但是它無法解決頻率泄漏的問題。頻率泄漏的根本原因在於窗的選擇。
由於矩形窗突然截斷,頻譜旁瓣相對幅度過大,導致泄漏的分量很多。因此和FIR濾波器的思路一樣,我們想到了其他窗。
接上次的例子,矩形窗:
ts = 0.01;
n = 0:24;
y = [sin(2*pi*20*n*ts),zeros(1,999)];
xk = abs(fft(y,1024));
stem(xk);
頻譜
我們換三角窗:yd = [y.*triang(25)',zeros(1,999)];注意先加權再補零吧(其實不是很確定的說)。頻譜如下:
漢明窗:
雖然主瓣寬度加寬了,但咱可以繼續加大N啊,所以不是問題,關鍵是現在頻譜不泄漏了。
DFT分析連續時間訊號的頻譜
n=[0:1:99];
x=2*sin(4*pi*0.01*n)+5*cos(8*pi*0.01*n);
n1=[0:1:44];y1=x(1:1:45);
Y1=dft(y1,45);magY1=abs(Y1);
k1=0:1:44;w1=2*pi/45*k1;
subplot(2,2,1);plot(w1/pi,mag(Y1));
title('Sample of DTFT Magnitude');
n2=[0:1:59];y2=x(1:1:60);
Y2=dft(y2,60);magY2=abs(Y2);
k2=0:1:59;w2=2*pi/60*k2;
subplot(2,2,2);plot(w2/pi,mag(Y2));
title('Sample of DTFT Magnitude');
n3=[0:1:69];y3=x(1:1:70);
Y3=dft(y3,70);magY3=abs(Y3);
k3=0:1:69;w3=2*pi/70*k3;
subplot(2,2,3);plot(w3/pi,mag(Y3));
title('Sample of DTFT Magnitude');
第2問;
y4=randn)(1,70);
x4=y3+y4;
Y4=dft(x4,70);magY4=abs(Y4);
k4=0:1:69;w4=2*pi/70*k4;
subplot(2,2,4);plot(w4/pi,mag(Y4));
title('Sample of DTFT Magnitude');
正餘弦訊號的譜分析
從你的實現來看,你的t應該是與Ryy關聯的吧,還有t應該取一個區間的數值,一般表示為0:π/n:一個數,表示遞增關係,基本上就這些了。你若有需要再