def test_scales_right_not_rebined(self) : DataCopy = copy.deepcopy(self.Data) calibrate.multiply_by_cal(self.Data, self.CalData) gains = sp.array([1,sp.sqrt(5),sp.sqrt(5),5]) gains.shape = (1,4,1,1) self.assertTrue(ma.allclose(DataCopy.data*gains*DataCopy.freq, self.Data.data))
def test_rebinned_cal(self) : rebin_freq.rebin(self.CalData, 1.0) DataCopy = copy.deepcopy(self.Data) DataCopy.calc_freq() calibrate.multiply_by_cal(self.Data, self.CalData) gains = sp.array([1,sp.sqrt(5),sp.sqrt(5),5]) gains.shape = (1,4,1,1) expected = (DataCopy.data*gains*DataCopy.freq) self.assertTrue(ma.count_masked(self.Data.data < sp.size(self.Data.data)*50.0/2000.0)) expected.mask = sp.array(self.Data.data.mask) self.assertTrue(ma.allclose(expected, self.Data.data, 4))
def test_scales_rebined(self) : self.Data.set_data(ma.ones((10,4,2,600))) self.Data.verify() rebin_freq.rebin(self.Data, 1.0) DataCopy = copy.deepcopy(self.Data) DataCopy.calc_freq() calibrate.multiply_by_cal(self.Data, self.CalData) gains = sp.array([1,sp.sqrt(5),sp.sqrt(5),5]) gains.shape = (1,4,1,1) expected = (DataCopy.data*gains*DataCopy.freq) # don't expect this test to be perfect, 4 figures good enough. Edge # bins adversly affected by missing frequencies in CalData. self.assertTrue(ma.allclose(expected[:,:,:1:-1], self.Data.data[:,:,:1:-1], 4))
def test_runs_no_errors(self) : calibrate.multiply_by_cal(self.Data, self.CalData)