turtlego 发表于 2012-4-12 16:26

由自相关求功率谱密度的问题

对平稳随机信号的自相关序列做FFT变换,求出的应该是功率谱,可是下面的代码运行出来功率谱中怎么会有负数呢?求教各位老师~

clear all;
clc;
fc=4;
D=randint(1,8);
N=length(D);
t=0:0.01:7.99;
d1=2*D-1;
D1=[];
x=ones(1,100);%100个1
fai=zeros(1,N);             %初始化相位常数
fai(1)=0;
for n=1:N,
         D1=;
end    %产生一个+1,-1的矩形随机方波
fai=zeros(1,N);            
fai(1)=0;                   %将初始相位定为0
%求相位常数fai
for k=2:N*100
   if(D1(k)==D1(k-1))
         fai(k)=fai(k-1);
   else
         fai(k)=fai(k-1)+(k-1)*pi;
      end
end
for i=1:N*100
   if(D1(i)==1)
         f(i)=fc+1/4;
   else f(i)=fc-1/4;
   end
end
m=cos(2*pi*f.*t).*cos(fai)-sin(2*pi*f.*t).*sin(fai); %MSK表达式三角变化得来的式子

rx = xcorr(m,'unbiased');
plot(real(fft(rx)))

hcharlie 发表于 2012-4-12 17:58

本帖最后由 hcharlie 于 2012-4-13 08:53 编辑

《对平稳随机信号的自相关序列做FFT变换,求出的应该是功率谱》这句话是有问题的!
从随机振动理论,定义自相关的傅立叶变换(不是FFT)为谱密度,这是定义在无穷大域的,因为在无穷大域做随机信号时域序列的傅立叶变换有数学上的困难不得已走的弯路。
但是在随机信号分析的实践上,不存在有限时域数列的DFT或FFT的数学困难,所以做谱估计只从时域信号的DFT或FFT直接求出,完全没有人走相关的FFT的路。
所以自相关的傅立叶变换(不是FFT)为谱密度只有理论价值而没有实际价值。在这方面做工作完全是走弯路,得不到结果的。建议中止这些无用的工作。
希望多学学理论,比如“随机振动与谱分析概论”10,11章,看看是怎样处理实际问题的。
顺便说一下,有限长采样计算的相关叫“循环相关”而不是无穷域的“线性相关”。而该书157页说,如果需要循环相关,是先求功率谱再IDFT(IFFT)得到,而不是按LZ的想法由相关去求谱密度。

马社 发表于 2012-4-14 01:34

hcharlie 发表于 2012-4-12 17:58 static/image/common/back.gif
《对平稳随机信号的自相关序列做FFT变换,求出的应该是功率谱》这句话是有问题的!
从随机振动理论,定义自 ...

你说的是对的,自相关多少能滤点噪声而已
页: [1]
查看完整版本: 由自相关求功率谱密度的问题