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)
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)
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))