VLA Self-calibration Tutorial-CASA5.7.0

From CASA Guides
Jump to navigationJump to search


This page is currently under construction.

Introduction

This CASA guide describes the basics of the self-calibration process and in particular how to choose parameters to achieve the best result. Even after the initial calibration of the dataset using the amplitude calibrator and the phase calibrator, there are likely to be residual phase and/or amplitude errors in the data. Self-calibration is the process of using an existing model, often constructed from imaging the data itself, to reduce the remaining phase and amplitude errors in your image.

The dataset that will be used for this CASA tutorial is an observation of a massive galaxy cluster at z~1 which was taken with the goal to determine the morphology of the radio sources within the cluster.

Data for this Tutorial

Obtaining the Data

Observation Details

Once CASA is up and running in the directory containing the data, then start your data reduction by getting some basic information about the data. The task listobs can be used to get a listing of the individual scans comprising the observation, the frequency setup, source list, and antenna locations.

# in CASA
listobs(vis='MOO_1506+5136_Cband.ms')
================================================================================
           MeasurementSet Name:  /filepath/MOO_1506+5136_Cband.ms      MS Version 2
================================================================================
   Observer: Prof. Anthony H. Gonzalez     Project: uid://evla/pdb/34052589  
Observation: EVLA(27 antennas)
Data records: 5290272       Total elapsed time = 2853 seconds
   Observed from   13-Oct-2017/20:40:09.0   to   13-Oct-2017/21:27:42.0 (UTC)

Fields: 3
  ID   Code Name                RA               Decl           Epoch   SrcId      nRows
  0    NONE J1549+5038          15:49:17.468534 +50.38.05.78820 J2000   0        1561248
  1    NONE MOO_1506+5136       15:06:20.353700 +51.36.53.63460 J2000   1        3150576
  2    NONE 3C286               13:31:08.287984 +30.30.32.95886 J2000   2         578448
Spectral Windows:  (16 unique spectral windows and 1 unique polarization setups)
  SpwID  Name           #Chans   Frame   Ch0(MHz)  ChanWid(kHz)  TotBW(kHz) CtrFreq(MHz) BBC Num  Corrs          
  0      EVLA_C#A0C0#0      64   TOPO    4488.000      2000.000    128000.0   4551.0000       12  RR  RL  LR  LL
  1      EVLA_C#A0C0#1      64   TOPO    4616.000      2000.000    128000.0   4679.0000       12  RR  RL  LR  LL
  2      EVLA_C#A0C0#2      64   TOPO    4744.000      2000.000    128000.0   4807.0000       12  RR  RL  LR  LL
  3      EVLA_C#A0C0#3      64   TOPO    4872.000      2000.000    128000.0   4935.0000       12  RR  RL  LR  LL
  4      EVLA_C#A0C0#4      64   TOPO    5000.000      2000.000    128000.0   5063.0000       12  RR  RL  LR  LL
  5      EVLA_C#A0C0#5      64   TOPO    5128.000      2000.000    128000.0   5191.0000       12  RR  RL  LR  LL
  6      EVLA_C#A0C0#6      64   TOPO    5256.000      2000.000    128000.0   5319.0000       12  RR  RL  LR  LL
  7      EVLA_C#A0C0#7      64   TOPO    5384.000      2000.000    128000.0   5447.0000       12  RR  RL  LR  LL
  8      EVLA_C#B0D0#8      64   TOPO    5488.000      2000.000    128000.0   5551.0000       15  RR  RL  LR  LL
  9      EVLA_C#B0D0#9      64   TOPO    5616.000      2000.000    128000.0   5679.0000       15  RR  RL  LR  LL
  10     EVLA_C#B0D0#10     64   TOPO    5744.000      2000.000    128000.0   5807.0000       15  RR  RL  LR  LL
  11     EVLA_C#B0D0#11     64   TOPO    5872.000      2000.000    128000.0   5935.0000       15  RR  RL  LR  LL
  12     EVLA_C#B0D0#12     64   TOPO    6000.000      2000.000    128000.0   6063.0000       15  RR  RL  LR  LL
  13     EVLA_C#B0D0#13     64   TOPO    6128.000      2000.000    128000.0   6191.0000       15  RR  RL  LR  LL
  14     EVLA_C#B0D0#14     64   TOPO    6256.000      2000.000    128000.0   6319.0000       15  RR  RL  LR  LL
  15     EVLA_C#B0D0#15     64   TOPO    6384.000      2000.000    128000.0   6447.0000       15  RR  RL  LR  LL
Antennas: 27 'name'='station' 
   ID=   0-3: 'ea01'='W12', 'ea02'='W04', 'ea03'='W28', 'ea04'='E24', 
   ID=   4-7: 'ea05'='E04', 'ea06'='N20', 'ea07'='N16', 'ea08'='W16', 
   ID=  8-11: 'ea09'='N12', 'ea10'='E08', 'ea11'='N28', 'ea12'='E28', 
   ID= 12-15: 'ea13'='E16', 'ea14'='E36', 'ea15'='N32', 'ea16'='W24', 
   ID= 16-19: 'ea17'='N04', 'ea18'='W36', 'ea19'='W20', 'ea20'='N24', 
   ID= 20-23: 'ea21'='E20', 'ea22'='W32', 'ea23'='E12', 'ea24'='W08', 
   ID= 24-26: 'ea25'='N08', 'ea26'='E32', 'ea27'='N36'

Initial Imaging

First, we want to make an initial image which showcases why we need self-calibration in this case.

We split off the calibrated target field data, meaning that the visibilities of the target source to get copied from the CORRECTED_DATA column to the DATA column of a new measurement set. This is convenient for further processing.

# in CASA
split(vis='MOO_1506+5136_Cband.ms',datacolumn='corrected',field='1',outputvis='obj.ms')

In order to get a feel for the sources in the clusters and any outliers that will need to be cleaned, we make a dirty image of the primary beam.

# in CASA
tclean(vis='obj.ms',imagename='obj.dirty.2000pix.8am.024as',imsize=2000,cell='0.24arcsec',weighting='briggs',niter=1,interactive=False)
Figure 1: The 8' dirty image using the Rainbow 3 color map.
  • cell='0.24arcsec': The observations were taken in C-band in configuration B which gives a resolution of 1.2". Thus to 5 elements across the resolution of 1.2", we require a cell size of 0.24"/pixel.
  • imsize=2000: In this case, the primary beam is ~8'. Thus to get an image of the entire PB, we use an imsize of 2000 pixels.
  • niter=1: To make a dirty image, we only need one iteration.
  • interactive=False: Turn off the interactive feature to make the dirty image.

Now, we can make a preliminary clean image before rounds of self-calibration to use as a reference.

# in CASA
tclean(vis='obj.ms',imagename='obj.',imsize=750,cell='0.24arcsec',weighting='briggs',deconvolver='mtmfs',nterms=2,niter=1000,interactive=True)
  • cell='0.24arcsec': The observations were taken in C-band in configuration B which gives a resolution of 1.2". Thus to 5 elements across the resolution of 1.2", we require a cell size of 0.24"/pixel.
  • imsize=750: In this case, the primary beam is ~8'. Thus to get an image of the entire PB, we use an imsize of 750 pixels.
  • deconvolver='mtmfs': Josh:I believe you recommended this to be based on the width of the band of observations with respect to the observing frequency -- I don't remember the qualitative guidelines for center_frequency/total_bandwidth. This corrects for the spectral slope when wideband width -- in this case 1.87GHz.
  • niter=1000: Set a relatively large number of iterations as a starting point.
  • interactive=True: Doing this interactively allows us to get a feel for the source structure and interactively place the mask.

Self-Calibration Process Outline

Each "round" of self-calibration follows a general procedure:

  1. Conservatively clean target. Using interactive clean, only include the pixels that you are absolutely certain are real emission as this will be the basis of the model for calibration.
  2. Use gaincal with a particular solution interval to calculate a table of solutions.
  3. Check the solutions using plotcal.
  4. Determine if the solutions should be applied (or if it is time to stop). Is there structure to the solutions?
  5. Use applycal to apply the table of solutions to the data.
  6. Use split to make the calibrated data with the applied solutions, the new data (the starting point for the next round of self-cal).
  7. Start the next round of self-cal.

This guide will cover:

  • How to do the self-calibration process in general.
  • How to determine optimal selfcal parameters (e.g. solution interval).
  • When to stop self-cal.

First Round of Self-Calibration

For this first round of self-cal, we will explore various parameters in order to settle on the optimal parameters.