|
楼主 |
发表于 2006-10-19 09:25
|
显示全部楼层
我照着本论坛上面的一个程序自己编了一下,程序如下:
figure(1);
t=5;fs=500;
Ts=1/fs;N=t/Ts;
x=Data(1500*500:1505*500);
% x=awgn(x,-3,'measured');
subplot(221)
plot(0:Ts:t,real(x));xlabel('time-sec');ylabel('cable acceleration-m/s^2');axis([0,5,-1,1]);
n=0:N-1;
Xk=fft(x);
mXk=abs(Xk(1:N/2));
k=(0:N/2-1*fs/N);
subplot(212),plot(k,mXk);
xlabel('Frequency in Hz units');title('Magnitude of Data');axis([0,100,0,100]);
figure(2);
Nw=500;
L=Nw/2;
Tn=(N-Nw)/L+1;
nfft=25;
TF=zeros(Tn,nfft);
for i=1:Tn
xw=x((i-1)*10+1:i*10+10);
temp=fft(xw,nfft);
temp=fftshift(temp);
TF(i,:)=temp;
end
fnew=((1:nfft)-nfft/2)*fs/nfft;
tnew=(1:Tn)*L*Ts;
[F,T]=meshgrid(fnew,tnew);
mesh(F,T,abs(TF));
其中的Nw的含义是什么呀?画出的三维时频图的频率是对称的,我如果要单边的如何改动呢?
我画出的图1是原信号的时程和功率谱,其中原信号中的横坐标为时间,幅值只有0.5~1左右,而如果用采样次数直接画出,幅值有4左右,这为什么会不同,有什么区别吗?功率谱也是,我用自己编的程序算出这段时间的功率谱在4Hz左右才有一个高峰值,其他频率处都很小,这里确出现了几个峰值,为什么?
图2是时频三维图,图像与我贴出的样板相差也很远,不知道如何改动这个程序才能达到我想要的样本那样的图形? |
-
1
-
2
|