您好,欢迎访问三七文档
基于MUSIC方法功率谱估计的matlab仿真1.实验理论:当空间存在多个信号时,常常要对这些信号进行分离,一边跟踪或者检测我们感兴趣的空间信号,抑制那些被认为是干扰的信号。Music方法就是进行此项工作的方法之一。若等间距直线型天线由m个阵元组成,则信号si(t)到达各个阵元的相位差所组成的方向向量Tmjjiiieea1,...,,1(1)如果总共有p个远场信号(p不大于m),则在第k个阵元上的接收信号为nensanxkpiiikk1(2)其中k=1,2,…,m,最后一项为加在此信号上的噪声。将m个阵元上的观测数据组成一个数据向量Tmnxnxnx,...,1(3)进行N次快拍,得出下边的矩阵nxnxNRHNixx11(4)对xxR进行特征值分解并存储特征向量s1,…,sp,组成信号子空间s=[s1,…,sp]。最后利用下面的公式进行功率谱估计aSSIaPHH1(5)其中paaa,..,1在实际应用中,通常将划分为数百个等间距单位,得到fi2(6)然后将每个i带入(5)式求出所有对应的值。2.算法步骤:1)根据原信号求解其自相关函数。2)对其自相关函数进行奇异值分解确定信号特征向量和噪声特征向量。3)将求得的特征向量代入公式(5)即得功率谱,最后将w划分若干等间距单位并画出功率谱。3.算法实现:仿真内容:设阵列为均匀直线阵,阵元个数m=30,快拍次数N=80,对正弦信号)()213.02sin(2)2.02sin(20)(nwnnnx进行谐波恢复的计算机仿真。仿真程序:对应的m文件为music.mclearN=80;%设定快拍次数n=1:128;M=30;%设定阵元个数x(n)=sqrt(20)*sin(2*pi*0.2*n)+sqrt(2)*sin(2*pi*0.213*n)+randn(size(n));fori=1:Nfork=1:MX(i,k)=x(i+k-1);%对全零矩阵各元素重新赋值生成X信号矩阵endendRxx=zeros(M,M);fori=1:N;Rxx=Rxx+(X(i,:))'*X(i,:)*1/N;%按照公式(4)求自相关函数生成Rxx矩阵end[U,A,V]=svd(Rxx);%奇异值分解方法G=U(:,5:M);%生成噪声特征向量S=U(:,1:4);%生成信号特征向量symswPw%创建多个符号对象aw=exp(-j.*(0:M-1).*(2*pi*w));%方向向量Pw=1/(aw*(eye(M)-S*S')*aw');%按照公式(5)求功率Pw=20*log10(abs(Pw));w=0:2*pi*0.0001:0.5;%按照公式(6)求w值从而确定波达方向plot(w,subs(Pw));gridon;仿真图如下:4.结果分析:从上面实验图谱可以看出,MUSIC算法实现谐波恢复的有效性和科学性。因为MUSIC算法需要在频率轴上进行全域搜索,计算量比较大,程序运行时间稍长。另外,执行MUSIC算法是选择噪声子空间还是信号子空间方式,决定于G和S种哪一个具有更小的维数,除了计算量有所不同外,这两种方式并没有本质的区别。
本文标题:music仿真报告
链接地址:https://www.777doc.com/doc-6342089 .html