[求助]大家帮我看看这个程序(功率谱计算)
我做了一个信号的功率谱分析,可是得出的图像表示和预期结果不一样,以至于后面没法分析,大家能帮我修改下么?(数据和应得的结果图已经上传)程序:
fidin=fopen('8.txt');
fidout=fopen('mkmatlab.txt','w');
while ~feof(fidin)
tline=fgetl(fidin);
if double(tline(1))>=48&&double(tline(1))<=57
fprintf(fidout,'%s\n\n',tline);
continue
end
end
fclose(fidout);
a=importdata('MKMATLAB.txt');
%%
nfft=512;
fs=181.8;
%%
x=255-a;
x=x-mean(x);
r=xcorr(x,'biased');
n=length(r);
py=abs(fft(r)/n);
k=0:floor(nn/2);
py=10*log10(py(k+1));
plot(k/n,py);
grid; <P>我的这种功率谱估计算法有问题吗?请各位帮帮忙</P> 所得图形中,后面的是若干谐波,前面有一个略低的波峰,
可是我用了几种功率谱分析都得不到接近的图形……
后面的分析就完全进行不下去了…… <P>为什么求功率谱还用到自相关系数?</P> 功率谱估计有很多种,这是经典功率谱估计的一种(BT法),还可以用其他的。 拜托啦~在线等待啊!! 倒数第四行k=0:floor(nn/2);是n呢?还是n*n?<BR> <P>我用n计算,出来的结果和你的也不一样啊?</P>
页:
[1]