System object: phased.ULA
Simulate received plane waves
Y = collectPlaneWave(H,X,ANG)
Y = collectPlaneWave(H,X,ANG,FREQ)
Y = collectPlaneWave(H,X,ANG,FREQ,C)
Incoming signals, specified as an M-column matrix. Each column
Directions from which incoming signals arrive, in degrees.
Carrier frequency of signal in hertz.
Propagation speed of signal in meters per second.
Default: Speed of light
Simulate Received Signals at ULA
Simulate two received plane-wave random signals at a 4-element ULA. The signals arrive from 10° and 30° 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.
array = phased.ULA(4); y = collectPlaneWave(array,randn(4,2),[10 30],100e6,physconst('LightSpeed'))
y = 4×4 complex 0.7430 - 0.3705i 0.8433 - 0.1314i 0.8433 + 0.1314i 0.7430 + 0.3705i 0.8418 + 0.4308i 0.5632 + 0.1721i 0.5632 - 0.1721i 0.8418 - 0.4308i -2.4817 + 0.9157i -2.6683 + 0.3175i -2.6683 - 0.3175i -2.4817 - 0.9157i 1.0724 - 0.4748i 1.1895 - 0.1671i 1.1895 + 0.1671i 1.0724 + 0.4748i
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 .
 Van Trees, H. Optimum Array Processing. New York: Wiley-Interscience, 2002.