torchsig.transforms.functional.intermodulation_products

torchsig.transforms.functional.intermodulation_products(data: ndarray, coeffs: ndarray | None = None) ndarray[source]

Pass IQ data through an optimized memoryless nonlinear response model that creates local intermodulation distortion (IMD) products.

Note that since only odd-order IMD products effectively fall in spectrum near the first-order (original) signal, only these are calculated.

Parameters:
  • data – Complex valued IQ data samples.

  • coeffs – coefficients of memoryless IMD response such that y(t) = coeffs[0]*x(t) + coeffs[1]*(x(t)**2) + coeffs[2]*(x(t)**3) + … Defaults to a third-order model: np.array([1.0, 1.0, 1.0]).

Returns:

IQ data with local IMD products.