def test_fir_filter_fcf_002(self):
     self.generate_fcf_source()
     expected_data = (
         (7.3052920925e-05 - 3.91741014028e-06j),
         (3.11913172482e-05 - 0.000109872074972j),
         (-0.000128646017401 - 3.49857727997e-05j), (-5.49546712136e-05 +
                                                     8.96326746442e-05j),
         (5.14321582159e-05 + 9.64698920143e-05j), (0.000120189361041 +
                                                    2.4231892894e-05j),
         (0.000100405508419 - 0.000223224604269j), (-0.000274751859251 -
                                                    2.33274622587e-05j),
         (1.52600114234e-06 + 0.000133301247843j), (3.77224641852e-05 +
                                                    5.29596509296e-05j),
         (-3.60160379387e-06 + 0.000247975171078j), (0.00113093166146 -
                                                     0.000663110695314j),
         (0.00059568521101 - 0.00099650840275j), (-0.000475480686873 +
                                                  0.000250602373853j),
         (0.000191397906747 + 0.000271986238658j), (0.000247183139436 -
                                                    0.000157510468853j),
         (-5.48357638763e-05 - 0.000113135029096j), (-0.00010601492977 -
                                                     0.00015005269961j),
         (-0.000204817260965 + 0.000160534662427j), (0.000114742244477 +
                                                     0.000205190313864j))
     src = gr.vector_source_f(self.src_data)
     op = filter.freq_xlating_fir_filter_fcf(4, self.taps, self.fc, self.fs)
     dst = gr.vector_sink_c()
     self.tb.connect(src, op, dst)
     self.tb.run()
     result_data = dst.data()
     self.assertComplexTuplesAlmostEqual(expected_data, result_data[-20:],
                                         5)
 def test_fir_filter_fcf_002(self):
     self.generate_fcf_source()
     expected_data = ((7.3052920925e-05-3.91741014028e-06j),
                      (3.11913172482e-05-0.000109872074972j),
                      (-0.000128646017401-3.49857727997e-05j),
                      (-5.49546712136e-05+8.96326746442e-05j),
                      (5.14321582159e-05+9.64698920143e-05j),
                      (0.000120189361041+2.4231892894e-05j),
                      (0.000100405508419-0.000223224604269j),
                      (-0.000274751859251-2.33274622587e-05j),
                      (1.52600114234e-06+0.000133301247843j),
                      (3.77224641852e-05+5.29596509296e-05j),
                      (-3.60160379387e-06+0.000247975171078j),
                      (0.00113093166146-0.000663110695314j),
                      (0.00059568521101-0.00099650840275j),
                      (-0.000475480686873+0.000250602373853j),
                      (0.000191397906747+0.000271986238658j),
                      (0.000247183139436-0.000157510468853j),
                      (-5.48357638763e-05-0.000113135029096j),
                      (-0.00010601492977-0.00015005269961j),
                      (-0.000204817260965+0.000160534662427j),
                      (0.000114742244477+0.000205190313864j))
     src = gr.vector_source_f(self.src_data)
     op  = filter.freq_xlating_fir_filter_fcf(4, self.taps, self.fc, self.fs)
     dst = gr.vector_sink_c()
     self.tb.connect(src, op, dst)
     self.tb.run()
     result_data = dst.data()
     self.assertComplexTuplesAlmostEqual(expected_data, result_data[-20:], 5)
 def test_fir_filter_fcf_001(self):
     self.generate_fcf_source()
     expected_data = (
         (0.000247188087087 - 0.000157509770361j),
         (-0.000155229790835 - 0.000246197130764j),
         (-0.000264906557277 + 0.000174603672349j), (6.99016964063e-05 +
                                                     0.000174961372977j),
         (-5.48477692064e-05 - 0.0001131295503j), (-0.000237467131228 +
                                                   0.000118011368613j),
         (0.000136614587973 + 0.000229531884543j), (0.000229347482673 -
                                                    0.000166581812664j),
         (-0.000106010869786 - 0.000150042149471j), (2.92293734674e-05 +
                                                     0.000142060467624j),
         (0.000228707227507 - 9.30760797928e-05j), (-0.000124306126963 -
                                                    0.000216641055886j),
         (-0.000204823678359 + 0.00016052465071j), (0.00012825592421 +
                                                    0.000133123627165j),
         (-1.18284006021e-05 - 0.000159015646204j), (-0.000219973371713 +
                                                     7.5438656495e-05j),
         (0.000114713984658 + 0.000205190401175j), (0.000185727752978 -
                                                    0.000154630601173j),
         (-0.000141745767905 - 0.000120098840853j), (-3.9850056055e-07 +
                                                     0.000168364742422j))
     src = gr.vector_source_f(self.src_data)
     op = filter.freq_xlating_fir_filter_fcf(1, self.taps, self.fc, self.fs)
     dst = gr.vector_sink_c()
     self.tb.connect(src, op, dst)
     self.tb.run()
     result_data = dst.data()
     self.assertComplexTuplesAlmostEqual(expected_data, result_data[-20:],
                                         5)
 def test_fir_filter_fcf_001(self):
     self.generate_fcf_source()
     expected_data = ((0.000247188087087-0.000157509770361j),
                      (-0.000155229790835-0.000246197130764j),
                      (-0.000264906557277+0.000174603672349j),
                      (6.99016964063e-05+0.000174961372977j),
                      (-5.48477692064e-05-0.0001131295503j),
                      (-0.000237467131228+0.000118011368613j),
                      (0.000136614587973+0.000229531884543j),
                      (0.000229347482673-0.000166581812664j),
                      (-0.000106010869786-0.000150042149471j),
                      (2.92293734674e-05+0.000142060467624j),
                      (0.000228707227507-9.30760797928e-05j),
                      (-0.000124306126963-0.000216641055886j),
                      (-0.000204823678359+0.00016052465071j),
                      (0.00012825592421+0.000133123627165j),
                      (-1.18284006021e-05-0.000159015646204j),
                      (-0.000219973371713+7.5438656495e-05j),
                      (0.000114713984658+0.000205190401175j),
                      (0.000185727752978-0.000154630601173j),
                      (-0.000141745767905-0.000120098840853j),
                      (-3.9850056055e-07+0.000168364742422j))
     src = gr.vector_source_f(self.src_data)
     op  = filter.freq_xlating_fir_filter_fcf(1, self.taps, self.fc, self.fs)
     dst = gr.vector_sink_c()
     self.tb.connect(src, op, dst)
     self.tb.run()
     result_data = dst.data()
     self.assertComplexTuplesAlmostEqual(expected_data, result_data[-20:], 5)