This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

phased.BeamscanEstimator2D System object

2-D beamscan spatial spectrum estimator


The BeamscanEstimator2D object calculates a 2-D beamscan spatial spectrum estimate.

To estimate the spatial spectrum:

  1. Define and set up your 2-D beamscan spatial spectrum estimator. See Construction.

  2. Call step to estimate the spatial spectrum according to the properties of phased.BeamscanEstimator2D. The behavior of step is specific to each object in the toolbox.


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.BeamscanEstimator2D creates a 2-D beamscan spatial spectrum estimator System object, H. The object estimates the signal's spatial spectrum using a narrowband conventional beamformer.

H = phased.BeamscanEstimator2D(Name,Value) creates 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).



Handle to sensor array

Specify the sensor array as a handle. The sensor array must be an array object in the phased package. The array cannot contain subarrays.

Default: phased.ULA with default property values


Signal propagation speed

Specify the propagation speed of the signal, in meters per second, as a positive scalar. You can specify this property as single or double precision.

Default: Speed of light


System operating frequency

Specify the operating frequency of the system in hertz as a positive scalar. The default value corresponds to 300 MHz. You can specify this property as single or double precision.

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. You can specify this property as single or double precision.

Default: 0


Perform forward-backward averaging

Set this property to true to use forward-backward averaging to estimate the covariance matrix for sensor arrays with conjugate symmetric array manifold.

Default: false


Azimuth scan angles

Specify the azimuth scan angles (in degrees) as a real vector. The angles must be between –180 and 180, inclusive. You must specify the angles in ascending order. You can specify X as single or double precision.

Default: -90:90


Elevation scan angles

Specify the elevation scan angles (in degrees) as a real vector or scalar. The angles must be within [–90 90]. You must specify the angles in an ascending order. You can specify X as single or double precision.

Default: 0


Enable DOA output

To obtain the signal's direction of arrival (DOA), set this property to true and use the corresponding output argument when invoking step. If you do not want to obtain the DOA, set this property to false.

Default: false


Number of signals

Specify the number of signals for DOA estimation as a positive scalar integer. This property applies when you set the DOAOutputPort property to true. You can specify X as single or double precision.

Default: 1


plotSpectrumPlot spatial spectrum
resetReset states of 2-D beamscan spatial spectrum estimator object
stepPerform 2-D spatial spectrum estimation
Common to All System Objects

Allow System object property value changes


expand all

Create the signals and solve for the DOA's

Estimate the DOAs of two signals received by a 50-element URA with a rectangular lattice. The antenna operating frequency is 150 MHz. The actual direction of the first signal is -37° in azimuth and 0° in elevation. The direction of the second signal is 17° in azimuth and 20° in elevation.

ha = phased.URA('Size',[5 10],'ElementSpacing',[1 0.6]);
ha.Element.FrequencyRange = [100e6 300e6];
fc = 150e6;
lambda = physconst('LightSpeed')/fc;
ang1 = [-37; 0]; ang2 = [17; 20];
x = sensorsig(getElementPosition(ha)/lambda,8000,[ang1 ang2],0.2);
estimator = phased.BeamscanEstimator2D('SensorArray',ha,...
[~,doas] = estimator(x)
doas = 2×2

   -37    17
     0    20

Plot the beamscan spatial spectrum



expand all


[1] Van Trees, H. Optimum Array Processing. New York: Wiley-Interscience, 2002.

Extended Capabilities

Introduced in R2012a