MATLAB: Total Power output of a ULA using Phased Array Toolbox

antennaPhased Array System Toolbox

Hi:
How to plot the non-normalized radiation-pattern of the 2-element ULA while total power out of the ULA is equal to the One isotropic element which is radiating the same power as that of 2 Element ULA.
In other words, How to calculate the total power radiated by a ULA using phased array toolbox.
NOTE: I know how to calculate analytically the total power output of ULA, I am interested in calculating using the phased array toolbox.
CODE is given below.
____________________________________________________________________________
clear all;
close all;
s=1/8; %spacing between elements
a=180; %phase angle
c=cosd(a)+sind(a)*i; %weight of 2nd element
hant = phased.IsotropicAntennaElement(...
'FrequencyRange',[3e8 1e9]);
ha = phased.ULA('Element',hant,'NumElements',2,'ElementSpacing',s,'Taper',[1 ,c]);
fc = 3e8;
ang = [0;0];
resp = step(ha,[3e8],ang);
c = physconst('LightSpeed');
plotResponse(ha,[fc 1e9],c,'RespCut','Az','Unit','mag','Format','Polar','NormalizeResponse',false)
__________________________________________________________________________

Best Answer

If you want to compute the total power, you could compute the pattern and then integrate. For example, you can either do it by computing the response using ArrayResponse or just get the data from the figure. For example, using your definition, you can do the following:
myArrayResp = phased.ArrayResponse('SensorArray',ha,'PropagationSpeed',c);
az = -180:179;
el = -90:89;
Prad = 0;
for m = 1:numel(el)
Prad = Prad+sum(abs(step(myArrayResp,fc,...
[az;el(m)*ones(1,numel(az))])).^2*cosd(el(m)));
end
Prad = Prad*2*pi^2/numel(az)/numel(el)
Alternatively, if you want to do it from the figure, you can do
h = plotResponse(ha,fc,c,'RespCut','3d',...
'Unit','Pow','Format','Polar','NormalizeResponse',false)
ppat = get(h,'CData');
Prad = sum(sum(bsxfun(@times,ppat,cosd((-90:90)'))),2)*2*pi/360*pi/180
Once you have the power, you can scale the input by specifying the Weights parameter in plotResponse
HTH and please let me know if you need further clarifications