From 306f5ac8c75d3946d0d43e45754df9d98433a1ee Mon Sep 17 00:00:00 2001 From: sara Date: Sat, 20 Nov 2021 16:19:36 +0100 Subject: FIR filter eigerner Block angefangen --- simulation/QAM_Fading/qam_fading.py | 84 ++++++------------------------------- 1 file changed, 12 insertions(+), 72 deletions(-) (limited to 'simulation/QAM_Fading/qam_fading.py') diff --git a/simulation/QAM_Fading/qam_fading.py b/simulation/QAM_Fading/qam_fading.py index f8c72b1..ac1106c 100755 --- a/simulation/QAM_Fading/qam_fading.py +++ b/simulation/QAM_Fading/qam_fading.py @@ -87,16 +87,12 @@ class qam_fading(gr.top_block, Qt.QWidget): self.phase_bw = phase_bw = 2 * 3.141592653589793 / 100 self.noise_volt = noise_volt = 0.0001 self.freq_offset = freq_offset = 0 - self.fading_3 = fading_3 = 0 - self.fading_2 = fading_2 = 0 self.fading_1 = fading_1 = 2 self.eq_ntaps = eq_ntaps = 15 self.eq_mod = eq_mod = 1 self.eq_gain = eq_gain = .01 self.const = const = digital.constellation_16qam().base() self.chn_taps = chn_taps = [1.0 + 0.0j, ] - self.amp_3 = amp_3 = 0 - self.amp_2 = amp_2 = 0 self.amp_1 = amp_1 = 0.2 self.LOS_NLOS = LOS_NLOS = 1 @@ -172,20 +168,6 @@ class qam_fading(gr.top_block, Qt.QWidget): self.params_grid_layout_0.setRowStretch(r, 1) for c in range(0, 1): self.params_grid_layout_0.setColumnStretch(c, 1) - self._fading_2_range = Range(0, 30, 1, 0, 200) - self._fading_2_win = RangeWidget(self._fading_2_range, self.set_fading_2, 'Fading 2', "counter_slider", int) - self.params_grid_layout_2.addWidget(self._fading_2_win, 2, 0, 1, 1) - for r in range(2, 3): - self.params_grid_layout_2.setRowStretch(r, 1) - for c in range(0, 1): - self.params_grid_layout_2.setColumnStretch(c, 1) - self._fading_1_range = Range(1, 30, 1, 2, 200) - self._fading_1_win = RangeWidget(self._fading_1_range, self.set_fading_1, 'Fading', "counter_slider", int) - self.params_grid_layout_2.addWidget(self._fading_1_win, 1, 0, 1, 1) - for r in range(1, 2): - self.params_grid_layout_2.setRowStretch(r, 1) - for c in range(0, 1): - self.params_grid_layout_2.setColumnStretch(c, 1) self._eq_gain_range = Range(0, .1, .001, .01, 200) self._eq_gain_win = RangeWidget(self._eq_gain_range, self.set_eq_gain, 'Equalizer Rate', "counter_slider", float) self.params_grid_layout_1.addWidget(self._eq_gain_win, 0, 0, 1, 1) @@ -193,25 +175,11 @@ class qam_fading(gr.top_block, Qt.QWidget): self.params_grid_layout_1.setRowStretch(r, 1) for c in range(0, 1): self.params_grid_layout_1.setColumnStretch(c, 1) - self._amp_2_range = Range(0, 5, 0.1, 0, 200) - self._amp_2_win = RangeWidget(self._amp_2_range, self.set_amp_2, 'Ampliude 2', "counter_slider", float) - self.params_grid_layout_2.addWidget(self._amp_2_win, 2, 1, 1, 1) - for r in range(2, 3): - self.params_grid_layout_2.setRowStretch(r, 1) - for c in range(1, 2): - self.params_grid_layout_2.setColumnStretch(c, 1) self._amp_1_range = Range(0, 5, 0.1, 0.2, 200) self._amp_1_win = RangeWidget(self._amp_1_range, self.set_amp_1, 'Ampliude', "counter_slider", float) - self.params_grid_layout_2.addWidget(self._amp_1_win, 1, 1, 1, 1) + self.params_grid_layout_2.addWidget(self._amp_1_win, 1, 0, 1, 1) for r in range(1, 2): self.params_grid_layout_2.setRowStretch(r, 1) - for c in range(1, 2): - self.params_grid_layout_2.setColumnStretch(c, 1) - self._LOS_NLOS_range = Range(0, 1, 1, 1, 200) - self._LOS_NLOS_win = RangeWidget(self._LOS_NLOS_range, self.set_LOS_NLOS, 'LOS_NLOS', "counter_slider", int) - self.params_grid_layout_2.addWidget(self._LOS_NLOS_win, 0, 0, 1, 1) - for r in range(0, 1): - self.params_grid_layout_2.setRowStretch(r, 1) for c in range(0, 1): self.params_grid_layout_2.setColumnStretch(c, 1) self.qtgui_time_sink_x_0 = qtgui.time_sink_f( @@ -530,12 +498,12 @@ class qam_fading(gr.top_block, Qt.QWidget): self.plots_grid_layout_0.setRowStretch(r, 1) for c in range(0, 1): self.plots_grid_layout_0.setColumnStretch(c, 1) - self.interp_fir_filter_xxx_0 = filter.interp_fir_filter_ccc(1, [LOS_NLOS]+(([0]*fading_1)+[amp_1])+(([0]*fading_2)+[amp_2])) - self.interp_fir_filter_xxx_0.declare_sample_delay(0) - self._fading_3_range = Range(0, 30, 1, 0, 200) - self._fading_3_win = RangeWidget(self._fading_3_range, self.set_fading_3, 'Fading 3', "counter_slider", int) - self.params_grid_layout_2.addWidget(self._fading_3_win, 3, 0, 1, 1) - for r in range(3, 4): + self.interp_fir_filter_xxx_0 = filter.interp_fir_filter_ccc(1, [amp_1]) + self.interp_fir_filter_xxx_0.declare_sample_delay(2) + self._fading_1_range = Range(1, 30, 1, 2, 200) + self._fading_1_win = RangeWidget(self._fading_1_range, self.set_fading_1, 'Fading', "counter_slider", int) + self.params_grid_layout_2.addWidget(self._fading_1_win, 0, 0, 1, 1) + for r in range(0, 1): self.params_grid_layout_2.setRowStretch(r, 1) for c in range(0, 1): self.params_grid_layout_2.setColumnStretch(c, 1) @@ -575,10 +543,10 @@ class qam_fading(gr.top_block, Qt.QWidget): self.blocks_char_to_float_0_0 = blocks.char_to_float(1, 1) self.blocks_char_to_float_0 = blocks.char_to_float(1, 1) self.analog_random_source_x_0 = blocks.vector_source_b(list(map(int, numpy.random.randint(0, 256, 1000))), True) - self._amp_3_range = Range(0, 5, 0.1, 0, 200) - self._amp_3_win = RangeWidget(self._amp_3_range, self.set_amp_3, 'Ampliude 3', "counter_slider", float) - self.params_grid_layout_2.addWidget(self._amp_3_win, 3, 1, 1, 1) - for r in range(3, 4): + self._LOS_NLOS_range = Range(0, 1, 1, 1, 200) + self._LOS_NLOS_win = RangeWidget(self._LOS_NLOS_range, self.set_LOS_NLOS, 'LOS_NLOS', "counter_slider", int) + self.params_grid_layout_2.addWidget(self._LOS_NLOS_win, 0, 1, 1, 1) + for r in range(0, 1): self.params_grid_layout_2.setRowStretch(r, 1) for c in range(1, 2): self.params_grid_layout_2.setColumnStretch(c, 1) @@ -709,25 +677,11 @@ class qam_fading(gr.top_block, Qt.QWidget): self.freq_offset = freq_offset self.channels_channel_model_0.set_frequency_offset(self.freq_offset) - def get_fading_3(self): - return self.fading_3 - - def set_fading_3(self, fading_3): - self.fading_3 = fading_3 - - def get_fading_2(self): - return self.fading_2 - - def set_fading_2(self, fading_2): - self.fading_2 = fading_2 - self.interp_fir_filter_xxx_0.set_taps([self.LOS_NLOS]+(([0]*self.fading_1)+[self.amp_1])+(([0]*self.fading_2)+[self.amp_2])) - def get_fading_1(self): return self.fading_1 def set_fading_1(self, fading_1): self.fading_1 = fading_1 - self.interp_fir_filter_xxx_0.set_taps([self.LOS_NLOS]+(([0]*self.fading_1)+[self.amp_1])+(([0]*self.fading_2)+[self.amp_2])) def get_eq_ntaps(self): return self.eq_ntaps @@ -764,32 +718,18 @@ class qam_fading(gr.top_block, Qt.QWidget): self.chn_taps = chn_taps self.channels_channel_model_0.set_taps(self.chn_taps) - def get_amp_3(self): - return self.amp_3 - - def set_amp_3(self, amp_3): - self.amp_3 = amp_3 - - def get_amp_2(self): - return self.amp_2 - - def set_amp_2(self, amp_2): - self.amp_2 = amp_2 - self.interp_fir_filter_xxx_0.set_taps([self.LOS_NLOS]+(([0]*self.fading_1)+[self.amp_1])+(([0]*self.fading_2)+[self.amp_2])) - def get_amp_1(self): return self.amp_1 def set_amp_1(self, amp_1): self.amp_1 = amp_1 - self.interp_fir_filter_xxx_0.set_taps([self.LOS_NLOS]+(([0]*self.fading_1)+[self.amp_1])+(([0]*self.fading_2)+[self.amp_2])) + self.interp_fir_filter_xxx_0.set_taps([self.amp_1]) def get_LOS_NLOS(self): return self.LOS_NLOS def set_LOS_NLOS(self, LOS_NLOS): self.LOS_NLOS = LOS_NLOS - self.interp_fir_filter_xxx_0.set_taps([self.LOS_NLOS]+(([0]*self.fading_1)+[self.amp_1])+(([0]*self.fading_2)+[self.amp_2])) -- cgit v1.2.1