第10章 随机信号的高阶谱分析 10.1 高阶累积量与高阶谱10.1.1 累积量 设X表示有限阶矩的随机变量,定义X的矩生成函数或特征参数为 定义序列{xk}的k阶累积量生成函数为 因此,随机变量的联合累积量可以通过它的联合矩来表示。考虑r1=r2=…=rk=1的情况,对于具有零均值的实随机变量,其二阶、三阶和四阶累积量分别为 由累积量确定矩的关系为 【例 10.1】 利用MATLAB产生两个远程的发送信号,并采用归一化处理使其中一个信号有时延; 然后利用MATLAB产生两个相互独立、互不相关的噪声,且噪声满足零均值; 再将噪声加入到发送信号上,形成两个基站的接收信号; 最后求两个接收信号的高阶累积量。 MATLAB程序如下: %MATLAB PROGRAM 10-1 %常量初始化******************************** N=2048; %取2048个时间点 w0=pi/4; %主频 d1=25; %时间延迟,用来对信号作归一化处理 d2=10; m=50; p=25; %信号源************************** signal1=zeros(1,N); %1行N列的值都为零的矩阵 signal2=zeros(1,N); st=signalSOI(N); %2048个值为1或者-1的一维矩阵 for i=1: N signal1=st*cos(w0*i); end for i=1: N-d1-d2 %归一化处理使信号2(signal2)在信号1的时延基础上产生 signal2(1,i)=signal1(1,i+d1)+signal1(1,i+d2); end %平稳随机过程的噪声********************** noise1=normrnd(0,0.7,1,N); %产生均值为0,方差为0.7,1行N列的随机噪声 noise2=normrnd(0,0.7,1,N); %产生均值为0,方差为0.7,1行N列的随机噪声 %形成接收信号********************** x=signal1+noise1; y=signal2+noise2; %求高阶累积量********************** Cyx=zeros(2*m+1,1); b=0.25; % cycle frequency for t=m: -1: -m if t>=0 for n=1: N-t Cyx(m+1-t,1)=Cyx(m+1-t,1)+y(1,n+t)*y(1,n+t)* x(1,n)*x(1,n)*exp(-j*2*pi*b*(n+t/2)); end Cyx(m+1-t,1)=Cyx(m+1-t,1)/N; else for n = -t+1: N Cyx(m+1-t,1)=Cyx(m+1-t,1)+y(1,n+t)*y(1,n+t)* x(1,n)*x(1,n)*exp(-j*2*pi*b*(n+t/2)); end Cyx(m+1-t,1)=Cyx(m+1-t,1)/N; end end Cx=zeros(2*m+1,2*p+1); for l=m-p: -1: -m-p for k=m-p: m+p t=k-(m-p-l); if t>=0 for n=1: N-t Cx(m-p-l+1, k+1-(m-p))=Cx(m-p-l+1, k+1-(m-p)) +x(1, n+t)*x(1, n+t)*x(1, n)*x(1, n)*exp(-j*2*pi*b*(n+t/2));
RCLS算法MATLAB程序实现,(MATLAB辅助现代工程数字信号处理)第10章随机信号的高阶谱分析.ppt...
最新推荐文章于 2021-06-15 23:03:09 发布