close all;clear all;
M=8;d=10;f=[14.8e6 15e6 15.2e6];d=10;fs=30e6;Ts=1/fs;c=3e8;beta=[10 0 40];
L=1000;
Ns=3;%信号源个数
SNR=50;
for t=1:length(SNR)
m=1:M;
n=1:L;
for i=1:3
A(:,i)=exp(-j*2*pi*f(i)*(m-1)*d*sind(beta(i))/c);
S(i,:)=exp(j*2*pi*f(i)*(n*Ts));
end
v=sqrt(1/(10^(SNR(t)/10)));
N=v*randn(8,L);
X=(A*S)+N;
R=zeros(M,M);
for n=1:L
r=X(:,n)*X(:,n)';
R=R+r;
end
R=R/L;
[D V]=eig(R);
UN=D(:,1:M-Ns);
u=-1:0.0002:1;
for n=1:length(u)
a(:,1)=exp(-j*2*pi*f(2)*(m-1)*d*u(n)/c);
% a=real(a);
p(n)=a'*UN*UN'*a;
% p(n)=1/p(n);
end
% p=10*log10(abs(p)/max(abs(p)));
figure
plot(asind(u),p);grid on
end