; CALCODE
;---------------------------------------------------------------
;! specifies the type of calibrator to be selected
;# ADVERB CALIBRATION
;-----------------------------------------------------------------------
;;  Copyright (C) 1995, 2010, 2020
;;  Associated Universities, Inc. Washington DC, USA.
;;
;;  This program is free software; you can redistribute it and/or
;;  modify it under the terms of the GNU General Public License as
;;  published by the Free Software Foundation; either version 2 of
;;  the License, or (at your option) any later version.
;;
;;  This program is distributed in the hope that it will be useful,
;;  but WITHOUT ANY WARRANTY; without even the implied warranty of
;;  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;  GNU General Public License for more details.
;;
;;  You should have received a copy of the GNU General Public
;;  License along with this program; if not, write to the Free
;;  Software Foundation, Inc., 675 Massachusetts Ave, Cambridge,
;;  MA 02139, USA.
;;
;;  Correspondence concerning AIPS should be addressed as follows:
;;         Internet email: aipsmail@nrao.edu.
;;         Postal address: AIPS Project Office
;;                         National Radio Astronomy Observatory
;;                         520 Edgemont Road
;;                         Charlottesville, VA 22903-2475 USA
;-----------------------------------------------------------------------
CALCODE   LLLLLLLLLLLLUUUUUUUUUUUU CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
----------------------------------------------------------------
CALCODE
Type: Adverb  (String*4)
Use:  This string is used to specify a desired calibration
      source code.
      '    ' => any calibrator code selected
      '*   ' => any non blank code (calibrators only)
      '-CAL' => blank codes only (no calibrators)
Null value: none

The VLA has attached meaning to letters as follows:

None = target source, or no potential calcode specified

Old style VLA (indicators of positional accuracy):
    A = positional accuracy <0.002  arcseconds
    B = positional accuracy  0.002 - 0.01  arcseconds
    C = positional accuracy  0.01 - 0.15  arcseconds
    T = positional accuracy >0.15  arcseconds

New style EVLA (indicators of scan intents):
    D = calibrator useful to determine Complex Gains
    E = calibrator useful to determine the absolute Flux Density
        Scale; typically only used for 3C48, 3C147, 3C286 (and 3C138,
        3C295)
    F = calibrator useful to determine the spectral Bandpass response
    G = calibrator useful to determine Polarization Angle
    H = calibrator useful to determine the instrumental Polarization
        Leakage
    I = calibrator for Complex Gain and Bandpass
    J = calibrator for Complex Gain and Polarization Leakage
    K = calibrator for Flux Density Scale and Bandpass
    L = calibrator for Flux Density Scale and Polarization Angle
    M = calibrator for Bandpass and Polarization Angle
    N = calibrator for Flux Density Scale, Bandpass and Polarization
        Angle
    O = calibrator for Complex Gain and Flux Density Scale
    P is reserved for pointing scans
    Q = calibrator for Complex Gain, Flux Density Scale and Bandpass
    R = calibrator for Complex Gain, Flux Density Scale, Bandpass and
        Polarization Angle
    Y = recognised as calibrator source in the VLA catalog by the
        pipeline; only appears when no other calcodes are present and
        NOT an indication that this calibrator is useful at this
        frequency or in this array (a source recognition only)
    Z = any other non-Target combination of intents

Occasional VLBA:
    V = recognised as VLBI source in the VLBI "sched" catalog

Code   Gain Flux  BP Pang  P%
  D      X
  E           X
  F               X
  G                    X
  H                        X
  I      X        X
  J      X                 X
  K           X   X
  L           X        X
  M               X    X
  N           X   X    X
  O      X    X
  Q      X    X   X
  R      X    X   X    X

The VLBA has attached different meanings on occasion as well to some
of the EVLA codes.
Verbs:
   BDF2AIPS......Read EVLA ASDM/BDF data into AIPS.
   OBITIMAG......Access to OBIT task Imager without self-cal or peeling.
   OBITPEEL......Access to OBIT task Imager with self-cal and peeling.
   OBITSCAL......Access to OBIT task Imager with self-cal, NOT peeling.
Procedures:
   LINIMAGE......Build image cube from multi-IF data set.
   VLACALIB......Runs CALIB and LISTR for VLA observation.
   VLACLCAL......Runs CLCAL and prints the results with LISTR.
   VLALIST.......Runs LISTR for VLA observation.
   VLBABPSS......Computes spectral bandpass correction table.
Tasks:
   ACFIT.........Determine antenna gains from autocorrelations.
   ACLIP.........Edits suto-corr data for amplitudes, phases, and weights
                 out of range.
   ACSCL.........Corrects cross amplitudes using auto correlation
                 measurements.
   ALVAR.........Plots the Allan Variance statistic of a UV data set.
   ALVPR.........Prints statistics on the Allan Variance of a UV data set.
   ANBPL.........Plots and prints uv data converted to antenna based
                 values.
   AVSPC.........Averages uv-data in the frequency domain.
   BLING.........Find residual rate and delay on individual baselines.
   BPASS.........Computes spectral bandpass correction table.
   BPWAY.........Determines channel-dependent relative weights.
   BPWGT.........Calibrates data and scales weights by bandpass
                 correction.
   BSCAN.........Seeks best scan to use for phase cal, fringe search, ..
   CALIB.........Determines antenna calibration: complex gain.
   CAPLT.........Plots closure amplitude and model from CC file.
   CLCAL.........Merges and smooths SN tables, applies them to CL tables.
   CLIP..........Edits data based on amplitudes, phases, and weights out
                 of range.
   CLPLT.........Plots closure phase and model from CC file.
   CORER.........Calculates correlator statistics and flags bad ones.
   CPASS.........Computes polynomial spectral bandpass correction table.
   DECOR.........Measures the decorrelation between channels and IF of uv
                 data.
   DEFLG.........Edits data based on decorrelation over channels and time.
   DFTIM.........Makes image of DFT at arbitrary point showing time vs
                 frequency.
   DFTPL.........Plots DFT of a UV data set at arbitrary point versus
                 time.
   DIFRL.........Divides the RR data by LL data.
   DTSUM.........Task to provide a summary of the contents of a dataset.
   EDITR.........Interactive baseline-oriented visibility editor using the
                 TV.
   ELINT.........Determines and removes gain dependence on elevation.
   EVAUV.........Subtracts & divides a model into UV data, does statistics
                 on results.
   FGCNT.........Counts samples comparing two flag tables.
   FGDIF.........Compares affect of 2 FG tables.
   FGSPW.........Flags bad spectral windows.
   FILLM.........Reads VLA on-line/archive format uv data tapes (post Jan
                 88).
   FINDR.........Find normal values for a uv data set.
   FLAGR.........Edit data based on internal RMS, amplitudes, weights.
   FLGIT.........Flags data based on the rms of the spectrum.
   FLOPM.........Reverses the spectral order of UV data, can fix VLA
                 error.
   FRING.........Fringe fit data to determine antenna calibration, delay,
                 rate.
   FRMAP.........Task to build a map using fringe rate spectra.
   FRPLT.........Task to plot fringe rate spectra.
   FTFLG.........Interactive flagging of UV data in channel-time using the
                 TV.
   FUDGE.........Modifies UV data with user's algorithm: paraform task.
   GETJY.........Determines calibrator flux densities.
   IBLED.........Interactive BaseLine based visibility EDitor.
   IMAGR.........Wide-field and/or wide-frequency Cleaning / imaging task.
   KRING.........Fringe fit data to determine antenna calibration, delay,
                 rate.
   LISTR.........Prints contents of UV data sets and assoc. calibration
                 tables.
   NOIFS.........Makes all IFs into single spectrum.
   PCAL..........Determines instrumental polarization for UV data.
   PCFLG.........Interactive flagging of Pulse-cal data in channel-TB
                 using the TV.
   PHSRF.........Perform phase-referencing within a spectral line
                 database.
   POSSM.........Task to plot total and cross-power spectra.
   PRTSY.........Task to print statistics from the SY table.
   REFLG.........Attempts to compress a flag table.
   REWAY.........Computes weights based in rms in spectra.
   RFI...........Look for RFI in uv data.
   RFLAG.........Flags data set based on time and freq rms in fringe
                 visibilities.
   RLCAL.........Determines instrumental right-left phase versus time (a
                 self-cal).
   RLDIF.........Determines Right minus Left phase difference, corrects
                 cal files.
   RLDLY.........Fringe fit data to determine antenna R-L delay
                 difference.
   SETJY.........Task to enter source info into source (SU) table.
   SHOUV.........Displays uv data in various ways.
   SOUSP.........Fits source spectral index from SU table or adverbs.
   SPFLG.........Interactive flagging of UV data in channel-TB using the
                 TV.
   SPLAT.........Applies calibration and splits or assemble selected
                 sources.
   SPLIT.........Converts multi-source to single-source UV files w
                 calibration.
   SPMOD.........Modify UV database by adding a model with spectral lines.
   SPRMS.........Plots spectral statistics of a selected subset of a uv
                 data set.
   SUFIX.........Modifies source numbers on uv data.
   SWAPR.........Modifies UV data by swapping real and imaginary parts.
   SYPRT.........Task to print values from the SY table.
   TI2HA.........Modifies times in UV data to hour angles.
   TIORD.........Checks data for time baseline ordering, displays
                 failures.
   TRUEP.........Determines true antenna polarization from special data
                 sets.
   TVFLG.........Interactive flagging of UV data using the TV.
   UFLAG.........Plots and edits data using a uv-plane grid and the TV.
   UV2MS.........Append single-source file to multi-source file.
   UV2TB.........Converts UV autocorrelation spectra to tables.
   UVAVG.........Average or merge a sorted (BT, TB) uv database.
   UVBAS.........Averages several channels and subtracts from uv data.
   UVFLG.........Flags UV-data.
   UVFND.........Prints selected data from UV data set to search for
                 problems.
   UVFRE.........Makes one data set have the spectral structure of
                 another.
   UVHGM.........Plots statistics of uv data files as histogram.
   UVHIM.........Makes image of the histogram on two user-chosen axes.
   UVHOL.........Prints holography data from a UV data base with
                 calibration.
   UVLIN.........Fits and removes continuum visibility spectrum, also can
                 flag.
   UVLSD.........Least squares fit to channels and divides the uv data.
   UVLSF.........Least squares fit to channels and subtracts from uv data.
   UVMLN.........Edits data based on the rms of the spectrum.
   UVMOD.........Modify UV database by adding a model incl spectral index.
   UVMTH......... Averages one data set and applied it to another.
   UVPLT.........Plots data from a UV data base in multiple ways.
   UVPRM.........Measures parameters from a UV data base.
   UVPRT.........Prints data from a UV data base with calibration.
   UVRFI.........Mitigate RFI by Fourier transform or fitting the circle.
   UVRMS.........Computes statistics of a selected subset of a uv data
                 set.
   VPLOT.........Plots uv data and model from CC file.
   WIPER.........Plots and edits data from a UV data base using the TV.
   XYDIF.........Find/apply X minus Y linear polarization phase
                 difference.
   XYMOD.........Compute linear polarization point source model, applies
                 to data.
----------------------------------------------------------------
