Impairments#
- class IQImbalance(alpha: complex, beta: complex, name: str = 'iq_impairment')#
Apply IQ imbalance impairments.
Signal Model#
\[y[n] = \alpha x[n] + \beta x^*[n]\]where :
\((\alpha,\beta) \in \mathbb{C}^2\) corresponds to the complex weights for the signal and its complex conjugate.
Attributes#
- alphacomplex number
A complex number specifying the \(\alpha\) parameter
- betacomplex number
A complex number specifying the \(\beta\) parameter
- class CFO(cfo: float, name: str = 'cfo_impairment')#
Apply Carrier Frequency Offset (CFO).
Signal Model#
\[y[n] = x[n] e^{j\omega_0 n}\]where :
\(\omega_0\) corresponds to the normalized carrier frequency offset (in rad/samples).
Attributes#
- cfofloat
the normalized carrier frequency offset
- class Delay(tau: int, pad_zeros: bool = True, name: str = 'delay_impairment')#
Introduces a delay to the input signal.
Signal Model#
\[y[n] = x[n - \tau]\]where :
\(\tau \in \mathbb{N}^+\) is the number of samples to delay the input signal (non-negative integer)
Attributes#
- tauint
The number of samples to delay the input signal.
- pad_zerosbool
If True, pads the delayed signal with zeros to match the input size.