ambgfun

ambgfun#

Ambiguity function

template<typename XTensor, typename YTensor>
__MATX_INLINE__ auto matx::ambgfun(const XTensor &x, const YTensor &y, double fs, AMBGFunCutType_t cut, float cut_val = 0.0)#

Cross-ambiguity function

Generates a cross-ambiguity magnitude function from inputs x and y. The ambiguity function generates a 2D delay vs doppler matrix of the cross ambiguity of x and y.

Template Parameters:
  • XTensor – x vector type

  • YTensor – Y vector type

Parameters:
  • x – First input signal

  • y – Second input signal

  • fs – Sampling frequency

  • cut – Type of cut. 2D is effectively no cut. Delay cut returns a cut with zero time delay. Doppler generates a cut with zero Doppler shift. Note that in both Delay and Doppler mode, the output matrix must be a 2D tensor where the first dimension is 1 to match the type of 2D mode.

  • cut_val – Value to perform the cut at

Returns:

2D output matrix where rows are the Doppler (Hz) shift and columns are the delay in seconds.

template<typename XTensor>
__MATX_INLINE__ auto matx::ambgfun(const XTensor &x, double fs, AMBGFunCutType_t cut, float cut_val = 0.0)#

Ambiguity function

Generates an ambiguity magnitude function from input signal x. The ambiguity function generates a 2D delay vs doppler matrix of the input signal.

Template Parameters:

XTensor – x vector type

Parameters:
  • x – First input signal

  • fs – Sampling frequency

  • cut – Type of cut. 2D is effectively no cut. Delay cut returns a cut with zero time delay. Doppler generates a cut with zero Doppler shift. Note that in both Delay and Doppler mode, the output matrix must be a 2D tensor where the first dimension is 1 to match the type of 2D mode.

  • cut_val – Value to perform the cut at

Returns:

2D output matrix where rows are the Doppler (Hz) shift and columns are the delay in seconds.

Examples#

(amf_delay_v = ambgfun(xv, 1e3, AMBGFUN_CUT_TYPE_DELAY, 1.0)).run();
(amf_doppler_v = ambgfun(xv, 1e3, AMBGFUN_CUT_TYPE_DOPPLER, 1.0)).run();