This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

phased.ReplicatedSubarray System object

Package: phased

Phased array formed by replicated subarrays


The ReplicatedSubarray object represents a phased array that contains copies of a subarray.

To obtain the response of the subarrays:

  1. Define and set up your phased array containing replicated subarrays. See Construction.

  2. Call step to compute the response of the subarrays according to the properties of phased.ReplicatedSubarray. The behavior of step is specific to each object in the toolbox.

You can also use a ReplicatedSubarray object as the value of the SensorArray or Sensor property of objects that perform beamforming, steering, and other operations.

    Note:   Starting in R2016b, instead of using the step method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example, y = step(obj,x) and y = obj(x) perform equivalent operations.


H = phased.ReplicatedSubarray creates a replicated subarray System object, H. This object represents an array that contains copies of a subarray.

H = phased.ReplicatedSubarray(Name,Value) creates a replicated subarray object, H, with each specified property Name set to the specified Value. You can specify additional name-value pair arguments in any order as (Name1,Value1,...,NameN,ValueN).



Subarray to replicate

Specify the subarray you use to form the array. The subarray must be a phased.ULA, phased.URA, or phased.ConformalArray object.

Default: phased.ULA with default property values


Layout of subarrays

Specify the layout of the replicated subarrays as 'Rectangular' or 'Custom'.

Default: 'Rectangular'


Size of rectangular grid

Specify the size of the rectangular grid as a single positive integer or 1-by-2 positive integer row vector. This property applies only when you set the Layout property to 'Rectangular'.

If GridSize is a scalar, the array has the same number of subarrays in each row and column.

If GridSize is a 1-by-2 vector, the vector has the form [NumberOfRows, NumberOfColumns]. The first entry is the number of subarrays along each column, while the second entry is the number of subarrays in each row. A row is along the local y-axis, and a column is along the local z-axis. This figure shows how a 3-by-2 URA subarray is replicated using a GridSize value of [1,2].

Default: [2 1]


Spacing of rectangular grid

Specify the rectangular grid spacing of subarrays as a positive real-valued scalar, a 1-by-2 row vector, or 'Auto'. This property applies only when you set the Layout property to 'Rectangular'. Grid spacing units are expressed in meters.

If GridSpacing is a scalar, the spacing along the row and the spacing along the column is the same.

If GridSpacing is a length-2 row vector, it has the form [SpacingBetweenRows, SpacingBetweenColumn]. The first entry specifies the spacing between rows along a column. The second entry specifies the spacing between columns along a row.

If GridSpacing is 'Auto', the replication preserves the element spacing in both row and column. This option is available only if you use a phased.ULA or phased.URA object as the subarray.

Default: 'Auto'


Subarray positions in custom grid

Specify the positions of the subarrays in the custom grid. This property value is a 3-by-N matrix, where N indicates the number of subarrays in the array. Each column of the matrix represents the position of a single subarray in the array's local coordinate system, in meters, using the form [x; y; z].

This property applies when you set the Layout property to 'Custom'.

Default: [0 0; -0.5 0.5; 0 0]


Subarray normal directions in custom grid

Specify the normal directions of the subarrays in the array. This property value is a 2-by-N matrix, where N is the number of subarrays in the array. Each column of the matrix specifies the normal direction of the corresponding subarray, in the form [azimuth; elevation]. Each angle is in degrees and is defined in the local coordinate system.

You can use the SubarrayPosition and SubarrayNormal properties to represent any arrangement in which pairs of subarrays differ by certain transformations. The transformations can combine translation, azimuth rotation, and elevation rotation. However, you cannot use transformations that require rotation about the normal.

This property applies when you set the Layout property to 'Custom'.

Default: [0 0; 0 0]


Subarray steering method

Specify the method of steering the subarray as one of 'None' | 'Phase' | 'Time'.

Default: 'None'


Subarray phase shifter frequency

Specify the operating frequency of phase shifters that perform subarray steering. The property value is a positive scalar in hertz. This property applies when you set the SubarraySteering property to 'Phase'.

Default: 3e8


Number of phase shifter quantization bits

The number of bits used to quantize the phase shift component of beamformer or steering vector weights. Specify the number of bits as a non-negative integer. A value of zero indicates that no quantization is performed.

Default: 0


cloneCreate replicated subarray with same property values
collectPlaneWaveSimulate received plane waves
directivityDirectivity of replicated subarray
getElementPositionPositions of array elements
getNumElementsNumber of elements in array
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs from step method
getNumSubarraysNumber of subarrays in array
getSubarrayPositionPositions of subarrays in array
isLockedLocked status for input attributes and nontunable properties
isPolarizationCapablePolarization capability
patternPlot replicated subarray directivity and patterns
patternAzimuthPlot replicated subarray directivity or pattern versus azimuth
patternElevationPlot replicated subarray directivity or pattern versus elevation
plotResponsePlot response pattern of array
releaseAllow property value and input characteristics changes
stepOutput responses of subarrays
viewArrayView array geometry


expand all

Plot the azimuth response of a 4-element ULA composed of two 2-element ULAs. By default, the antenna elements are isotropic.

sArray = phased.ULA('NumElements',2,'ElementSpacing',0.5);
sRSA = phased.ReplicatedSubarray('Subarray',sArray,...
   'Layout','Rectangular','GridSize',[1 2],...

Plot the azimuth response of the array. Assume the operating frequency is 1 GHz and the wave propagation speed is the speed of light.

fc = 1.0e9;

Create a 4-element ULA from two 2-element ULA subarrays consisting of short-dipole antenna elements. Then, calculate the response at boresight. Because the array elements support polarization, the response consists of horizontal and vertical components.

Create the arrays from subarrays.

sSD = phased.ShortDipoleAntennaElement;
sULA = phased.ULA('Element',sSD,...
sRSA = phased.ReplicatedSubarray('Subarray',sULA,...
    'GridSize',[1 2],...

Show the vertical polarization response for the subarrays.

fc = 1.0e9;
ang = [0;0];
resp = step(sRSA,fc,ang,physconst('LightSpeed'));

Related Examples


[1] Mailloux, Robert J. Electronically Scanned Arrays. San Rafael, CA: Morgan & Claypool Publishers, 2007.

[2] Mailloux, Robert J. Phased Array Antenna Handbook, 2nd Ed. Norwood, MA: Artech House, 2005.

Introduced in R2012a

Was this topic helpful?