|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
r=4000;
t=(0:255)/r;
omegal=2.0*pi*500.0;
f=sin(omegal*t);
N=length(f);
if(mod(N,2)==1);
f=[f 0];
N=N+1;
end
N2ml=2*N-1;
Nb2=N/2;
for m=1:N
s=zeros(1,N2ml);
s(N-(m-1):N2ml-(m-1))=f;
s=conj(fliplr(s)).*s;
s=s(Nb2:N2ml-Nb2);
shat=abs(fft(s));
if m<=Nb2
shat=shat/(2*m-1);
else
shat=shat/(2*N-2*m+1);
end
wvd(m,:)=shat(1:Nb2);
end
time=(0:N-1)/r;
freq=(0:Nb2-1)*r/N/2;
Ncolor=256;
colormap(gray(Ncolor));
wvd_min=min(min(wvd));
wvd_max=max(max(wvd));
wvd=(wvd-wvd_max)*Ncolor/(wvd_min-wvd_max);
image(time,freq,wvd);
xlabel('Time(seconds)');
ylabel('Frequency(Hz)');
set(gca,'YDir','normal')
这是我在一笨书上找的wvd的程序 信号是sin(2.0*pi*500)
对于最后绘制的图是怎么理解的?
[ 本帖最后由 qqvirile 于 2009-4-5 10:40 编辑 ] |
|