clear all

close all

clc

%参数设定

M=10;                                %阵列数量

doa=[-20 40 50]/180*pi;              %波达方向

P=length(doa);

w=[pi/4 pi/3 pi/6].';                %设置角频率

%w=pi/4;

f=(w(1)+w(2)+w(3))/3/2/pi;           %信号频率

%f=1000;

c=3.0*10^8;                          %光速

lambda=c/f;d=lambda/2;               %lambda:波长    d:间距为半波长的等距均匀线阵

snr=[-10 5 20];                      %信噪比

N=128;                               %快拍数(全部阵元在时域的一次采样)

for ii=1:length(snr)

%阵列流型A

for i=1:P

A(:,i)=exp(-j*2*pi*d*[0:M-1]/lambda*sin(doa(i)));

end

%信源模型建立

S=sqrt(10.^(snr(ii)/10)*exp(j*w*[0:N-1]));

%接收信号模型建立

X=A*S+1/sqrt(2)*(randn(M,N)+j*randn(M,N));   %sqrt(2)是指白噪声功率开方

%协方差矩阵特征值分解得到噪声子空间

R=X*X'/N;

[V,D]=eig(R);

[Y,I]=sort(diag(D));           %特征值升序排序存入Y,特征值对应位置存入I

Un=V(:,I(1:M-P));              %找出小特征值对应特征向量存入Un

%谱峰搜索部分

theta=-90:0.1:90;              %线阵的搜索范围为-90~90度

for i=1:length(theta)

a_theta=exp(-j*(0:M-1)'*2*pi*d*sin(pi*theta(i)/180)/lambda);

pmusic(i)=1./abs((a_theta)'*Un*Un'*a_theta);

end

pmusic=10*log(pmusic/max(pmusic));      %除以maxs是为了分离图像

Pmusic(ii,:)=pmusic;

end

plot(theta,Pmusic(1,:),theta,Pmusic(2,:),theta,Pmusic(3,:),'LineWidth',2);

axis([-100 100 -110 10]);

legend('SNR=-10','SNR=5','SNR=20','Location','NorthWest')

title('仿真实验1:不同信噪比下MUSIC算法性能比较','fontsize',12);

xlabel('入射角度/degree','fontsize',12);

ylabel('归一化空间谱/dB','fontsize',12);

grid on

程序能正常运行,但是我想请问大神们在设置角频率那里,为什么不能设置三个相同角频率,不然空间谱就不对了

万分感谢!!!

MATLAB music分解信号,MUSIC算法信号频率问题求解相关推荐

  1. matlab实现鬼波信号压制算法(附鬼波算法压制工具包)  代码实践--第一篇 频率-空间域自适应鬼波压制

    matlab实现鬼波信号压制算法(附鬼波算法压制工具包)  代码实践 涵盖了频率-空间域.频率-波数域.拉东域鬼波压制算法     建议实践之前熟练掌握各个域鬼波压制方法的原理,才能对代码有更深入的了 ...

  2. 【信号分解】LMD算法及其应用

    目录 一.LMD算法 1.基本原理 2.算法的优缺点 二.LMD应用+MATLAB代码 1.去噪 2.特征提取 3.改进VMD分解 参考文献 局部均值分解(local meanvdecompositi ...

  3. MATLAB基于小波变换的语音信号去噪算法改进

    MATLAB基于小波变换的语音信号去噪算法改进 概述 0. 需要调用的子函数 0.1 Gnoisegen函数 0.2 snrr函数 1. 语音信号输入和加噪 1.1 语音信号输入 1.2 语音信号加噪 ...

  4. m基于VDLL的矢量型GPS信号跟踪算法matlab仿真

    目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 载波跟踪环是传统独立式GPS接收机最脆弱的环节,针对弱信号环境下其比伪码跟踪环路更容易失锁的 ...

  5. 用matlab仿真导航信号,北斗卫星导航信号串行捕获算法MATLAB仿真报告(附MATLAB程序)[互联网+]...

    <北斗卫星导航信号串行捕获算法MATLAB仿真报告(附MATLAB程序)[互联网+]>由会员分享,可在线阅读,更多相关<北斗卫星导航信号串行捕获算法MATLAB仿真报告(附MATLA ...

  6. 用matlab仿真导航信号,北斗卫星导航信号串行捕获算法MATLAB仿真报告(附MATLAB程序)...

    <北斗卫星导航信号串行捕获算法MATLAB仿真报告(附MATLAB程序)>由会员分享,可在线阅读,更多相关<北斗卫星导航信号串行捕获算法MATLAB仿真报告(附MATLAB程序)(9 ...

  7. 数字信号处理--基于MATLAB的小波去噪算法--小波变换在信号降噪和压缩中的应用

    小波分析的重要应用之一就是用于信号消噪,首先简要地说明一下小波变换实现信号消噪的基本原理. 一.基本原理 含噪的一维信号模型可以表示如下 式中s(k)为含噪信号,f(k)为有用信号,e(k)为噪声信号 ...

  8. 强干扰下弱信号matlab,北斗四阵元抗干扰算法性能研究

    引言随着北斗导航系统大量运用在国防建设和国民建设等领域,其重要性也日益凸显.同时,北斗导航系统的工作环境也面临着严峻挑战,由于北斗导航系统到达地面的有用信号非常微弱,比接收机的热噪声还要低[2],尤其 ...

  9. matlab方波假频现象分析,基于MATLAB 的信号时域采样及频率混叠现象分析

    龙源期刊网 http://www.doczj.com/doc/7d04774eae45b307e87101f69e3143323968f58a.html 基于MATLAB 的信号时域采样及频率混叠现象 ...

  10. Matlab 基于遗传算法优化的VMD信号去噪算法 创新点:基于样本熵作为适应度函数

    Matlab 基于遗传算法优化的VMD信号去噪算法 创新点:基于样本熵作为适应度函数 创新点2:基于信噪比作为适应度函数 提高信噪比 本人研究方向信号处理特征提取与故障诊断算法 ID:34506686 ...

最新文章

  1. PHP之提取多维数组指定列的方法
  2. Response对象学习
  3. HDU 1054 Strategic Game 最小点覆盖
  4. html input不能输入小数_第三课:变量与输入输出的配合使用
  5. tomcat小实验helloworld
  6. 面试--跨域--cors
  7. 程序员过关斩将--作为一个架构师,我是不是应该有很多职责?
  8. C++中的继承与虚函数各种概念
  9. DOM查找元素的方法总结
  10. 疯狂java讲义价格_疯狂java讲义
  11. Javascript之ES7详解
  12. 2021-2025年中国电动门锁行业市场供需与战略研究报告
  13. 如何检查PHP数组是关联数组还是顺序数组?
  14. 你知道数据中台,但你肯定没听过报表中台,我靠它征服百万数据人
  15. should be described in NUMA config 和 CPU feature cmt not found
  16. matlab 图片倒影_matlab-画个拱桥和倒影?
  17. Web前端人员如何实现状态保存 常用方法就什么
  18. 1144106-65-9,Bromo-PEG1-azide,Bromo-PEG1-N3叠氮基团可以通过点击化学与炔烃、BCN、DBCO反应,生成稳定的三唑键
  19. 如何将pdf转换成ppt演讲稿
  20. Nessus8.15安装不限IP(win10)

热门文章

  1. python 实例化对象_python如何实例化对象
  2. MySQL技术内幕:InnoDB存储引擎
  3. 【Unity3D插件】Unity3D各类教程汇总
  4. 用汇编语言实现c语言程序例题,C语言详细例题大全
  5. 《深入解析Windows操作系统第4版》随笔记录02
  6. Extjs4.0 视频教程
  7. 最受欢迎的网管工具集
  8. java excel 2007兼容包_excel2007兼容包
  9. java学习视频 java常用23种设计模式
  10. 爬取世界各国历年的GDP数据