Exemplo n.º 1
0
 def test_dechannelizetask_real(self):
     """Test dechannelization round-tripping."""
     ct = Channelize(self.fh_freq, self.n)
     dt = Dechannelize(ct, self.n, dtype=self.fh.dtype)
     nrec = (self.fh.shape[0] // self.n) * self.n
     assert dt.shape == (nrec,) + self.fh.shape[1:]
     data = dt.read()
     # Note: round-trip is not perfect due to rounding errors.
     assert np.allclose(data, self.raw_data[:nrec], atol=1.e-5)
     assert np.all(dt.frequency == self.fh_freq.frequency)
     assert np.all(dt.sideband == self.fh_freq.sideband)
     # Check class method
     dt2 = ct.inverse(ct)
     data2 = dt2.read()
     assert np.all(data2 == data)
Exemplo n.º 2
0
 def test_dechannelizetask_complex(self):
     """Test dechannelization round-tripping."""
     fh = self.fh_freq
     raw_data = fh.read()
     ct = Channelize(fh, self.n)
     dt = Dechannelize(ct)
     nrec = (fh.shape[0] // self.n) * self.n
     assert dt.shape == (nrec,) + fh.shape[1:]
     data = dt.read()
     # Note: round-trip is not perfect due to rounding errors.
     assert np.allclose(data, raw_data[:nrec], atol=1.e-5)
     assert np.all(dt.frequency == fh.frequency)
     assert np.all(dt.sideband == fh.sideband)
     # Check class method
     dt2 = ct.inverse(ct)
     data2 = dt2.read()
     assert np.all(data2 == data)
     # Check inverse inverse as well.
     ct2 = dt2.inverse(fh)
     ct.seek(0)
     ft = ct.read()
     ft2 = ct2.read()
     assert np.all(ft == ft2)
     dt2.close()