📄 传统music算法.txt
字号:
%---------------传统Music算法-----------------------%
Sensor=8; Snap=100; %阵元为8,快拍数100
Doa=[10 20 50 60]; %要估计的4个信源角度
S_number=length(Doa);
Lambda=0.1; % 波长
d=0.5*Lambda; % 阵元间距
S_x=[0:Sensor-1]*d; A=exp(-j*2*pi/Lambda*S_x'*sin(Doa*pi/180)); %导向向量
Snr=5;
Snr=sqrt(10.^(Snr/10)); %
%Sig=sqrt(0.5)*(randn(S_number,Snap)+j*randn(S_number,Snap));%全部为非相干信号情况
Sig1=sqrt(0.5)*(randn(2,Snap)+j*randn(2,Snap)); %先产生2个随机信号
Sig2=Sig1+(10+10j); %产生相干信号
Sig=cat(1,Sig1,Sig2); %总信号表达式
Noise=sqrt(0.5)*(randn(Sensor,Snap)+j*randn(Sensor,Snap)); % 噪声
X=Snr*A*Sig+Noise; %接收数据矩阵
R=X*X'/Snap; %接收数据协方差矩阵
[U S V]=svd(R); %奇异值分解
En=U(:,S_number+1:Sensor); %获得噪声子空间
theta=[-90:0.1:90]*pi/180; %搜索步进
for num=1:length(theta)
A_search=exp(-j*2*pi/Lambda*S_x'*sin(theta(num)));
P_music(num)=abs(1/(A_search'*En*En'*A_search)); %谱函数
end
%---------------绘图-----------------------%
h=[-90:0.1:90];
plot(h,10*log10(P_music/max(P_music)));
axis([-100 100 -50 +10])
xlabel('Angle(degree)','fontsize',10)
ylabel('Pmusic','fontsize',10)
title('传统 Music');
grid
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -