Documentation |
Y = collectPlaneWave(H,X,ANG)
Y = collectPlaneWave(H,X,ANG,FREQ)
Y = collectPlaneWave(H,X,ANG,FREQ,C)
Y = collectPlaneWave(H,X,ANG) returns the received signals at the sensor array, H, when the input signals indicated by X arrive at the array from the directions specified in ANG.
Y = collectPlaneWave(H,X,ANG,FREQ) uses FREQ as the incoming signal's carrier frequency.
Y = collectPlaneWave(H,X,ANG,FREQ,C) uses C as the signal's propagation speed. C must be a scalar.
H |
Array object. |
X |
Incoming signals, specified as an M-column matrix. Each column of X represents an individual incoming signal. |
ANG |
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 degrees, inclusive. The elevation angle must be between –90 and 90 degrees, 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. |
FREQ |
Carrier frequency of signal in hertz. FREQ must be a scalar. Default: 3e8 |
C |
Propagation speed of signal in meters per second. Default: Speed of light |
Y |
Received signals. Y is an N-column matrix, where N is the number of elements in the array H. Each column of Y is the received signal at the corresponding array element, with all incoming signals combined. |
Simulate the received signal at a 2-by-2 element heterogeneous URA with different cosine antenna patterns. The signals arrive from 10° and 30° azimuth. Both signals have an elevation angle of 0° degrees.
sElement1 = phased.CosineAntennaElement('CosinePower',1.5); sElement2 = phased.CosineAntennaElement('CosinePower',1.8); sArray = phased.HeterogeneousURA(... 'ElementSet',{sElement1,sElement2},... 'ElementIndices',[1 2; 1 2]); y = collectPlaneWave(sArray,randn(4,2),[10 30],1e8,... physconst('LightSpeed'));
y(:,1) ans = 4.2642 - 0.5130i 2.6971 - 0.2353i -0.6539 - 0.0625i 2.8244 - 0.2227i
collectPlaneWave modulates the input signal with a phase corresponding to the delay caused by the direction of arrival. This method does not account for the response of individual elements in the array.
For further details, see [1].