Total Power output of a ULA using Phased Array Toolbox

4 visualizzazioni (ultimi 30 giorni)
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)
__________________________________________________________________________

Risposta accettata

Honglei Chen
Honglei Chen il 14 Nov 2013
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
  1 Commento
King Fisher
King Fisher il 14 Nov 2013
Ah, I see ! I didn't know before that **** 'Unit','Pow'******* is available.
From there calculating the power is simple.
Thanks a lot !

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by