Main Content


Simulate received plane waves


    Y = collectPlaneWave(array,X,ANG) returns the received signals, Y 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.

    Input Arguments

    collapse all

    Phased array, specified as a System object.

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

    Example: [1,5;2,10;3,10]

    Data Types: double
    Complex Number Support: Yes

    Arrival directions of incoming signals, specified as a 1-by-M vector or a 2-by-M matrix, where M is the number of incoming signals. Each column specifies the direction of arrival of the corresponding signal in X. If ANG is a 2-by-M matrix, each column specifies the direction in azimuth and elevation of the incoming signal [az;el]. Angular units are in degrees. The azimuth angle must lie between –180° and 180° and the elevation angle must lie between –90° and 90°.

    If ANG is a 1-by-M vector, then each entry represents a set of azimuth angles, with the elevation angles assumed to be zero.

    The azimuth angle is the angle between the x-axis and the projection of the arrival direction vector onto the xy plane. When measured from the x-axis toward the y-axis, the azimuth angle is positive.

    The elevation angle is the angle between the arrival direction vector and the xy-plane. When measured toward the z axis, the elevation angle is positive.

    Example: [20,30;15,25]

    Data Types: double

    Signal carrier frequency, specified as a positive scalar in Hz.

    Data Types: double

    Signal propagation speed, specified as a positive scalar in meters per second.

    Example: physconst('LightSpeed')

    Data Types: double

    Output Arguments

    collapse all

    Received signals, returned as an N-column complex-valued row vector. The quantity N is the number of elements in the array. Each column of Y contains the combined received signals at the corresponding array element.

    Introduced in R2021a