This is machine translation

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

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

phased.SteeringVector System object

Package: phased

Sensor array steering vector


The SteeringVector object calculates the steering vector for a sensor array.

To compute the steering vector of the array for specified directions:

  1. Define and set up your steering vector calculator. See Construction.

  2. Call step to compute the steering vector according to the properties of phased.SteeringVector. The behavior of step is specific to each object in the toolbox.

    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.SteeringVector creates a steering vector System object, H. The object calculates the steering vector of the given sensor array for the specified directions.

H = phased.SteeringVector(Name,Value) creates a steering vector 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 used to calculate steering vector

Specify the sensor array as a handle. The sensor array must be an array object in the phased package. The array can 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.

Default: Speed of light


Include individual element response in the steering vector

If this property is true, the steering vector includes the individual element responses.

If this property is false, the computation of the steering vector assumes the elements are isotropic. The steering vector does not include the individual element responses. Furthermore, if the SensorArray property contains subarrays, the steering vector is the array factor among the subarrays. If SensorArray does not contain subarrays, the steering vector is the array factor among the array elements.

Default: false


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


Enable polarization simulation

Set to this property to true, to enable the steering vector to simulate polarization. Set this property to false to ignore polarization. This property applies only when the array specified in the SensorArray property is capable of simulating polarization and you have set the IncludeElementResponse property to true.

Default: false


stepCalculate steering vector
Common to All System Objects

Create System object with same property values


Expected number of inputs to a System object


Expected number of outputs of a System object


Check locked states of a System object (logical)


Allow System object property value changes


expand all

Calculate and display the steering vector for a 4-element uniform linear array in the direction of 30 degrees azimuth and 20 degrees elevation. Assume the array's operating frequency is 300 MHz.

hULA = phased.ULA('NumElements',4);
hsv = phased.SteeringVector('SensorArray',hULA);
Fc = 3e8;
ANG = [30; 20];
sv = step(hsv,Fc,ANG)
sv =

  -0.6011 - 0.7992i
   0.7394 - 0.6732i
   0.7394 + 0.6732i
  -0.6011 + 0.7992i

Calculate the steering vector for a 4-element uniform linear array (ULA) in the direction of 30 degrees azimuth and 20 degrees elevation. Assume the array's operating frequency is 300 MHz.

fc = 3e8;
array = phased.ULA('NumElements',4);
steervec = phased.SteeringVector('SensorArray',array);
sv = steervec(fc,[30; 20]);

Plot the beam patterns for the uniform linear array when no steering vector is applied (steered broadside) and when a steering vector is applied.

c = steervec.PropagationSpeed;
title('Without steering')
title('With steering')


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

Extended Capabilities

Introduced in R2012a

Was this topic helpful?