def test_load_vis_nested(self): # duplicated testing from firstcal.UVData_to_dict filename1 = os.path.join(DATA_PATH, 'zen.2458043.12552.xx.HH.uvORA') filename2 = os.path.join(DATA_PATH, 'zen.2458043.13298.xx.HH.uvORA') uvd1 = UVData() uvd1.read_miriad(filename1) uvd2 = UVData() uvd2.read_miriad(filename2) if uvd1.phase_type != 'drift': uvd1.unphase_to_drift() if uvd2.phase_type != 'drift': uvd2.unphase_to_drift() uvd = uvd1 + uvd2 d, f = io.load_vis([uvd1, uvd2], nested_dict=True) for i, j in d: for pol in d[i, j]: uvpol = list(uvd1.polarization_array).index(polstr2num(pol, x_orientation=uvd1.x_orientation)) uvmask = np.all( np.array(list(zip(uvd.ant_1_array, uvd.ant_2_array))) == [i, j], axis=1) np.testing.assert_equal(d[i, j][pol], np.resize( uvd.data_array[uvmask][:, 0, :, uvpol], d[i, j][pol].shape)) np.testing.assert_equal(f[i, j][pol], np.resize( uvd.flag_array[uvmask][:, 0, :, uvpol], f[i, j][pol].shape)) d, f = io.load_vis([filename1, filename2], nested_dict=True) for i, j in d: for pol in d[i, j]: uvpol = list(uvd.polarization_array).index(polstr2num(pol, x_orientation=uvd.x_orientation)) uvmask = np.all( np.array(list(zip(uvd.ant_1_array, uvd.ant_2_array))) == [i, j], axis=1) np.testing.assert_equal(d[i, j][pol], np.resize( uvd.data_array[uvmask][:, 0, :, uvpol], d[i, j][pol].shape)) np.testing.assert_equal(f[i, j][pol], np.resize( uvd.flag_array[uvmask][:, 0, :, uvpol], f[i, j][pol].shape)) uvd = UVData() uvd.read_miriad(filename1) assert len(io.load_vis([uvd], nested_dict=True)[0]) == uvd.Nbls # reorder baseline array uvd.baseline_array = uvd.baseline_array[np.argsort(uvd.baseline_array)] assert len(io.load_vis(filename1, nested_dict=True)[0]) == uvd.Nbls
def setUp(self): # Load pre-computed power spectra self.filepath = os.path.join(DATA_PATH, "uvp_data.h5") pc = hp.container.PSpecContainer(self.filepath, mode='r') self.uvp = pc.get_pspec("IDR2_1")[0] # Load example UVData self.datafile = os.path.join(DATA_PATH, "zen.odd.xx.LST.1.28828.uvOCRSA") self.uvd = UVData() self.uvd.read_miriad(self.datafile)