sdr.ebn0_to_esn0(ebn0: ArrayLike, bps: int, rate: int = 1) NDArray[float_]

Converts from Eb/N0 to Es/N0.

EsN0=EbN0knlog2M

Parameters:
ebn0: ArrayLike

Bit energy Eb to noise PSD N0 ratio in dB.

bps: int

Bits per symbol log2M, where M is the modulation order.

rate: int = 1

Code rate r=k/n, where k is the number of information bits and n is the number of coded bits.

Returns:

The symbol energy Es to noise PSD N0 ratio in dB.

Examples

Convert from Eb/N0=5 dB to Es/N0 for a 4-QAM signal with r=2/3.

In [1]: sdr.ebn0_to_esn0(5, 2, rate=2/3)
Out[1]: 6.249387366082999

Convert from Eb/N0=10 dB to Es/N0 for a 16-QAM signal with r=1.

In [2]: sdr.ebn0_to_esn0(10, 4, rate=1)
Out[2]: 16.020599913279625