def uvcal_from_data(self): """ Generate an empty uvcal object from visibility parameters """ uvc = UVCal() uvc.Njones = self.measured_vis.Npols uvc.Nfreqs = self.measured_vis.Nfreqs uvc.Ntimes = self.measured_vis.Ntimes uvc.Nspws = self.measured_vis.Nspws uvc.time_range = (self.measured_vis.time_array.min(), self.measured_vis.time_array.max()) uvc.telescope_name = self.measured_vis.telescope_name uvc.Nants_data = self.measured_vis.Nants_data uvc.Nants_telescope = self.measured_vis.Nants_telescope uvc.ant_array = np.unique(self.measured_vis.ant_1_array) uvc.antenna_names = self.measured_vis.antenna_names uvc.antenna_numbers = self.measured_vis.antenna_numbers uvc.freq_array = self.measured_vis.freq_array uvc.channel_width = self.measured_vis.channel_width uvc.jones_array = self.measured_vis.polarization_array uvc.time_array = np.unique(self.measured_vis.time_array) uvc.integration_time = self.measured_vis.integration_time uvc.x_orientation = 'east' #always uvc.cal_type = 'gain' uvc.quality_array = np.zeros( (self.measured_vis.Nants_data, 1, self.measured_vis.Nfreqs, self.measured_vis.Ntimes, self.measured_vis.Npols)) uvc.git_origin_cal='calibrated with stefcal_uvdata version %s with run id %s'\ %(self.meta_params.stefcal_version_str,self.meta_params.id) uvc.gain_array = np.ones( (self.meta_params.Nants_data, 1, self.model_vis.Nfreqs, self.model_vis.Ntimes, self.model_vis.Npols), dtype=complex) uvc.flag_array = np.empty( (self.meta_params.Nants_data, 1, self.model_vis.Nfreqs, self.model_vis.Ntimes, self.model_vis.Npols), dtype=bool) uvc.flag_array[:] = False return uvc
cal.x_orientation = 'east' # orientation of 1st jones parameter. # # JD's this can applied to. Below is Season 1 # cal.time_range = [2456528., 2456626.] # cal.telescope_name = 'MWA' cal.Nants_data = Nants_data cal.Nants_telescope = Nants_data # have solutions for all antennas in array. cal.ant_array = ant_array cal.antenna_names = antenna_names cal.antenna_numbers = ant_array cal.flag_array = flags cal.gain_array = gains cal.quality_array = chisq # # Put your name in as creator # cal.observer = '<YOUR NAME HERE>' # # Put in the git url of the code that generated the cals # cal.git_origin_cal = 'https://github.com/EoRImaging/FHD' # # And if you know the git hash, put that in as well # #cal.git_hash_cal = # Finally, generate an output! cal.write_calfits('<put in a filepath>/<put in an instrument>_<put in a field>_<put in a frequency range name>_<put in a season/day>_cable_bandpass.fits')