Channels#
- class AWGN(value: float = 1.0, unit: Literal['sigma2', 'snr', 'snr_dB', 'snr_dBm'] = 'sigma2', sigma2s: float = 1.0, sigma2s_method: Literal['fixed', 'measured'] = 'fixed', seed: int = None, name: str = 'awgn')#
Additive White Gaussian Noise (AWGN) channel.
This class models an AWGN channel, which adds complex Gaussian noise to a signal. It is characterized by a noise power specified by sigma squared (sigma2).
Signal Model#
\[y_u[n] = x_u[n] + b_u[n]\]where:
\(b[n]\sim \mathcal{N}(0, \sigma^2)\) is a Gaussian additive noise.
For complex signals, a circular Gaussian noise is applied to the signal. The value of \(\sigma^2\) is computed with respect to the method specified as input.
Attributes#
- valuefloat, optional
The value associated with the given method. Default is 1.
- unitLiteral[“sigma2”, “snr”, “snr_dB”, “snr_dBm”], optional
The unit to compute the noise power. Default is
"sigma2".- sigma2sfloat, optional
Signal power. Default is 1.
- sigma2s_methodLiteral[“fixed”, “measured”], optional
Method used to obtain the signal power. If
"measured", the signal power is estimated from the input signal. Default is"fixed".- seedint, optional
The seed for the noise generator. Default is None.
- namestr, optional
Name of the channel instance. Default is
"awgn".
- class FIRChannel(h: array, mode: Literal['full', 'same', 'valid'] = 'full', is_mimo: bool = False, name: str = 'fir')#
Finite Impulse Response (FIR) channel with given impulse response.
Signal Model#
The output signal \(y[n]\) is computed as the convolution of the input signal \(x[n]\) with the impulse response \(h[l]\):
\[y[n] = \sum_{l=0}^{L-1} h[l] x[n-l]\]where:
\(h[l]\) is the impulse response of the channel.
\(L\) is the length of the impulse response.
Attributes#
- hnp.ndarray
The impulse response of the FIR channel. Should be a 1-dimensional numpy array.
- modeLiteral[“full”, “same”, “valid”], optional
Convolution mode passed to
scipy.signal.convolve. Default is"full".- is_mimobool, optional
Whether the channel supports MIMO input. Default is False.
- namestr, optional
The name of the channel instance. Default is
"fir".