ESPRIT算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
%%%%%%非相干信号,声压阵,clc;
close all;
clear all;
M=10; %阵元数
m=[0:M-1]';
N=30; %采样点数
n=0:N-1;
f=1000; %频率
fs=10*f; %采样频率
c=1500; %声速
lamd=c/f; %波长
d=lamd/2; %阵元间距
u1=80*pi/180; %目标1方位
u2=88*pi/180; %目标2方位
snr1=0;
snr2=10;
s1=exp(j*(2*pi*f*n/fs+2*pi*rand(1,N))); s2=exp(j*(2*pi*f*n/fs+2*pi*rand(1,N))); s=[s1;s2];
a1=exp(j*2*pi*f*m*d*cos(u1)/c);
a2=exp(j*2*pi*f*m*d*cos(u2)/c);
a=[a1 a2];
%S=a*s; %无噪声S=awgn(a*s,snr1,'measured','db'); %有噪声
R=S*S'/N;
[V,D]=eig(R);
Vm=V(:,1:8);
IR=inv(R);
Wmvdr=IR*a1/(a1'*IR*a1);
step=1;
Ang=0:step:180;
for kk=1:length(Ang)
a=exp(i*(2*m*pi*f*d*cos(Ang(kk)*pi/180)/c));
Pc(kk)=a'*R*a;
PP(kk)=1/(a'*IR*a); %MVDR方位谱
Pm(kk)=1/(a'*Vm*Vm'*a); %MUSIC方位谱end
figure(1);
h1=plot(Ang,10*log10(abs(Pc)/max(abs(Pc))),'g'); hold on;
h2=plot(Ang,10*log10(abs(PP)/max(abs(PP))),'r.-'); hold on;
h3=plot(Ang,10*log10(abs(Pm)/max(abs(Pm)))); legend([h1 h2 h3],'CBF','MVDR','MUSIC');
grid on;
%%%ESPRIT操作
X1=S(1:M-1,:);
X2=S(2:M,:);
X=[X1;X2];
R=X*X'/N;
[V,D]=eig(R);
Us=[V(:,2*(M-1)-1) V(:,2*(M-1))];
Us1=Us(1:M-1,:);
Us2=Us(M:2*(M-1),:);
FAI=inv(Us1'*Us1)*Us1'*Us2;
[V1,D1]=eig(FAI);
sita1=acos(-i*lamd*log(D1(1,1))/(2*pi*d))*180/pi; sita2=acos(-i*lamd*log(D1(2,2))/(2*pi*d))*180/pi;