######################################################################## # Data reduction script for BRI1202 Band 7: # - Calibration script: "BR1202_Band7_Calibration.py" - # Tested in CASA Version 3.3.0 ######################################################################## """ See accompanying README file for details of this script, the necessary input files and comments on the data """ # # ------------------------------------------------------------------------- # Starting data set ms_basename = 'uid___A002_X36ffba_X3ef' # Reference antenna for calibration. ref_ant = 'DV06' # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= # CONTROL WHICH STEPS RUN # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= do_listobs = True do_plotants = True do_flag_apriori = True do_fixplanets = True apply_Tsys_wvr = True do_inspect = True do_flag = True do_bandpass = True do_gaincal = True do_applycal = True do_split = True do_plottsys = True # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= # EXECUTION # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= # ------------------------------ # RUN LISTOBS TO GET INFORMATION # ------------------------------ if do_listobs: os.system('rm -rf '+ms_basename+'.listobs.txt') listobs(vis=ms_basename+'.ms', verbose=True, listfile=ms_basename+'.listobs.txt') print "<< Printed listobs output to "+ms_basename+'.listobs.txt' # ------------------------------------------------ # RUN PLOTANTS TO GET ANTENNA POSITION INFORMATION # ------------------------------------------------ if do_plotants: print "<< Plotting antenna configuration for dataset "+ms_basename+' to '+ms_basename+'.antpos.png' os.system('rm -rf '+ms_basename+'.antpos.png') plotants(vis=ms_basename+'.ms', figfile=ms_basename+'.antpos.png') # ------------------------------------------------ # OPTIONALLY PLOT TSYS FOR INSPECTION # ------------------------------------------------ if do_plottsys: os.system('rm -rf tsys_plots/') os.system('mkdir tsys_plots/') print "<< Plotting Tsys plots to directory tsys_plots/" # Tsys versus time for spw in ['1','3','5','7']: plotcal(caltable=ms_basename+'.tsys', xaxis='time', yaxis='amp', spw=spw+':64~64', subplot=421, antenna='0~7', iteration='antenna', plotsymbol='.', fontsize=6.0, figfile='tsys_plots/'+ms_basename+'_tsysVStime1_spw'+spw+'.png', showgui=False, timerange='12:12:58~13:22:05') plotcal(caltable=ms_basename+'.tsys', xaxis='time', yaxis='amp', spw=spw+':64~64', subplot=421, antenna='8~13', iteration='antenna', plotsymbol='.', fontsize=6.0, figfile='tsys_plots/'+ms_basename+'_tsysVStime2_spw'+spw+'.png', showgui=False, timerange='12:12:58~13:22:05') # Tsys versus frequency for spw in ['1','3','5','7']: plotcal(caltable=ms_basename+'.tsys', xaxis='freq', yaxis='amp', spw=spw+':2~125', subplot=421, antenna='0~7', iteration='antenna', plotsymbol='.', fontsize=6.0, figfile='tsys_plots/'+ms_basename+'_tsysVSfreq1_spw'+spw+'.png', showgui=False, timerange='12:12:58~13:22:05') plotcal(caltable=ms_basename+'.tsys', xaxis='freq', yaxis='amp', spw=spw+':2~125', subplot=421, antenna='8~13', iteration='antenna', plotsymbol='.', fontsize=6.0, figfile='tsys_plots/'+ms_basename+'_tsysVSfreq2_spw'+spw+'.png', showgui=False, timerange='12:12:58~13:22:05') # ------------------------------ # FIX TITAN'S POSITION # ------------------------------ if do_fixplanets: fixplanets(vis=ms_basename+'.ms', field='Titan', fixuvw=True) # ----------------------------------------- # DO INITIAL FLAGGING OF DATA WE DON'T NEED # ----------------------------------------- if do_flag_apriori: # Shadowed data flagdata(vis=ms_basename+'.ms', flagbackup=False, mode='shadow', diameter=12.0) # Pointing/atmospheric scans flagdata(vis=ms_basename+'.ms', flagbackup=False, mode='manualflag', intent='*POINTING*') flagdata(vis=ms_basename+'.ms', flagbackup=False, mode='manualflag', intent='*SIDEBAND*') flagdata(vis=ms_basename+'.ms', flagbackup=False, mode='manualflag', intent='*ATMOSPHERE*') # Autocorrelation data flagdata(vis=ms_basename+'.ms', flagbackup=False, mode='manualflag', autocorr=True) # Save flag version flagmanager(vis=ms_basename+'.ms', mode='save', versionname=ms_basename+'.Apriori') # ------------------------------------------------------ # APPLY TSYS, WVR, AND ANTPOS TABLES, INSPECT, AND SPLIT # ------------------------------------------------------ if apply_Tsys_wvr: # 1. Apply calibration tables do_applycal_init = True if do_applycal_init: # a. field 0 (3c279) applycal(vis=ms_basename+'.ms', field='0', spw='1,3,5,7', gaintable=[ms_basename+'.ms.antpos', ms_basename+'.tsys', ms_basename+'.wvrcal'], # gainfield=['', '0,2', '0'], interp=['nearest', 'linear', 'nearest'], flagbackup=False) # b. field 1 (Titan) applycal(vis=ms_basename+'.ms', field='1', spw='1,3,5,7', gaintable=[ms_basename+'.ms.antpos', ms_basename+'.tsys', ms_basename+'.wvrcal'], # gainfield=['', '1', '1'], interp=['nearest', 'linear', 'nearest'], flagbackup=False) # c. field 2 (BR1202) applycal(vis=ms_basename+'.ms', field='2', spw='1,3,5,7', gaintable=[ms_basename+'.ms.antpos', ms_basename+'.tsys', ms_basename+'.wvrcal'], # gainfield=['', '0,2', '2'], interp=['nearest', 'linear', 'nearest'], flagbackup=False) # 2. Inspect results of applying calibration tables do_inspect_ctab = True if do_inspect_ctab: # a. Amp versus time for field in ['0','1']: for spw in ['1','3','5','7']: plotms(vis=ms_basename+'.ms', xaxis='time', yaxis='amp', ydatacolumn='data', field=field, spw=spw+':60~70', antenna=ref_ant+'&*', avgchannel='1000', coloraxis='baseline') dummy_string = \ raw_input("Inspecting application of Tsys, WVR tables, field = "+ \ field+", spw = "+spw+". Hit to continue.") # b. Amp versus frequency for field in ['0','1']: for spw in ['1','3','5','7']: plotms(vis=ms_basename+'.ms', xaxis='freq', yaxis='amp', ydatacolumn='data', field=field, spw=spw+':8~122', antenna=ref_ant+'&*', avgtime='1e8', avgscan=True, coloraxis='baseline') dummy_string = \ raw_input("Inspecting application of Tsys, WVR tables, field = "+ \ field+", spw = "+spw+". Hit to continue.") # c. Phase versus time for field in ['0','1']: for spw in ['1','3','5','7']: plotms(vis=ms_basename+'.ms', xaxis='time', yaxis='phase', ydatacolumn='data', field=field, spw=spw+':60~70', antenna=ref_ant+'&*', avgchannel='1000', coloraxis='baseline') dummy_string = raw_input("Inspecting application of Tsys, WVR tables, field = "+ \ field+", spw = "+spw+". Hit to continue.") # d. Phase versus frequency for field in ['0','1']: for spw in ['1','3','5','7']: plotms(vis=ms_basename+'.ms', xaxis='freq', yaxis='phase', ydatacolumn='data', field=field, spw=spw+':8~122', antenna=ref_ant+'&*', avgtime='1e8', avgscan=True, coloraxis='baseline') dummy_string = raw_input("Inspecting application of Tsys, WVR tables, field = "+ \ field+", spw = "+spw+". Hit to continue.") # 3. Split out calibrated data, and keep only spw's of interest do_split_init = True if do_split_init: split(vis=ms_basename+'.ms', outputvis=ms_basename+'.wvrtsys.ms', datacolumn='corrected', spw='1,3,5,7', keepflags=False) # 4. Redo listobs on split data do_newlistobs = True if do_newlistobs: listobs(vis=ms_basename+'.wvrtsys.ms', listfile=ms_basename+'.wvrtsys.listobs.txt', verbose=True) print "<< Printed listobs output to "+ms_basename+'.wvrtsys.listobs.txt' # ---------------------------------------------------------- # Inspect data, taking notes on things to flag along the way # ---------------------------------------------------------- if do_inspect: # PLOTS FOR REFERENCE BASELINE # Amp versus time, reference baseline do_aVt_ref = True if do_aVt_ref: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='time', yaxis='amp', field=field, spw=spw+':8~122', antenna=ref_ant+'&*', avgchannel='1000', iteraxis='baseline', coloraxis='corr') dummy_string = raw_input("Inspecting baselines to ref_ant, field = "+ \ field+", spw = "+spw+". Hit to continue.") # Phase versus time, reference baseline do_pVt_ref = True if do_pVt_ref: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='time', yaxis='phase', field=field, spw=spw+':8~122', antenna=ref_ant+'&*', avgchannel='1000', iteraxis='baseline', coloraxis='corr') dummy_string = raw_input("Inspecting baselines to ref_ant, field = "+ \ field+", spw = "+spw+". Hit to continue.") # Amp versus frequency, reference baseline do_aVf_ref = True if do_aVf_ref: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='freq', yaxis='amp', field=field, spw=spw, antenna=ref_ant+'&*', avgtime='1e8', avgscan=True, iteraxis='baseline', coloraxis='corr') dummy_string = raw_input("Inspecting baselines to ref_ant, field = "+ \ field+", spw = "+spw+". Hit to continue.") # Phase versus frequency, reference baseline do_pVf_ref = True if do_pVf_ref: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='freq', yaxis='phase', field=field, spw=spw, antenna=ref_ant+'&*', avgtime='1e8', avgscan=True, iteraxis='baseline', coloraxis='corr') dummy_string = raw_input("Inspecting baselines to ref_ant, field = "+ \ field+", spw = "+spw+". Hit to continue.") # PLOTS FOR ALL BASELINE # Amp versus time, all baselines do_aVt_all = True if do_aVt_all: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='time', yaxis='amp', field=field, spw=spw+':8~120', antenna='*&*', avgchannel='1000', iteraxis='antenna', coloraxis='baseline') dummy_string = raw_input("Inspecting all baselines, field = "+ \ field+", spw = "+spw+". Hit to continue.") # Phase versus time, all baselines do_pVt_all = True if do_pVt_all: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='time', yaxis='phase', field=field, spw=spw+':8~120', antenna='*&*', avgchannel='1000', iteraxis='antenna', coloraxis='baseline') dummy_string = raw_input("Inspecting all baselines, field = "+ \ field+", spw = "+spw+". Hit to continue.") # Amp versus frequency, all baselines do_aVf_all = True if do_aVf_all: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='freq', yaxis='amp', field=field, spw=spw, antenna='*&*', avgtime='1e8', avgscan=True, iteraxis='antenna', coloraxis='baseline') dummy_string = raw_input("Inspecting all baselines, field = "+ \ field+", spw = "+spw+". Hit to continue.") # Phase versus frequency, all baselines do_pVf_all = True if do_pVf_all: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='freq', yaxis='phase', field=field, spw=spw, antenna=ref_ant+'&*', avgtime='1e8', avgscan=True, iteraxis='antenna', coloraxis='baseline') dummy_string = raw_input("Inspecting baselines to ref_ant, field = "+ \ field+", spw = "+spw+". Hit to continue.") # PLOTS FOR ALL FIELDS do_allfields = True if do_allfields: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='time', yaxis='amp', spw=spw, avgchannel='1000',coloraxis='field') dummy_string = raw_input("Inspecting all fields, spw = "+spw+". Hit to continue.") # CHECK UVDIST FOR CALIBRATORS do_uvdist = True if do_uvdist: for field in ['0','1']: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', field=field, spw=spw, xaxis='uvdist', yaxis='amp', avgchannel='1000',coloraxis='corr') dummy_string = raw_input("Inspecting uvdist, field = "+ \ field+", spw = "+spw+". Hit to continue.") # ---------------------------------------------------------- # Flag data after/during inspection # ---------------------------------------------------------- if do_flag: # Unflag all unflag = False if unflag: flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', unflag=True, flagbackup=False) # Flag edge channels flag_edge = True if flag_edge: flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', spw='0~3:0~7;121~127') # Flag DV05, corr=XX, spw=0,1 flag_DV05 = True if flag_DV05: flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', flagbackup=False, antenna='DV05', correlation='XX', spw='0,1') # Flag DA42, corr=XX, spw=0,1 flag_DA42 = True if flag_DA42: flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', flagbackup=False, antenna='DA42', correlation='XX', spw='0,1') # Flag DV07, DV05, DV16, DV12 for specific time ranges when amp drops out flag_time_drops = True if flag_time_drops: flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', flagbackup=False, antenna='DV07,DV16', correlation='', spw='', timerange='12:54:47~12:55:00') flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', flagbackup=False, antenna='DV05,DV12', correlation='', spw='', timerange='12:37:09~12:37:22') # Flag select baselines to DV16 flag_DV16_bs = True if flag_DV16_bs: flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', flagbackup=False, antenna='DV16&DA43;DV16&DV01;DV16&DV03;DV16&DV04;DV16&DV05;DV16&DV06;DV16&DV10;DV16&DV12;DV16&PM02') # Flag select baselines to DV01 flag_DV01_bs = True if flag_DV01_bs: flagdata(vis=ms_basename+'.wvrtsys.ms', mode='manualflag', flagbackup=False, antenna='DV01&DV05;DV01&DV06;DV01&DV07;DV01&DV10;DV01&DV13;DV01&DV14') # Save flag state prior to calibration save_flag_precal = True if save_flag_precal: flagmanager(vis=ms_basename+'.wvrtsys.ms', mode='save', versionname=ms_basename+'.preCal') # ------------------------------------------------------ # BANDPASS CALIBRATION # ------------------------------------------------------ if do_bandpass: # Phase versus time (short timescales) do_pVt_short = True if do_pVt_short: gaincal(vis=ms_basename+'.wvrtsys.ms', caltable=ms_basename+'.wvrtsys.bpphase.gcal', selectdata=True, field='3c279', gaintype='G', calmode='p', solint='int', refant=ref_ant, minblperant=4, minsnr=2, spw='0~3:60~70') # Amp and phase versus frequency (long timescales) do_apVt_long = True if do_apVt_long: bandpass(vis=ms_basename+'.wvrtsys.ms', caltable=ms_basename+'.wvrtsys.bandpass.bcal', selectdata=True, field='3c279', solint='inf', combine='scan,field', refant=ref_ant, minblperant=4, minsnr=2, solnorm=True, bandtype='B', fillgaps=10, gaintable=ms_basename+'.wvrtsys.bpphase.gcal', gainfield='3c279', interp='linear') # Use plotcal to inspect solutions plot_bandpass_solns = True if plot_bandpass_solns: os.system('rm -rf bandpass_plots/') os.system('mkdir bandpass_plots/') print "<< Plotting bandpass solutions to directory bandpass_plots/" # phase versus time, short timescales for spw in ['0','1','2','3']: plotcal(caltable=ms_basename+'.wvrtsys.bpphase.gcal', xaxis='time', yaxis='phase', antenna='0~7', spw=spw+':60~70', subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, timerange='12:12:58~13:22:05', figfile='bandpass_plots/'+ms_basename+'.wvrtsys_phaseVStime_gcal1_spw'+spw+'.png') plotcal(caltable=ms_basename+'.wvrtsys.bpphase.gcal', xaxis='time', yaxis='phase', antenna='8~13', spw=spw+':60~70', subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, timerange='12:12:58~13:22:05', figfile='bandpass_plots/'+ms_basename+'.wvrtsys_phaseVStime_gcal2_spw'+spw+'.png') # amp versus frequency, long timescales for spw in ['0','1','2','3']: plotcal(caltable=ms_basename+'.wvrtsys.bandpass.bcal', xaxis='freq', yaxis='amp', antenna='0~7', spw=spw, subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, timerange='12:12:58~13:22:05', figfile='bandpass_plots/'+ms_basename+'.wvrtsys_ampVSfreq_bcal1_spw'+spw+'.png') plotcal(caltable=ms_basename+'.wvrtsys.bandpass.bcal', xaxis='freq', yaxis='amp', antenna='8~13', spw=spw, subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, timerange='12:12:58~13:22:05', figfile='bandpass_plots/'+ms_basename+'.wvrtsys_ampVSfreq_bcal2_spw'+spw+'.png') # phase versus frequency, long timescales for spw in ['0','1','2','3']: plotcal(caltable=ms_basename+'.wvrtsys.bandpass.bcal', xaxis='freq', yaxis='phase', antenna='0~7', spw=spw, subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, timerange='12:12:58~13:22:05', figfile='bandpass_plots/'+ms_basename+'.wvrtsys_phaseVSfreq_bcal1_spw'+spw+'.png') plotcal(caltable=ms_basename+'.wvrtsys.bandpass.bcal', xaxis='freq', yaxis='phase', antenna='8~13', spw=spw, subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, timerange='12:12:58~13:22:05', figfile='bandpass_plots/'+ms_basename+'.wvrtsys_phaseVSfreq_bcal2_spw'+spw+'.png') # ------------------------------------------------------ # GAIN CALIBRATION # ------------------------------------------------------ if do_gaincal: # Read the predicted complex visibilities for Titan into the MODEL column. do_setjy = True if do_setjy: setjy(vis=ms_basename+'.wvrtsys.ms', field='Titan', standard='Butler-JPL-Horizons 2010') # Solve for phase variation on short timescales (for calibrators) do_pVt_short = True if do_pVt_short: gaincal(vis=ms_basename+'.wvrtsys.ms', caltable=ms_basename+'.wvrtsys.intphase.gcal', selectdata=True, field='3c279,Titan', gaintype='G', calmode='p', solint='int', refant=ref_ant, minblperant=4, minsnr=2, spw='', gaintable=ms_basename+'.wvrtsys.bandpass.bcal') # Solve for phase variation on long timescales (for target) do_pVt_long = True if do_pVt_long: gaincal(vis=ms_basename+'.wvrtsys.ms', caltable=ms_basename+'.wvrtsys.scanphase.gcal', selectdata=True, field='3c279,Titan', gaintype='G', calmode='p', solint='inf', refant=ref_ant, minblperant=4, minsnr=2, spw='', gaintable=ms_basename+'.wvrtsys.bandpass.bcal') # Solve for amplitude variation on long timescales do_aVt_long = True if do_aVt_long: gaincal(vis=ms_basename+'.wvrtsys.ms', caltable=ms_basename+'.wvrtsys.amp.gcal', selectdata=True, field='3c279,Titan', gaintype='G', calmode='a', solint='inf', refant=ref_ant, minblperant=4, minsnr=2, spw='', gaintable=[ms_basename+'.wvrtsys.bandpass.bcal', ms_basename+'.wvrtsys.intphase.gcal']) # Set flux scale of 3c279 do_fluxscale = True if do_fluxscale: fluxscale(vis=ms_basename+'.wvrtsys.ms', caltable=ms_basename+'.wvrtsys.amp.gcal', fluxtable=ms_basename+'.wvrtsys.flux.gcal', reference='Titan', transfer='3c279', refspwmap=[0,1,3,3]) # Inspect calibration tables do_inspect_tabs = True if do_inspect_tabs: os.system('rm -rf gaincal_plots/') os.system('mkdir gaincal_plots/') print "<< Plotting gaincal solutions to directory gaincal_plots/" # Plot phase versus time for long timescale phase solution for spw in ['0','1','2','3']: plotcal(caltable=ms_basename+'.wvrtsys.scanphase.gcal', xaxis='time', yaxis='phase', spw=spw, antenna='0~7', subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, figfile='gaincal_plots/'+ms_basename+'.wvrtsys_phaseVStime_gcal1_spw'+spw+'.png') plotcal(caltable=ms_basename+'.wvrtsys.scanphase.gcal', xaxis='time', yaxis='phase', spw=spw, antenna='8~13', subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, figfile='gaincal_plots/'+ms_basename+'.wvrtsys_phaseVStime_gcal2_spw'+spw+'.png') # Plot amplitude versus time for amplitude solution for spw in ['0','1','2','3']: plotcal(caltable=ms_basename+'.wvrtsys.flux.gcal', xaxis='time', yaxis='amp', spw=spw, antenna='0~7', subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, figfile='gaincal_plots/'+ms_basename+'.wvrtsys_ampVStime_gcal1_spw'+spw+'.png') plotcal(caltable=ms_basename+'.wvrtsys.flux.gcal', xaxis='time', yaxis='amp', spw=spw, antenna='8~13', subplot=421, iteration='antenna', plotsymbol='.', fontsize=6.0, showgui=False, figfile='gaincal_plots/'+ms_basename+'.wvrtsys_ampVStime_gcal2_spw'+spw+'.png') # ------------------------------------------------------ # APPLY CALIBRATION AND INSPECT CALIBRATED DATA # ------------------------------------------------------ if do_applycal: # Run applycal run_applycal = True if run_applycal: print "Applying calibration..." # 3c279 applycal(vis=ms_basename+'.wvrtsys.ms', field='0', gaintable=[ms_basename+'.wvrtsys.bandpass.bcal', ms_basename+'.wvrtsys.intphase.gcal', ms_basename+'.wvrtsys.flux.gcal'], gainfield=['3c279','3c279','3c279'], interp=['nearest', 'nearest', 'nearest'], flagbackup=False) # Titan (do spw=2 separately) applycal(vis=ms_basename+'.wvrtsys.ms', field='1', gaintable=[ms_basename+'.wvrtsys.bandpass.bcal', ms_basename+'.wvrtsys.intphase.gcal', ms_basename+'.wvrtsys.flux.gcal'], gainfield=['3c279','Titan','Titan'], spw='0,1,3', interp=['nearest', 'nearest', 'nearest'], flagbackup=False) applycal(vis=ms_basename+'.wvrtsys.ms', field='1', gaintable=[ms_basename+'.wvrtsys.bandpass.bcal', ms_basename+'.wvrtsys.intphase.gcal', ms_basename+'.wvrtsys.flux.gcal'], gainfield=['3c279','Titan','3c279'], spw='2', interp=['nearest', 'nearest', 'linear'], flagbackup=False) # BR1202 applycal(vis=ms_basename+'.wvrtsys.ms', field='2', gaintable=[ms_basename+'.wvrtsys.bandpass.bcal', ms_basename+'.wvrtsys.scanphase.gcal', ms_basename+'.wvrtsys.flux.gcal'], gainfield=['3c279','3c279','3c279'], interp=['nearest', 'linear', 'linear'], flagbackup=False) # Plot Amplitude versus Time for all fields plot_aVt_all = True if plot_aVt_all: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='time', yaxis='amp', spw=spw, ydatacolumn='corrected', avgchannel='1000',coloraxis='field') dummy_string = raw_input("Inspecting all fields, spw = "+spw+". Hit to continue.") # Plot Phase versus Time for all fields plot_pVt_all = True if plot_pVt_all: for spw in ['0','1','2','3']: plotms(vis=ms_basename+'.wvrtsys.ms', xaxis='time', yaxis='phase', spw=spw, ydatacolumn='corrected', avgchannel='1000',coloraxis='field') dummy_string = raw_input("Inspecting all fields, spw = "+spw+". Hit to continue.") # Plot Amplitude versus Frequency for all fields plot_aVf_all = True if plot_aVf_all: for field in ['0','1','2']: plotms(vis=ms_basename+'.wvrtsys.ms', field=field, xaxis='frequency', yaxis='amp', ydatacolumn='corrected', avgtime='1e8', avgscan=True, coloraxis='field') dummy_string = raw_input("Inspecting all spws, field = "+field+". Hit to continue.") # Plot Phase versus Frequency for all fields plot_pVf_all = True if plot_pVf_all: for field in ['0','1','2']: plotms(vis=ms_basename+'.wvrtsys.ms', field=field, xaxis='frequency', yaxis='phase', ydatacolumn='corrected', avgtime='1e8', avgscan=True, coloraxis='field') dummy_string = raw_input("Inspecting all spws, field = "+field+". Hit to continue.") # ------------------------------ # SPLIT OUT DATA FOR IMAGING # ------------------------------ if do_split: print "Splitting out calibrated data..." split(vis=ms_basename+'.wvrtsys.ms', outputvis=ms_basename+'.cal.ms', datacolumn='corrected', field='2', keepflags=False) #---------------------------------------------------------------------------------- #----- End of calibration script. #----- To continue, see imaging script "BR1202_Band7_Imaging.py" #----------------------------------------------------------------------------------