ESPRIT direction of arrival (DOA) estimator for ULA
The phased.ESPRITEstimator
System
object™ estimate
the direction of arrival of signals parameters via rotational invariance
(ESPRIT) direction of arrival estimate.
To estimate the direction of arrival (DOA):
Define and set up your DOA estimator. See Construction.
Call step
to estimate the DOA
according to the properties of phased.ESPRITEstimator
.
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.ESPRITEstimator
creates an ESPRIT
DOA estimator System
object, H
. The object
estimates the signal's directionofarrival (DOA) using the ESPRIT
algorithm with a uniform linear array (ULA).
H = phased.ESPRITEstimator(
creates
object, Name
,Value
)H
, with each specified property Name
set to the specified Value. You can specify additional namevalue
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 a Default: 

Signal propagation speed Specify the propagation speed of the signal, in meters per second, as a positive scalar. 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. Default: 

Perform forwardbackward averaging Set this property to Default: 

Spatial smoothing Specify the number of averaging used by spatial smoothing to estimate the covariance matrix as a nonnegative integer. Each additional smoothing handles one extra coherent source, but reduces the effective number of element by 1. The maximum value of this property is M–2, where M is the number of sensors. Default: 

Source of number of signals Specify the source of the number of signals as one of Default: 

Method to estimate number of signals Specify the method to estimate the number of signals as one
of Default: 

Number of signals Specify the number of signals as a positive integer scalar.
This property applies when you set the Default: 

Type of least squares method Specify the least squares method used for ESPRIT as one of Default: 

Row weighting factor Specify the row weighting factor for signal subspace eigenvectors
as a positive integer scalar. This property controls the weights applied
to the selection matrices. In most cases the higher value the better.
However, it can never be greater than (Nsub – 1)/2 where Nsub is
the number of elements in the subarray derived from the array specified
in the Default: 
step  Perform DOA estimation 
Common to All System Objects  

clone  Create System object with same property values 
getNumInputs  Expected number of inputs to a System object 
getNumOutputs  Expected number of outputs of a System object 
isLocked  Check locked states of a System object (logical) 
release  Allow System object property value changes 
The ESPRIT algorithm, as implemented in the phased.ESPRITEstimator
System
object,
reorganizes the ULA elements into two overlapping subarrays. For an
original Nelement array, the first subarray consist of elements 1,...,N
 1 of the original array. The second subarray consist of
elements 2,...,N of the original array. There
are N_{sub} = N  1 elements
in each subarray.
[1] Van Trees, H. Optimum Array Processing. New York: WileyInterscience, 2002.