I am modeling a 16x16 element phased array, although the size is not really important. My theoretical hardware has a phase shifter behind every element in the array, so I can fully steer the array. Since I don't have a clear example to go by, my take is that in order to steer this array, I need to create a partitioned array, where each and every element is specified as an independent sub-array. To do this I am setting the SubarraySelection parameter to eye(256). I see no other way to steer the array. I am also adding taper weights to the array, and the only way I can appear to do this is to specify each element as an independent sub-array. Is this the correct approach, or am I making the problem unnecessarily complicated?
Prashant Kumar answered .
2025-11-20
% define array
ha = phased.URA(16)
c = 3e8; fc = 3e8;
% define steering vector
hstv = phased.SteeringVector('SensorArray',ha,'PropagationSpeed',c)
% use steering vector to steer the array to 30 degrees azimuth
plotResponse(ha,fc,c,'Format','polar','RespCut','3d','Weights',step(hstv,fc,30))