qampy.theory#

Functions for calculating analytic properties of communication signals.

Functions

ber_vs_es_over_n0_qam(snr, M)

Bit-error-rate vs signal to noise ratio after formula in _[1].

ber_vs_evm_qam(evm_dB, M)

Calculate the bit-error-rate for a M-QAM signal as a function of EVM.

bin2gray(value)

Convert a binary value to an gray coded value see _[1].

cal_gmi(M, snr[, N])

Calculate the soft-decision GMI for a given modulation format based on a Monte-Carlo method.

cal_ps_probablts(symbols, nu)

Calculate probabilities for probabilistic constellation shaping of symbols

cal_scaling_factor_qam(M)

Calculate the scaling factor for normalising MQAM symbols to 1 average Power

cal_symbols_cross_qam(M)

Generate the symbols on the constellation diagram for non-square (cross) M-QAM

cal_symbols_psk(M)

Generate M-PSK symbols

cal_symbols_qam(M)

Generate the symbols on the constellation diagram for M-QAM

cal_symbols_square_qam(M)

Generate the symbols on the constellation diagram for square M-QAM

dB2lin(x)

Convert input from dB(m) units to linear units

generate_ps_symbols(N, symbs, px[, normalize])

Generate a set of probabilistically shaped symbols

gray_code_qam(M)

Generate gray code map for M-QAM constellations

hybrid_qam_ber_vs_esn0(snr, pr, fr, M1, M2)

Calculate bit error rate as function of SNR for time-domain hybrid QAM (according to _[1]).

q_function(x)

The Q function is the tail probability of the standard normal distribution see _[1,2] for a definition and its relation to the erfc.

ser_vs_es_over_n0_4pam(snr)

Calculate the symbol error rate (SER) of an 4-PAM signal as a function of Es/N0 (Symbol energy over noise energy, given in linear units

ser_vs_es_over_n0_psk(snr, M)

Calculate the symbol error rate (SER) of an M-PSK signal as a function of Es/N0 (Symbol energy over noise energy, given in linear units

ser_vs_es_over_n0_qam(snr, M)

Calculate the symbol error rate (SER) of an M-QAM signal as a function of Es/N0 (Symbol energy over noise energy, given in linear units.

sim_mi_mc(symbols, snr, N)

Perform Monte-Carlo simulations of AWGN Mutual Information.