step
System object: phased.FrostBeamformer
Namespace: phased
Perform Frost beamforming
Syntax
Y = step(H,X)
Y = step(H,X,XT)
Y = step(H,X,ANG)
Y = step(H,X,XT,ANG)
[Y,W] =
step(___)
Description
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.
performs
Frost beamforming on the input, Y
= step(H
,X
)X
, and returns
the beamformed output in Y
.
uses Y
= step(H
,X
,XT
)XT
as
the training samples to calculate the beamforming weights. This syntax
is available when you set the TrainingInputPort
property
to true
.
uses Y
= step(H
,X
,ANG
)ANG
as
the beamforming direction. This syntax is available when you set the DirectionSource
property
to 'Input port'
.
combines
all input arguments. This syntax is available when you set the Y
= step(H
,X
,XT
,ANG
)TrainingInputPort
property
to true
and set the DirectionSource
property
to 'Input port'
.
[
returns the beamforming weights, Y
,W
] =
step(___)W
.
This syntax is available when you set the WeightsOutputPort
property
to true
.
Note
The object performs an initialization the first time the object is executed. This
initialization locks nontunable properties
and input specifications, such as dimensions, complexity, and data type of the input data.
If you change a nontunable property or an input specification, the System object issues an error. To change nontunable properties or inputs, you must first
call the release
method to unlock the object.
Input Arguments
|
Beamformer object. |
|
Input signal, specified as an M-by-N matrix. M must
be larger than the FIR filter length specified in the The size of the first dimension of the input matrix can vary to simulate a changing signal length. A size change can occur, for example, in the case of a pulse waveform with variable pulse repetition frequency. |
|
Training samples, specified as an M-by-N matrix. M and N have
the same dimensions as The size of the first dimension of the input matrix can vary to simulate a changing signal length. A size change can occur, for example, in the case of a pulse waveform with variable pulse repetition frequency. |
|
Beamforming directions, specified as a length-2 column vector.
The vector has the form |
Output Arguments
|
Beamformed output. |
|
Beamforming weights. |
Examples
Algorithms
phased.FrostBeamformer
uses a beamforming algorithm
proposed by Frost. It can be considered the time-domain counterpart
of the minimum variance distortionless response (MVDR) beamformer.
The algorithm does the following:
Steers the array to the beamforming direction.
Applies an FIR filter to the output of each sensor to achieve the distortionless response constraint. The filter is specific to each sensor.
For further details, see [1].
References
[1] Frost, O. “An Algorithm For Linearly Constrained Adaptive Array Processing”, Proceedings of the IEEE. Vol. 60, Number 8, August, 1972, pp. 926–935.
[2] Van Trees, H. Optimum Array Processing. New York: Wiley-Interscience, 2002.