steervec
Antenna DN beam steering vector.
Library |
EngeePhased |
Syntax
Function call
The steervec
function can be called in the following ways:
-
sv = steervec(pos,ang)
returns a steering vector sv for each incoming plane wave or set of plane waves incident on the antenna element. The control vector is a set of phase delays for the incoming wave at each antenna element. The pos argument defines the positions of the antenna elements. The ang argument defines the directions of incoming wave incidence in terms of azimuth and elevation angles. The control vector sv is a complex matrix to . In this matrix, represents the number of antenna elements, while represents the number of incoming waves. Each column of sv contains a control vector for the corresponding direction specified in ang. It is assumed that all antenna elements in the sensor matrix are isotropic. -
sv = steervec(pos,ang,nqbits)
returns the quantised narrowband control vector when the number of phase shifter bits is set in the nqbits argument.
Arguments
Entry
pos -
antenna element positions
real vector 1 on N
| real matrix 2 on N
| real matrix 3 on N
Details
Antenna element positions given as vector 1 at , matrix 2 at or matrix 3 at . In this vector or matrix, represents the number of antenna elements. Each column of the pos argument represents the coordinates of an element.
-
If pos is vector 1 at , it represents -coordinates of the sensor elements of the linear array. It is assumed that and -coordinates are zero.
-
If pos is matrix 2 at , it represents the -coordinates of the antenna elements of the antenna array. It is assumed that this antenna array lies in the -plane. It is assumed that -coordinates are zero.
-
If pos is a 3-by- matrix, the antenna array can have an arbitrary shape. The position of the antenna elements is determined by the wavelength of the signal.
Example: [0,0,0; 0.1,0.4,0.3; 1,1,1]
.
Data types: Float64
ang -
directions of arrival of incoming signals
` real vector 1 on M` | ` real matrix 2 on M`
Details
Arrival directions of incoming signals given as vector 1 on or matrix 2 on , where is the number of incoming signals.
-
If ang is a matrix 2 on , each column defines a direction in azimuth and elevation of the incoming signal
[az;el]
. The azimuth angle must lie between -180° and 180°, and the elevation angle must lie between -90° and 90°. The azimuth angle is the angle between the axis and the projection of the arrival direction vector onto the plane . It is positive when measured from the axis towards the axis . Elevation angle is the angle between the arrival direction vector and the -plane. It is positive when measured from the axis towards the axis. -
If ang is vector 1 on , it is a set of azimuthal angles, with place angles assumed to be zero.
The units of angles are degrees.
Example: [45;0]
Data types: Float64
nqbits -
number of phase shift quantisation bits
0 (by default)
| non-negative integer
Details
The number of bits used for phase shift quantisation in the beamformer or control vector weighting coefficients is set as a non-negative integer.
A value of zero indicates that quantisation is not performed.
Example: 5
Output
sv — control vector
`complex matrix N on M
Details
The beam steering vector of the antenna DN beam, is returned as a complex matrix by . In this matrix, represents the number of antenna elements of the antenna array, and represents the number of incoming plane waves.
Each column of sv corresponds to the same column in the input argument ang.
Examples
Linear array of control vectors
Details
Define a homogeneous linear array of five elements spaced 10 cm apart. Then define an incoming plane wave with a frequency of 1 GHz and an arrival direction of 45° in azimuth and 0° in elevation. Calculate the direction vector of this wave.
elementPos = (0:.1:.4);
c = physconst("LightSpeed");
fc = 1e9;
lam = c/fc;
ang = [45;0];
sv = steervec(elementPos/lam,ang)
Quantised linear array of control vectors
Details
Define a uniform linear array (ULA) containing five isotropic elements spaced 10 cm apart. Then specify an incoming plane wave with a frequency of 1 GHz and an arrival direction of 45° in azimuth and 0° in elevation. Calculate the direction vector of this wave. Quantise the direction vector to three bits.
elementPos = (0:.1:.4);
c = physconst("LightSpeed");
fc = 1e9;
lam = c/fc;
ang = [45;0];
sv = steervec(elementPos/lam,ang,3)
See also
-
Van Trees, H.L.. "Optimum Array Processing." New York, NY: Wiley-Interscience, 2002.
-
Johnson, Don H. and D. Dudgeon. "Array Signal Processing." Englewood Cliffs, NJ: Prentice Hall, 1993.
-
Van Veen, B. D. and K. M. Buckley. "Beamforming: A versatile approach to spatial filtering". IEEE ASSP Magazine, Vol. 5 No. 2 pp. 4-24.