clc
clear;
close all;
f0=20e3; %频率
c=1500; %速度
lamda=c/f0; %波长???????
dy=lamda/2; %y方向阵元间距?
dz=lamda/2; %z方向阵元间距??
dx=lamda/2;
beta=2*pi/lamda;
theta = (-90:1:90)./180*pi; %θ范围
phi = (-90:1:90)./180*pi; %φ范围
x=[-5.5:5.5]*dx;
y=zeros(1,length(x));
figure(1)
plot(x,y,'r*');
title('均匀线阵示意图');
Fd=zeros(1,length(theta));
for ii=1:length(x)
Fd=Fd+exp(1j*beta*x(ii)*sin(theta));
end
Fd=abs(Fd)/max(abs(Fd));
figure(2)
plot(theta*180/pi,Fd);
xlabel('\theta');
ylabel('amplitude');
title('均匀线阵波束图0°');
S1=exp(j*beta*x*sin(30/180*pi));
for ii=1:length(theta)
F1(ii)=S1*exp(-1j*beta*x.'*sin(theta(ii)));
end
figure(3)
F1=abs(F1)/max(abs(F1));
plot(theta*180/pi,F1);
title('均匀线阵波束图30°');
%------------------------?????????------------------------------------------
GlobalU(:,:,2)=[(-2.5:2.5) (-3.5:3.5) (-4.5:4.5) (-5.5:5.5) (-5.5:5.5) (-5.5:5.5)...
(-5.5:5.5) (-5.5:5.5) (-5.5:5.5) (-4.5:4.5) (-3.5:3.5) (-2.5:2.5)]*dy;
GlobalU(:,:,3)=[(ones(1,6)*-6)+0.5 (ones(1,8)*-5)+0.5 (ones(1,10)*-4)+0.5 (ones(1,12)*-3)+0.5 ...
(ones(1,12)*-2)+0.5 (ones(1,12)*-1)+0.5 (ones(1,12)*1)-0.5 (ones(1,12)*2)-0.5...
(ones(1,12)*3)-0.5 (ones(1,10)*4)-0.5 (ones(1,8)*5)-0.5 (ones(1,6)*6)-0.5]*dz;
num=length(GlobalU(:,:,1));
figure(4)
plot(GlobalU(:,:,2),GlobalU(:,:,3),'r*');
title('面阵示意图');
[Theta,Phi]=meshgrid(theta,phi);
Fe=zeros(length(phi),length(theta));
for ii=1:num
Fe=Fe+exp(1j*beta*(GlobalU(:,ii,2)*(sin(Theta).*cos(Phi))+GlobalU(:,ii,3)*sin(Phi)));
end
Fe=abs(Fe)/max(max(abs(Fe)));
figure(5)
mesh(Theta*180/pi,Phi*180/pi,Fe);
xlabel('\theta');
ylabel('\phi');
title('三维波束图');
S2=exp(1j*beta*(GlobalU(:,:,2)*(sin(30/180*pi).*cos(0/180*pi))+GlobalU(:,:,3)*sin(0/180*pi)));
for ii=1:length(phi)
for jj=1:length(theta)
F2(ii,jj)=S2*exp(-1j*beta*(GlobalU(:,:,2)*(sin(theta(jj)).*cos(phi(ii)))+GlobalU(:,:,3)*sin(phi(ii)))).';
end
end
figure(6)
F2=abs(F2)/max(max(abs(F2)));
mesh(theta*180/pi,phi*180/pi,F2);
title('三维波束图');
xlabel('\theta');
ylabel('\phi');
M=12;
yi=zeros(M,M);
for ii=1:M
yi(ii,:)=(-M/2+0.5:M/2-0.5)*dy;
end
yi=reshape(yi,1,M*M);
zi=zeros(M,M);
for ii=1:M
zi(ii,:)=(ones(1,M)*(-M/2+ii)-0.5)*dz;
end
zi=reshape(zi,1,M*M);
GlobalV(:,:,2)=yi;
GlobalV(:,:,3)=zi;
nun=length(GlobalV(:,:,1));
figure(7)
plot(GlobalV(:,:,2),GlobalV(:,:,3),'r*');
title('均匀面阵示意图');
Ff=zeros(length(phi),length(theta));
for ii=1:nun
Ff=Ff+exp(1j*beta*(GlobalV(:,ii,2)*(sin(Theta).*cos(Phi))+GlobalV(:,ii,3)*sin(Phi)));
end
Ff=abs(Ff)/max(max(abs(Ff)));
figure(8)
mesh(Theta*180/pi,Phi*180/pi,Ff);
xlabel('\theta');
ylabel('\phi');
title('三维波束图');
S3=exp(1j*beta*(GlobalV(:,:,2)*(sin(0/180*pi).*cos(8/180*pi))+GlobalV(:,:,3)*sin(8/180*pi)));
S4=exp(1j*beta*(GlobalV(:,:,2)*(sin(0/180*pi).*cos(-8/180*pi))+GlobalV(:,:,3)*sin(-8/180*pi)));
SS=S3+S4;
for ii=1:length(phi)
for jj=1:length(theta)
F3(ii,jj)=SS*exp(-1j*beta*(GlobalV(:,:,2)*(sin(theta(jj)).*cos(phi(ii)))+GlobalV(:,:,3)*sin(phi(ii)))).';
end
end
figure(9)
F3=abs(F3)/max(max(abs(F3)));
mesh(theta*180/pi,phi*180/pi,F3);
title('三维波束图');
xlabel('\theta');
ylabel('\phi');
- 1
- 2
- 3
- 4
- 5
前往页