From 5725a31cf65974b28c076a22460df058a581192a Mon Sep 17 00:00:00 2001 From: Roman Zeyde Date: Fri, 29 Aug 2014 18:35:13 +0300 Subject: [PATCH] fix handling 1d constellation --- amodem/dsp.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/amodem/dsp.py b/amodem/dsp.py index 68e0b21..99609b0 100644 --- a/amodem/dsp.py +++ b/amodem/dsp.py @@ -83,8 +83,10 @@ class QAM(object): reals = np.array(list(sorted(set(symbols.real)))) imags = np.array(list(sorted(set(symbols.imag)))) - self.real_factor = 1.0 / np.mean(np.diff(reals)) - self.imag_factor = 1.0 / np.mean(np.diff(imags)) + + _mean = lambda u: float(sum(u))/len(u) if len(u) else 1.0 + self.real_factor = 1.0 / _mean(np.diff(reals)) + self.imag_factor = 1.0 / _mean(np.diff(imags)) self.bias = reals[0] + 1j * imags[0] self.symbols_map = {}