Total Power output of a ULA using Phased Array Toolbox

조회 수: 7 (최근 30일)
King Fisher
King Fisher 2013년 11월 11일
댓글: King Fisher 2013년 11월 14일
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)
__________________________________________________________________________

채택된 답변

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

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Array Geometries and Analysis에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by