pub fn ser(sf: u32, snr_db: f64) -> Result<f64>Expand description
The exact SER of the noncoherent receiver over AWGN at the SNR per sample snr_db
(dB), spreading factor sf (see the module): the SER of $M$ orthogonal signals
(comnum_mapping::theory::ser_orthogonal_noncoherent) at $E_{s}/N_{0} = M\rho$.
§Errors
comnum_core::Error::Config unless the spreading factor lies in 1..=16.
§Examples
use comnum_waveform::css::theory::ser;
// SF 7: 1.6e-3 at -8 dB and 1.4e-4 at -7 dB (Fig. 2 of Afisiadis et al. 2020)
assert!((ser(7, -8.0)? / 1.61e-3 - 1.0).abs() < 0.01);
assert!((ser(7, -7.0)? / 1.43e-4 - 1.0).abs() < 0.01);