Simulation

Channel models

sdr.bsc(x: ArrayLike, p: float) ndarray

Passes the binary input sequence \(x\) through a binary symmetric channel (BSC) with transition probability \(p\).

sdr.bec(x: ArrayLike, p: float) ndarray

Passes the binary input sequence \(x\) through a binary erasure channel (BEC) with erasure probability \(p\).

sdr.dmc(x: ArrayLike, P: ArrayLike, ...) ndarray

Passes the input sequence \(x\) through a discrete memoryless channel (DMC) with transition probability matrix \(P\).

Signal impairments

sdr.awgn(x: ArrayLike, snr: float | None = None, ...) ndarray

Adds additive white Gaussian noise (AWGN) to the time-domain signal \(x[n]\).

sdr.iq_imbalance(x: ArrayLike, amplitude: float, ...) ndarray

Applies IQ imbalance to the complex time-domain signal \(x[n]\).

sdr.sample_rate_offset(x: ArrayLike, ppm: float) ndarray

Applies a sample rate offset to the time-domain signal \(x[n]\).

sdr.frequency_offset(x: ArrayLike, freq: ArrayLike, ...) ndarray

Applies a frequency and phase offset to the time-domain signal \(x[n]\).


Last update: Jul 27, 2023