Plot 3D Array Gain of 4x4 Planar Antenna Pattern + Weighting
Show older comments
Hi folks
I created an uniform rectangula antenna array
f=3e9;
c=3e8;
lambda=c/f;
ura = phased.URA('Size',4, 'ElementSpacing',0.5*lambda);
As it is stated in the Help of the Phased Array Toolbox, it generates a 4x4 array in the yz-plane, which means that
% Azimuthal az
phi=0;
% Elevation el
theta=90;
1. Is this right?
Further, I would like to calculate the Array Gain A(psi), by using the dtft with
A(psi)= \sum_n a_n*z^n
z = e^(j*psi)
psi=(k_x,k_y,k_z)*d= wavefactor: (k*d*sin(theta)*cos(phi), k*d*sin(theta)*sin(phi), k*d*cos(phi))
k=2*pi/lambda = wavenumber
d=distance between array elements in (1/lambda)
Taking the values for theta and phi from above, I`ll get as a wavefactor only a value for the k_x direction, that is:
% psi= k*d = 2*pi/lambda*d = 2pi
Array Gain: I am trying to solve this problem with Z-Transformation but I dont get any reasonable results?
G = dtft(a_n,psi)
2. Is this right so far? How can I introduce the weights to the coefficients?
Moreover, I really would like to plot the Array Gain G in 3D polar plot.
3. How could I realize this?
I already found the Orfanidis`Toolbox but it does not help me. Looking forward to hearing from you guys.
Cheers, Bryana
Answers (1)
Honglei Chen
on 14 Aug 2014
If you mean directivity, you could do the following to generate the 3D plot
f=3e9;
c=3e8;
lambda=c/f;
ura = phased.URA('Size',4, 'ElementSpacing',0.5*lambda);
plotResponse(ura,f,c,'RespCut','3d','Unit','dbi','Format','polar')
7 Comments
Bryana
on 14 Aug 2014
Honglei Chen
on 14 Aug 2014
What do you mean by 3 dimensions? The syntax does plot a 3D radiation pattern.
Bryana
on 14 Aug 2014
Honglei Chen
on 14 Aug 2014
I'd say that is what you want, just points to a different direction and with a backlobe. You can adjust the element to remove the backlobe and also rotate the axes to get a similar plot
f=3e9;
c=3e8;
lambda=c/f;
ura = phased.URA('Size',4, 'ElementSpacing',0.5*lambda,...
'Element',phased.CosineAntennaElement);
plotResponse(ura,f,c,'RespCut','3d','Unit','dbi','Format','polar')
set(gca,'CameraUpVector',[1 0 0]);
Bryana
on 15 Aug 2014
Honglei Chen
on 15 Aug 2014
You can think that way, but the element pattern is 3D, also your example is a 3D polar plot. Everything plotted here is indeed in a 3D mesh grid. If you really want to see the axes, you can simply do
axis on
and you'll see axes. Is that your concern?
Bryana
on 15 Aug 2014
Categories
Find more on Array Geometries and Analysis in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!