From b821bd80132eaa6e7132508d0e12787db45f4f16 Mon Sep 17 00:00:00 2001 From: andreas128 Date: Sat, 23 Sep 2017 20:31:47 +0200 Subject: Move constants to const.py --- dpd/src/Agc.py | 6 +++--- dpd/src/TX_Agc.py | 17 +++++++---------- dpd/src/const.py | 10 ++++++++++ 3 files changed, 20 insertions(+), 13 deletions(-) (limited to 'dpd/src') diff --git a/dpd/src/Agc.py b/dpd/src/Agc.py index b83c91e..670fbbb 100644 --- a/dpd/src/Agc.py +++ b/dpd/src/Agc.py @@ -35,14 +35,14 @@ class Agc: received signal fulfills our desired property, of having all amplitudes properly quantized.""" - def __init__(self, measure, adapt, min_rxgain=25, peak_to_median=20): + def __init__(self, measure, adapt, c): assert isinstance(measure, Measure.Measure) assert isinstance(adapt, Adapt.Adapt) self.measure = measure self.adapt = adapt - self.min_rxgain = min_rxgain + self.min_rxgain = c.RAGC_min_rxgain self.rxgain = self.min_rxgain - self.peak_to_median = peak_to_median + self.peak_to_median = 1./c.RAGC_rx_median_target def run(self): self.adapt.set_rxgain(self.rxgain) diff --git a/dpd/src/TX_Agc.py b/dpd/src/TX_Agc.py index affc42f..b9226b2 100644 --- a/dpd/src/TX_Agc.py +++ b/dpd/src/TX_Agc.py @@ -24,10 +24,7 @@ import src.Adapt as Adapt class TX_Agc: def __init__(self, adapt, - max_txgain=89, - tx_median_target=0.16, - tx_median_threshold_max=0.18, - tx_median_threshold_min=0.14): + c): """ In order to avoid digital clipping, this class increases the TX gain and reduces the digital gain. Digital clipping happens @@ -47,16 +44,16 @@ class TX_Agc: :param tx_median_target: The digital gain is reduced in a way that the median TX value is expected to be lower than this value. """ + + assert isinstance(adapt, Adapt.Adapt) self.adapt = adapt - self.max_txgain = max_txgain + self.max_txgain = c.TAGC_max_txgain self.txgain = self.max_txgain - assert tx_median_threshold_max > tx_median_target,\ - "The tolerated tx_median has to be larger then the goal tx_median" - self.tx_median_threshold_tolerate_max = tx_median_threshold_max - self.tx_median_threshold_tolerate_min = tx_median_threshold_min - self.tx_median_target = tx_median_target + self.tx_median_threshold_tolerate_max = c.TAGC_tx_median_max + self.tx_median_threshold_tolerate_min = c.TAGC_tx_median_min + self.tx_median_target = c.TAGC_tx_median_target def adapt_if_necessary(self, tx): tx_median = np.median(np.abs(tx)) diff --git a/dpd/src/const.py b/dpd/src/const.py index c7f4b7c..63a095b 100644 --- a/dpd/src/const.py +++ b/dpd/src/const.py @@ -43,6 +43,16 @@ class const: self.ES_n_bins = 64 self.ES_n_per_bin = 128 + # Constants for TX_Agc + self.TAGC_max_txgain = 89 + self.TAGC_tx_median_target = 0.1 + self.TAGC_tx_median_max = self.TAGC_tx_median_target*1.4 + self.TAGC_tx_median_min = self.TAGC_tx_median_target/1.4 + + # Constants for Agc + self.RAGC_min_rxgain = 25 + self.RAGC_rx_median_target = self.TAGC_tx_median_target + # Constants for Model_PM self.MPM_tx_min = 0.1 -- cgit v1.2.3