%%MVDR001 最唗
clear all
close all
num=16; %% number of element
k=1000; %% sample number
as=0;
ai=[-30 30];
e_position=[0:num-1]';
aa=90*[-1:0.001:1]; %% scan vector
vs=exp(j*pi*e_position*sin(as/180*pi));
vi=exp(j*pi*e_position*sin(ai/180*pi));
v=exp(j*pi*e_position*sin(aa/180*pi)); %%
f=15000;
t=[0:1:k-1]/1000;
snr=10;
inr=50;
xs=sqrt(10^(snr/10))*vs*exp(j*2*pi*f*t);
xi=sqrt(10^(inr/10)/2)*vi*[randn(length(ai),k)+j*randn(length(ai),k)];
xw=[randn(num,k)+j*randn(num,k)]/sqrt(2);
w=1/num*vs';
figure(1),plot(aa,20*log10(abs(w*v)));
axis([-90 90 -50 0]);
hold on
%% mvdr
xn=xi+xw;
sn=xn*xn'/num;
wop1=sn\vs/(vs'/sn*vs);
plot(aa,20*log10(abs(wop1'*v)),'r');
grid on
axis([-90 90 -50 0]);
hold off
评论0