Main Content

phased.HeterogeneousULA.collectPlaneWave

Simulate received plane waves

Description

Y = collectPlaneWave(array,X,ANG) returns the received signals at the sensor array, array, when the input signals indicated by X arrive at the array from the directions specified in ANG.

Y = collectPlaneWave(array,X,ANG,FREQ), in addition, specifies the incoming signal carrier frequency in FREQ.

Y = collectPlaneWave(array,X,ANG,FREQ,C), in addition, specifies the signal propagation speed in C.

example

Examples

collapse all

Simulate two received signal at a heterogeneous 4-element ULA. The signals arrive from 10° and 30° degrees azimuth. Both signals have an elevation angle of 0°. Assume the propagation speed is the speed of light and the carrier frequency of the signal is 100 MHz.

antenna1 = phased.ShortDipoleAntennaElement(FrequencyRange=[100e6 1e9], ...
    AxisDirection="Z");
antenna2 = phased.ShortDipoleAntennaElement(FrequencyRange=[100e6 1e9], ...
    AxisDirection="Y");
array = phased.HeterogeneousULA(ElementSet={antenna1,antenna2}, ...
    ElementIndices=[1 2 2 1]);

Create a random plane wave signal.

y = collectPlaneWave(array,randn(4,2),[10 30],1e8,physconst("LightSpeed"));

Display the signal at the first element.

y(:,1)
ans = 4×1 complex

   0.7430 - 0.3705i
   0.8418 + 0.4308i
  -2.4817 + 0.9157i
   1.0724 - 0.4748i

Input Arguments

collapse all

Phased array, specified as an System object™.

Incoming signals, specified as a complex-valued M-column matrix. Each column of X represents an individual incoming signal.

Data Types: double

Directions from which incoming signals arrive, in degrees. ANG can be either a 2-by-M matrix or a row vector of length M.

If ANG is a 2-by-M matrix, each column specifies the direction of arrival of the corresponding signal in X. Each column of ANG is in the form [azimuth; elevation]. The azimuth angle must be between –180° and 180°, inclusive. The elevation angle must be between –90° and 90°, inclusive.

If ANG is a row vector of length M, each entry in ANG specifies the azimuth angle. In this case, the corresponding elevation angle is assumed to be 0°.

Data Types: double

Carrier frequency of signal in Hz. FREQ must be a scalar.

Data Types: double

Propagation speed of signal in meters per second.

Data Types: double

Output Arguments

collapse all

Received signals. Y is a complex-valued N-column matrix, where N is the number of elements in the array array. Each column of Y is the received signal at the corresponding array element, with all incoming signals combined.

Algorithms

collectPlaneWave modulates the input signal with a phase corresponding to the delay caused by the direction of arrival. The method does not account for the response of individual elements in the array.

For further details, see [1].

References

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

Version History

Introduced in R2013a