mn_music.m

来自「ULA1一个天线阵的方向图,可以用来估计信号的来波方向,face_directi」· M 代码 · 共 42 行

M
42
字号
clear;close all;clc;
%=========参数初始化=========%
num=8;%阵元数
f=10e7;%载波频率
f1=20;%信号1载波频率
f2=10;%信号2载波频率
a1=20;%信号1方向
a2=30;%信号2方向
c=3e8;%光速
lmda=c/f;%波长
d=lmda/2;%阵元间距
thita=0:1:180;
SNR1=5;%信噪比
SNR2=2;%信噪比
fs=400;
Ts=[0:1/fs:1];
snapshot=length(Ts);
s1=10^(SNR1/20)*sin(2*pi*f1*Ts);%信号1包络
s2=10^(SNR2/20)*sin(2*pi*f2*Ts);%信号2包络
athita1=exp(j*2*pi*d/lmda*cos(a1*pi/180)*[0:num-1]).';%信号导向矢量
athita2=exp(j*2*pi*d/lmda*cos(a2*pi/180)*[0:num-1]).';%信号导向矢量
x=athita1*s1+athita2*s2+sqrt(0.5)*(randn(num,snapshot)+j*randn(num,snapshot));%输入
%==============MUSIC===============%
R=x*x'/snapshot;
[V,D]=eig(R);
P=V(:,1:6)*V(:,1:6)';  %8*8
e1=[1,zeros(1,num-1)].';
for i=1:length(thita)
    A=exp(j*2*pi*d/lmda*cos(thita(i)*pi/180)*[0:num-1]).';
    S(i)=1/(A'*P*A); 
    S1(i)=1/(A'*P*e1);  
end
figure(1)
plot(thita,10*log10(abs(S)/(max(abs(S)))));
grid on;hold on;
plot(thita,10*log10(abs(S1)/(max(abs(S)))),'r--');
title('MUSIC测角')
xlabel('方位角(度)')
ylabel('输出功率(dB)')
legend('commom-Music','MN-Music')
%低SNR和小样本以及高相关情况下MN-Music效果相对较好,提高分辨力,适用于等距线阵。

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?