【2017年整理】MUSIC方法求解信号谱空间.doc
文本预览下载声明
MUSIC方法求解信号谱空间
一.原理:
1.阵列信号处理问题
阵列:多个天线的组合(每个天线称为一个阵元),这里讨论的阵元等间距的直线排列,这种阵列简称等距线阵。
令空间信号与阵元的距离足够远,,以至于其电波到达各阵元的波前为平面波,这样的信号称为远场信号。远场信号到达各阵元的方向角相同,用表示,称为波达方向(角),定义为信号到达阵元的直射线与阵列法线方向之间的夹角。
以阵元1作为基准点,令信号电波传播延迟在第2个阵元引起的相位差为,
d是两个相邻阵元之间的距离,为信号波长。应满足,否则相位差有可能大于,而产生所谓的方向模糊。
假设阵列由m个阵元组成,有p个信号位于远场,接收信号为
其中为响应向量;为维观测数据向量;为维观测噪声向量;
和分别为维方向矩阵和维信号向量。
阵列信号处理的问题是利用接收信号的观测值,求出某个期望信号的波达方向。
2.MUSIC方法
做以下假设:
假设1:对于不同的值,向量a()相互线性独立;
假设2:加性噪声向量e(n)的每个元素都是零均值的复白噪声,它们不相关,并且具有相同的方差;
假设3:矩阵P=E{}非奇异,即rank(P)=p。
由x(n)的表达式得:
(*)
是对称矩阵。令其特征值分解为
式中
由于A满列秩,故,这里假定。于是,我们有
式中是无加性噪声时的观测信号的自相关矩阵的特征值。
用左乘和右乘(*)式得:
这表明,自相关矩阵的特征值为
即是说,当存在加性观测白噪声时,观测数据向量的自相关矩阵的特征值有两部分组成,前p个特征值等于与加性白噪声方差之和,称为信号特征值;后面m-p个特征值全部等于加性白噪声的方差,称为噪声特征值。
特征矩阵U的列向量分为信号特征向量和噪声特征向量:
U=
由于U是酉矩阵,故
即有
因为
且
故 =O
进而有 =O
故有
=O
(w)G=,
故可定义一种类似于功率谱的函数:
上式取峰值的p个值给出p个信号的波达方向,视为噪声子空间方法。
上式也可写为,为信号子空间方法。
执行MUSIC算法是选择噪声子空间还是信号子空间方式,决定于G和S中哪一个具有更小的维数。除了计算量有所不同外,这两种方式并没有本质区别。
改进的MUSIC算法的谱P(w)由下式计算:
式中
找出P(w)的p个峰值,它们就是待求的MUSIC估计值。
二 程序
见chengxu03.m
三 仿真结果如图:
四 结果分析
在本题中,观测数据是由产生的,其中e(n)是均值为0,方差为1的高斯白噪声,n=1,…,128。在程序中可分别用一般的MUSIC方法和改进的MUSIC方法估计了信号的频谱,从仿真波形中我们可以清晰的分辨出在中心频率附近两个信号的不同,两个信号的中心频率不同,且幅值也不同。
Music谐波恢复方法中需注意的问题:
(1)阵元个数与快拍次数之和要小于等于128;
(2)Music谐波恢复方法为减少计算量,应选择噪声空间和信号空间中维数较小的一个。
在本次作业中,通过对算法的理解以及用matlab语言去实现算法的每个步骤,我对matlab的有关语法知识有了更进一步的掌握。完成这次作业遇到了很多难题,例如关于观测数据矩阵的是实还是复的问题,由于考虑不周全使得改进型得到的功率谱出现了负值的情况,经过认真修改终于解决了此问题;也花费了不少时间,关键是自己的编程能力太差劲,我会再多下功夫学习matlab编程语言。
第5章 字符串
我们一直在使用字符串,C#System.String是一个类,专门用于存储字符串,允许对字符串进行许多操作。由于这种数据类型非常重要,C#提供了它自己的关键字和相关的语法,以便于使用这个类来处理字符串。
使用运算符重载可以连接字符串:
string message1 = Hello;? //return Hello
message1 += , There;??? // return Hello, There
string message2 = message1 + !;???? // return Hello, There!
C#还允许使用类似于索引器的语法来提取指定的字符:
char char4 = message[4];?? // returns a. Note the char is zero-indexed
这个类可以完成许多常见的任务,例如替换字符、删除空白和把字母变成大写形式等。可用的方法如表所示。
方???
显示全部