def setUp(self): self.datafile = '../data/zen.2456865.60537.xy.uvcRREAA' if not os.path.exists(self.datafile): raise (IOError, 'miriad file not found') self.miriad_uv = UVData() self.uvfits_uv = UVData() self.test_file_directory = '../data/test/'
def test_ReadFHD(self): fhd_uv = UVData() uvfits_uv = UVData() fhd_uv.read(self.testfiles, 'fhd') fhd_uv.write(op.join(self.test_file_directory, 'outtest_FHD_1061316296.uvfits'), spoof_nonessential=True) uvfits_uv.read( op.join(self.test_file_directory, 'outtest_FHD_1061316296.uvfits'), 'uvfits') self.assertEqual(fhd_uv, uvfits_uv) # Try various cases of incomplete file lists self.assertRaises(StandardError, fhd_uv.read, self.testfiles[1:], 'fhd') # Missing flags subfiles = [ item for sublist in [self.testfiles[0:2], self.testfiles[3:]] for item in sublist ] self.assertRaises(StandardError, fhd_uv.read, subfiles, 'fhd') # Missing params self.assertRaises(StandardError, fhd_uv.read, ['foo'], 'fhd') # No data files self.assertTrue(fhd_uv.read(self.testfiles[:-1], 'fhd')) # missing settings self.assertEqual(fhd_uv.history.value, '') # Check empty history with no settings del (fhd_uv) del (uvfits_uv)
def test_readwriteread(self): testfile = '../data/day2_TDEM0003_10s_norx_1src_1spw.uvfits' uv_in = UVData() uv_out = UVData() uv_in.read(testfile, 'uvfits') write_file = op.join(self.test_file_directory, 'outtest_casa.uvfits') uv_in.write(write_file) uv_out.read(write_file, 'uvfits') self.assertEqual(uv_in, uv_out) del (uv_in) del (uv_out)
def test_spwnotsupported(self): # testfile = '../data/day2_TDEM0003_10s_norx_1src_1spw.uvfits' # testfile = '../data/PRISim_output_manual_conversion.uvfits' testfile = '../data/day2_TDEM0003_10s_norx_1scan.uvfits' self.assertTrue(os.path.exists(testfile)) UV = UVData() self.assertRaises(ValueError, UV.read, testfile, 'uvfits') del (UV)
def test_ReadNRAO(self): testfile = '../data/day2_TDEM0003_10s_norx_1src_1spw.uvfits' UV = UVData() self.assertRaises(ValueError, UV.read, testfile, 'vufits') # Wrong filetype test = UV.read(testfile, 'uvfits') self.assertTrue(test) del (UV)
def test_ReadFHD_model(self): fhd_uv = UVData() uvfits_uv = UVData() fhd_uv.read(self.testfiles, 'fhd', use_model=True) fhd_uv.write(op.join(self.test_file_directory, 'outtest_FHD_1061316296_model.uvfits'), spoof_nonessential=True) uvfits_uv.read( op.join(self.test_file_directory, 'outtest_FHD_1061316296_model.uvfits'), 'uvfits') self.assertEqual(fhd_uv, uvfits_uv) del (fhd_uv) del (uvfits_uv)
def test_writeNRAO(self): testfile = '../data/day2_TDEM0003_10s_norx_1src_1spw.uvfits' # testfile = '../data/PRISim_output_manual_conversion.uvfits' UV = UVData() UV.read(testfile, 'uvfits') write_file = op.join(self.test_file_directory, 'outtest_casa_1src_1spw.uvfits') test = UV.write(write_file) self.assertTrue(test) del (UV)
def setUp(self): self.required_properties = [ 'data_array', 'nsample_array', 'flag_array', 'Ntimes', 'Nbls', 'Nblts', 'Nfreqs', 'Npols', 'Nspws', 'uvw_array', 'time_array', 'ant_1_array', 'ant_2_array', 'lst_array', 'baseline_array', 'freq_array', 'polarization_array', 'spw_array', 'integration_time', 'channel_width', 'object_name', 'telescope_name', 'instrument', 'latitude', 'longitude', 'altitude', 'history', 'vis_units', 'phase_center_epoch', 'Nants_data', 'Nants_telescope', 'antenna_names', 'antenna_indices' ] self.extra_properties = [ 'extra_keywords', 'dateobs', 'xyz_telescope_frame', 'x_telescope', 'y_telescope', 'z_telescope', 'antenna_positions', 'GST0', 'RDate', 'earth_omega', 'DUT1', 'TIMESYS', 'uvplane_reference_time', 'phase_center_ra', 'phase_center_dec', 'zenith_ra', 'zenith_dec' ] self.uv_object = UVData()
opts, args = o.parse_args(sys.argv[1:]) if not opts.ofile == None: ofile = opts.ofile else: ofile = 'empty.uvfits' if not opts.nout == None: nout = opts.nout else: nout = 1 #Import the sim and instrument settings from the file. exec('from %s import sim_prms as _sim_params' % args[1].split('.')[0]) exec('from %s import instr_prms as _instr_params' % args[1].split('.')[0]) uvd = UVData() default_attrs = [aa for aa in dir(uvd) if not aa.startswith('__')] for key, val in _sim_params.iteritems(): if key in default_attrs: uvp = getattr(uvd, key) else: uvp = UVProperty() uvp.value = val setattr(uvd, key, uvp) for key, val in _instr_params.iteritems(): if key in default_attrs: uvp = getattr(uvd, key) else: uvp = UVProperty()
obs_min = args.obsid_range[0] obs_max = args.obsid_range[1] except: obs_min = min(file_dict.keys()) obs_max = max(file_dict.keys()) for k in file_dict.keys(): if k > obs_max or k < obs_min: file_dict.pop(k) for i, (k, v) in enumerate(file_dict.iteritems()): if args.dirty: print('converting dirty vis for obsid {}, ({} of {})'.format( k, i, len(file_dict))) uvfits_file = op.join(output_folder, str(k) + '.uvfits') this_uv = UVData() this_uv.read_fhd(v) this_uv.write_uvfits(uvfits_file, spoof_nonessential=True) del (this_uv) if args.model: print('converting model vis for obsid {}, ({} of {})'.format( k, i, len(file_dict))) uvfits_file = op.join(output_folder, str(k) + '_model.uvfits') this_uv = UVData() this_uv.read_fhd(v, use_model=True) this_uv.write_uvfits(uvfits_file, spoof_nonessential=True)
#!/bin/env python from uvdata.uv import UVData import numpy as np import pylab as plt uvd0 = UVData() uvd0.read_uvfits('ewbase_mwa_0.uvfits') uvd1 = UVData() uvd1.read_uvfits('ewbase_mwa_1.uvfits') uvd2 = UVData() uvd2.read_uvfits('ewbase_mwa_2.uvfits') uvd0.set_lsts_from_time_array() print uvd0.phase_center_ra, uvd0.lst_array[0] #print uvd1.phase_center_ra, uvd1.phase_center_dec #print uvd2.phase_center_ra, uvd2.phase_center_dec if False: uvd1.unphase_to_drift() uvd0.unphase_to_drift() uvd2.unphase_to_drift() #other #plt.scatter(uvd0.uvw_array[1][1::3], uvd0.uvw_array[2][1::3], color='red') #plt.scatter(uvd1.uvw_array[1][1::3], uvd1.uvw_array[2][1::3], color='blue') #plt.scatter(uvd2.uvw_array[1][1::3], uvd2.uvw_array[2][1::3], color='green') #plt.scatter(uvd0.uvw_array[1], uvd0.uvw_array[2], color='red')
from uvdata.uv import UVData import noise uv = UVData() uv.read_miriad('data/zen.2456865.60537.xx.uvcRREATU') print "Finished reading" uvf = noise.splitByFreq(uv, mode='diff') uvp = noise.splitByPol(uv, mode='diff') uvt = noise.splitByTime(uv, mode='diff') uvf.write_uvfits('data/psasmallf', True, True, True, True) #uvp.write_uvfits('data/psasmallp',True,False,False,False) uvt.write_uvfits('data/psasmallt', True, True, True, True)
def setUp(self): self.uv_object = UVData() self.uv_object.Nants_telescope.value = 128 self.testfile = '../data/day2_TDEM0003_10s_norx_1src_1spw.uvfits'