comnum.amp_thresholds#

comnum.amp_thresholds(constellation, *, px=None, real=False)#

The recovery thresholds of LAMA (Jeon et al. 2018, Table II): below beta_min LAMA is optimal at every SNR, below beta_max it recovers the noiseless signal; n0_min and n0_max are the critical noise variances at those ratios.

Parameters:
  • constellation (Constellation) – the alphabet.

  • px (array_like, optional) – prior probabilities of the points (uniform by default).

  • real (bool) – a real model.

Returns:

beta_min, beta_max, n0_min and n0_max.

Return type:

dict

Raises:

ValueError – for an input that is not an array of numbers of the expected shape.

Examples

>>> import comnum
>>> t = comnum.amp_thresholds(comnum.Constellation("qam", 16).normalized())
>>> round(t["beta_min"], 3), round(t["beta_max"], 3)
(0.983, 1.363)