📄 music1.m
字号:
% the data of signal
clear;
format long;
c=3*10.^8; % speed of light
L=8; % the number of array
sam=128*2;
N=128*2;
w1=1000;
w2=1001;
w3=1002;
w4=1003;
phase=0;
%Amp=10;
snr=20;
Amp=sqrt(2*10^(snr/10));
lamta=c/w1;
len=lamta/2;
P1=40*pi/360;
P2=60*pi/360;
P3=80*pi/360;
P4=120*pi/360;
%P;
for t=1:sam
s1(t)=Amp*(exp(j*2*pi*w1*0.1*t));
s2(t)=Amp*(exp(j*2*pi*w2*0.1*t));
s3(t)=Amp*(exp(j*2*pi*w3*0.1*t));
s4(t)=Amp*(exp(j*2*pi*w4*0.1*t));
end
s=[s1(1:N);s2(1:N);s3(1:N);s4(1:N)];
%n=1:1800;
%aa=(0.1*n)*pi/180;
i=1:L;
x1=exp(j*2*pi*w1*(len*(i-1)*sin(P1))/c);
x2=exp(j*2*pi*w2*(len*(i-1)*sin(P2))/c);
x3=exp(j*2*pi*w3*(len*(i-1)*sin(P3))/c);
x4=exp(j*2*pi*w4*(len*(i-1)*sin(P4))/c);
a1=x1.';
a2=x2.';
a3=x3.';
a4=x4.';
a=[a1,a2,a3,a4];
%a=[a1.';a2.'];
noise=randn(L,N)+j*randn(L,N);
z=a*s+noise;
Rz=(z*z')/N;
[e,v]=eig(Rz);
es=e(:,5:L);
en=e(:,(1:4));
itr=1800;
aaaa=zeros(L,itr);
for k=1:L;
for h=1:itr;
aaaa(k,h)=exp(j*pi*(k-1)*sin(0.1*h*pi/360));
%aaaa(k,h)=exp(j*2*pi*w1*len*(k-1)*sin(0.1*h*pi/180)/c);
end
end
b=zeros(L);
for i=1:L;
b(i,i)=1;
end
c=b-es*es';
for m=1:itr;
aac=aaaa(:,m);
pp=aac'*aac/((aac)'*c*aac);
%pp=1/((aac)'*c*aac);
p(m)=real(pp);
end
%p1=p(1:4500);
%p2=p(4501:9000);
%[m1,n1]=max(p1);
%doa1=n1/100
%[m2,n2]=max(p2);
%doa2=n2/100+45
u=0:0.1:180-0.1;
p=10*log(p);
plot(u,p);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -