def test_iir_direct_005(self): src_data = (1, 2, 3, 4, 5, 6, 7, 8) fftaps = (2, 11, 0) fbtaps = (0, -1, 3) expected_result = (2, 13, 21, 59, 58, 186, 68, 583) src = gr.vector_source_f(src_data) op = filter.iir_filter_ffd(fftaps, fbtaps) dst = gr.vector_sink_f() self.tb.connect(src, op) self.tb.connect(op, dst) self.tb.run() result_data = dst.data() self.assertFloatTuplesAlmostEqual(expected_result, result_data)
def test_iir_direct_003(self): src_data = (1, 2, 3, 4, 5, 6, 7, 8) fftaps = (2, 11) fbtaps = (0, 0) expected_result = (2, 15, 28, 41, 54, 67, 80, 93) src = gr.vector_source_f(src_data) op = filter.iir_filter_ffd(fftaps, fbtaps) dst = gr.vector_sink_f() self.tb.connect(src, op) self.tb.connect(op, dst) self.tb.run() result_data = dst.data() self.assertFloatTuplesAlmostEqual(expected_result, result_data)
def test_iir_direct_002(self): src_data = (1, 2, 3, 4, 5, 6, 7, 8) fftaps = (2,) fbtaps = (0,) expected_result = (2, 4, 6, 8, 10, 12, 14, 16) src = blocks.vector_source_f(src_data) op = filter.iir_filter_ffd(fftaps, fbtaps) dst = blocks.vector_sink_f() self.tb.connect(src, op) self.tb.connect(op, dst) self.tb.run() result_data = dst.data() self.assertFloatTuplesAlmostEqual(expected_result, result_data)
def test_iir_direct_008(self): src_data = (1, 2, 3, 4, 5, 6, 7, 8) expected_result = (2,4,4,10,18,14,26,56) fftaps = (2,) fbtaps = (0, 1) src = gr.vector_source_f(src_data) op = filter.iir_filter_ffd(fftaps, fbtaps) fftaps_data = (1) fbtaps = (0,0, -1,3) op.set_taps(fftaps, fbtaps) dst = gr.vector_sink_f() self.tb.connect(src, op) self.tb.connect(op, dst) self.tb.run() result_data = dst.data() self.assertFloatTuplesAlmostEqual (expected_result, result_data)
def test_iir_direct_008(self): src_data = (1, 2, 3, 4, 5, 6, 7, 8) expected_result = (2, 4, 4, 10, 18, 14, 26, 56) fftaps = (2, ) fbtaps = (0, 1) src = gr.vector_source_f(src_data) op = filter.iir_filter_ffd(fftaps, fbtaps) fftaps_data = (1) fbtaps = (0, 0, -1, 3) op.set_taps(fftaps, fbtaps) dst = gr.vector_sink_f() self.tb.connect(src, op) self.tb.connect(op, dst) self.tb.run() result_data = dst.data() self.assertFloatTuplesAlmostEqual(expected_result, result_data)
def test_iir_direct_007(self): src_data = (1, 2, 3, 4, 5, 6, 7, 8) expected_result = (2,2,5,5,8,8,11,11) fftaps = (2, 1) fbtaps = (0, -1) src = gr.vector_source_f(src_data) op = filter.iir_filter_ffd(fftaps, fbtaps) fftaps = (2,0,1) fbtaps = (0, -1) op.fftaps = fftaps op.fbtaps = fbtaps dst = gr.vector_sink_f() self.tb.connect(src, op) self.tb.connect(op, dst) self.tb.run() result_data = dst.data() self.assertFloatTuplesAlmostEqual(expected_result, result_data)