예제 #1
0
 def test_003_real_part(self):
     data = np.random.random(20).view(complex)
     
     src = blocks.vector_source_c(data)
     blk = numexpr_evaluate('real(in0)', out_sig=(np.float32,))
     snk = blocks.vector_sink_f()
     
     tb = gr.top_block()
     tb.connect(src, blk, snk)
     tb.run()
     
     np.testing.assert_allclose(snk.data(), data.real)
예제 #2
0
 def test_001_copy(self):
     data = np.random.random(20).view(complex)
     
     src = blocks.vector_source_c(data)
     blk = numexpr_evaluate(expression='in0')
     snk = blocks.vector_sink_c()
     
     tb = gr.top_block()
     tb.connect(src, blk, snk)
     tb.run()
     
     np.testing.assert_allclose(snk.data(), data)
예제 #3
0
 def test_002_adder(self):
     data = np.random.random(60).view(complex).reshape((3,-1))
     
     src = [blocks.vector_source_c(d) for d in data]
     blk = numexpr_evaluate('in0+in1+in2', in_sig=(np.complex64,) * 3)
     snk = blocks.vector_sink_c()
     
     tb = gr.top_block()
     for i, source in enumerate(src):
         tb.connect((source, 0), (blk, i))
     tb.connect(blk, snk)
     tb.run()
     
     np.testing.assert_allclose(snk.data(), data.sum(0))