⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_2music_genetic.m

📁 改进的基于遗传算法的被动声目标定位
💻 M
字号:
clc
clear all

%产生两个信号,并且确定两个角度
signal_number=2;
n1=1:0.1:1024;
signal_1=100*cos(2*pi*200/4000*n1);
signal_2=100*cos(2*pi*200/4000*n1+pi/2);
angle_1=pi*45/180;
angle_2=pi*50/180;

%采样
sample_number=1024;%采样点数 
n2=1:sample_number; 
signal_1=signal_1(n2);
signal_2=signal_2(n2);
S=[signal_1;signal_2]

%确定导向矢量以及接收信号
array_number=4
t=0.34;%距离除以波长
i=sqrt(-1); 
j=i;
delay_1=[j*2*pi*t*cos(angle_1);
       j*2*pi*t*cos(angle_1-pi/2);
       j*2*pi*t*cos(angle_1-pi);
       j*2*pi*t*cos(angle_1-3*pi/2)];
delay_2=[j*2*pi*t*cos(angle_2);
       j*2*pi*t*cos(angle_2-pi/2);
       j*2*pi*t*cos(angle_2-pi);
       j*2*pi*t*cos(angle_2-3*pi/2)]; 
delay=[delay_1,delay_2]   
A=exp(delay); %导向矢量
X=A*S; %接收信号 

%确定协方差矩阵以及对协方差矩阵进行分解 
cov=X*X'/sample_number;%协方差矩阵 
[V,D]=eig(cov); 
noise_space=V(:,1:array_number-signal_number);%确定噪声子空间

%设置最后要求的方向矢量函数
degree=0:1:360
angle=degree*pi/180; %线性信号角度范围 
A_value=[j*2*pi*t*cos(angle);
       j*2*pi*t*cos(angle-pi/2);
       j*2*pi*t*cos(angle-pi);
       j*2*pi*t*cos(angle-3*pi/2)];
A_value=exp(A_value);  

%计算空间谱函数 
for n3=1:length(angle)
doa(n3)=1.0/(A_value(:,n3)'*noise_space*noise_space'*A_value(:,n3)); 
end

%做出空间谱图
semilogy(degree,doa); %y轴对数坐标曲线 
title('MUSIC Spectyum'); %图表标题,x轴y轴标签及范围 
xlabel('Angle(deg)'); 
ylabel('Spectrum'); 
axis([0 360 0.1 1e3]); 
grid;

⌨️ 快捷键说明

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