⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 parray.m

📁 MATLAB无线网络的各种例子,相当全面
💻 M
字号:
% PARRAY   Provides  the  radiation  intensity  for a uniform planar
%          array in three different planes:  UAZX for zx-plane, UAZY
%          for zy-plane and UAXY for xy-plane.
%
%          [UAZY,UAZY,UAXY] = PARRAY(UZX,UZY,UXY,DX,DY,BTX,BTY,M,N)
%
%          UZX, UZY and UXY  are  the radiation intensity vectors of 
%          the elements in the planes  ZX, ZY and XY,  respectively.
%          DX  and  DY  are  the  spacing  interval  in  the x and y  
%          directions, respectively.  BTX  and  BTY are the  feeding  
%          phase  difference  between  elements  in  the   x  and  y 
%          directions, respectively. Finally, M and N are the number 
%          of elements in x and y directions, respectively.
%

% RFWave - The Radio Frequency Wave Toolbox
% Versions: 1.0 22-May-1997, 1.1 18-Aug-1999,
%           1.2 16-Jul-2002
% Developed by A. C. de C. Lima 
% E-mail: acdcl@ufba.br
% Electrical Engineering Department
% Federal University of Bahia (UFBA)
% Brazil

function [uazx,uazy,uaxy]=plnarray(uelzx,uelzy,uelxy,dx,dy,betax,betay,m,n)

betax=pi*betax/180;
betay=pi*betay/180;
format long
k=2*pi;
lue=length(uelzx)/2;
th=pi/lue:pi/lue:2*pi;

% Plane zx (phi = 0)
psix=k*dx*sin(th)+betax;
psiy=betay+eps;
if n==0
    fay=pi/2*ones(1,400);
else
    fay=(sin(n*psiy/2)./(n*sin(psiy/2))).^2;
end
if m==0
    fax=pi/2*ones(1,400);
else
    fax=(sin(m*psix/2)./(m*sin(psix/2))).^2;
end
u=uelzx.*fax.*fay;
uazx=u/max(u);

% Plane zy (phi = 90)
psix=betax+eps;
psiy=k*dy*sin(th)+betay;
if n==0
    fay=pi/2*ones(1,400);
else
    fay=(sin(n*psiy/2)./(n*sin(psiy/2))).^2;
end
if m==0
    fax=pi/2*ones(1,400);
else
    fax=(sin(m*psix/2)./(m*sin(psix/2))).^2;
end
u=uelzy.*fax.*fay;
uazy=u/max(u);

% Plane xy (theta = 90)
psix=k*dx*cos(th)+betax;
psiy=k*dy*sin(th)+betay;
if n==0
    fay=pi/2*ones(1,400);
else
    fay=(sin(n*psiy/2)./(n*sin(psiy/2))).^2;
end
if m==0
    fax=pi/2*ones(1,400);
else
    fax=(sin(m*psix/2)./(m*sin(psix/2))).^2;
end
u=uelxy.*fax.*fay;
uaxy=u/max(u);


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -