; SNPLT
;---------------------------------------------------------------
;! Plots selected contents of SN, TY, PC or CL files
;# Task UV Calibration Plot
;-----------------------------------------------------------------------
;;  Copyright (C) 1995-1996, 1999-2001, 2003-2005, 2007, 2009-2010
;;  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
;-----------------------------------------------------------------------
SNPLT     LLLLLLLLLLLLUUUUUUUUUUUU CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
SNPLT:  Task to plot selected contents of SN, TY, PC or CL file.
INNAME                             UV data (name).
INCLASS                            UV data (class).
INSEQ             0.0    9999.0    UV data (seq. #).  0 => high
INDISK            0.0       9.0    Disk unit #.  0 => any
INEXT                              Input 'SN','TY','PC', 'CL'
INVERS                             Input table file version no.
SOURCES                            Source list
QUAL            -10.0              Source qualifier -1=>all
TIMERANG                           Time range to plot
STOKES                             Stokes type to plot: R, L,
                                      RR, LL, RRLL, DIFF, RATO
SELBAND                            Bandwidth to plot (kHz)
SELFREQ                            Frequency to plot (MHz)
FREQID                             Freq. ID to plot, -1=>all
SUBARRAY         -1.0              Limit to subarray; 0 -> 1
                                      -1 -> all
BIF               0.0      100.0   First IF to plot, 0=>1.
EIF               0.0      100.0   Last IF to plot 0 -> highest
ANTENNAS                           Antennas to plot 0=>all
PIXRANGE                           Range to plot: 0 => self
                                   scale each antenna separately
NPLOTS            0.0      28.0    Number of plots per page
XINC              0.0     5000.0   Plot every XINC'th point
OPTYPE                             Data to be plotted:
                                   'PHAS','AMP ','DELA','MDEL',
                                   'RATE','TSYS','TANT','ATM ',
                                   'GEO ','DOPL','SNR ','SUM ',
                                   'CCAL','DDLY','REAL','IMAG',
                                   'IFR ' 'PDIF','PSUM','PGN ',
                                   'PON ','POFF','PSYS',
                                   ' '=phase
OPCODE                             Type of plot:
                                   'IFDF' => diff BIF and EIF
                                   'IFRA' => ratio BIF and EIF
                                   'ALIF' => combine all IFs
                                   'ALST' => combine all Stokes
                                   'ALSI' => all IFs & Stokes
DO3COL           -1.0        1.0   > 0 use 3-color symbols for
                                   ALIF, ALST, ALSI OPCODEs and
                                   SUM OPTYPE.
BCOUNT                             If INEXT ='PC' and OPTYPE =
                                   'AMP' or 'PHAS, BCOUNT
                                   specifies the phase cal tone
                                   number to be plotted. 0->1.
XAXIS                              Variable data is to be
                                   plotted against, 0=>time.
SYMBOL          0.0        24.0    Plot symbol number: 1 - 24
FACTOR        -10.0        10.0    Scale plot symbols by FACTOR
                                   <0 => connect points too
DOBLANK        -1.0        24.0    > 0, show blanked values with
                                   symbol type DOBLANK
CUTOFF                             Table weights <= CUTOFF will
                                   not be plotted, flagged data
                                   are not plotted.
LTYPE         -10.0        10.0    Type of labeling: 1 border,
                                   2 no ticks, 3 - 6 standard,
                                   7 - 10 only tick labels
                                   <0 -> no date/time
DOTV           -1.0         1.0    > 0 Do plot on the TV, else
                                   make a plot file
GRCHAN          0.0         8.0    Graphics channel
----------------------------------------------------------------
SNPLT
Type:  Task
Use:   Plots selected calibration data versus time from a specified SN,
       TY, PC or CL table.
       NOTE: FILLM and FITLD used to fill VLA and VLBA (resp) data
       with CL tables having weight 0.  These "data" (actually just
       (1,0) for (real,imag) gain) are "flagged" and that may be the
       reason for a failure to find any data to plot.  Of course, you
       are wasting time looking at (1,0)'s.  CL tables with
       interesting values in them will not be flagged in this way.
Adverbs:
  INNAME.....UV file name (name).       Standard defaults.
  INCLASS....UV file name (class).      Standard defaults.
  INSEQ......UV file name (seq. #).     0 => highest.
  INDISK.....Disk unit #.               0 => any.
  INEXT......'SN','TY, 'PC', 'SY', or 'CL' table to be plotted
  INVERS.....Version number of table to plot, 0=>highest no.
  SOURCES....Source list.  '*' = all; a "-" before a source name means
             all except ANY source named.
  QUAL.......Only sources with a source qualifier number in the SU table
             matching QUAL will be used if QUAL is not -1.
  TIMERANG...Time range of the data to be plotted. In order: Start day,
             hour, min. sec, end day, hour, min. sec. Days relative to
             reference date.  If a start and stop time are given and
             the XAXIS is 1 (time), then all plots will be from the
             given start time to the given stop time.  Otherwise, the
             X-axis is plotted over the range of X values found in the
             data.  All plots in a given execution will be on the same
             X scale in any case.
  STOKES.....The desired Stokes type of the displayed data:
             'R' = RCP, 'L' = LCP, 'RL' or 'RRLL' both RCp and LCP
             'DIFF' = vector difference between RCP and LCP.  Thus, if
                 OPTYPE='AMP', the result will not be zero even when
                 both polarizations have the same amplitude if the
                 phases differ.
             'RATO' = ratio between RCP and LCP - done for amplitudes,
                 system and antenna temperatures, and SNRs only.
  SELBAND....Bandwidth of data to be selected.  If more than one IF is
             present SELBAND is the width of the first IF required.
             Units = kHz.
  SELFREQ....Frequency of data to be selected. If more than one IF is
             present SELFREQ is the frequency of the first IF required.
             Units = MHz.
  FREQID.....Frequency identifier to select (you may determine which is
             applicable from the OPTYPE='SCAN' listing produced by
             LISTR).  If either SELBAND or SELFREQ are set, their values
             overide that of FREQID.  However, setting SELBAND and
             SELFREQ may result in an ambiguity.  In that case, the task
             will request that you use FREQID.  -1 => all, 0 => first
  SUBARRAY...Limit display to specific subarray.  -1 -> all, 0 -> 1.
  BIF........First IF IF to plot
  EIF........Last IF to plot.
             If OPCODE = 'IFDF'/'IFRA' will plot difference/ratio of
             specified quantity between BIF and EIF.
  ANTENNAS...A list of the antennas to be plotted. All 0 => all.  If any
             number is negative then all antennas listed are NOT to be
             plotted and all others are.
  PIXRANGE...If PIXR(1) < PIXR(2), all plots will be from PIXR(1) to
             PIXR(2).  Otherwise each plot will be self-scaling.
  NPLOTS.....Number of antennas to plot per page (try 5).
  XINC.......Plot every XINC'th point, 0 => 1.
  OPTYPE.....Data to be plotted:
             'PHAS' = phase,
             'AMP ' = amplitude,
             'DELA' = singleband delay (SN & CL)
             'MDEL' = multiband delay (SN & CL)
             'RATE' = rate (SN, CL & PC)
             'TSYS' = sys. temp. (TY)  (for VLA is nominal sensitivity)
             'TANT' = ant. temp. (TY)  (for VLA either back- or
                                        front-end system temperature)
             'ATM'  = atm. delay (CL)
             'GEO'  = geometric delay (CL)
             'DOPL' = doppler offset (CL)
             'SNR'  = signal/noise (SN & CL)
             'DDLY' = dispersive delay (SN & CL)
             'CCAL' = cable cal (PC)
             'SUM ' = all ampl. and all phases on a single plot.
                      PIXRANGE controls amplitude scaling  and phases
                      are auto scaled.
             'REAL' = real part
             'IMAG' = imag part
             'IFR ' = Ionospheric Faraday rotation (affects pol cal)
                      (SN & CL)
             'PDIF' = EVLA Gb * (Pon - Poff)  (SY)
             'PSUM' = EVLA Gb * (Pon + Poff)  (SY)
             'PGN ' = EVLA post sync-detector gain = Gb   (SY)
             'PON ' = EVLA Pon  (noise tube on) (SY)
             'POFF' = EVLA Poff  (noise tube off) (SY)
                      Note that PON and POFF give numbers smaller than
                      PDIF and PSUM by the factor Gb which is, by
                      default, 512 and usually ranges in the 400's
                      when it has been set.
             'PSYS' = EVLA PSUM/PDIF/2 * Tcal (=Tsys) (SY)
                      uses values from the CD table
             '    ' => 'PHAS'
  OPCODE.....Type of plot:
             'IFDF' => will plot differences between IF's of OPTYPE
                    data, i.e. if OPCODE= 'IFDF', OPTYPE ='DELA' and
                    BIF = 3, EIF = 6, will plot delay difference
                    between IF's 3 and 6.
             'IFRA' = ratio between IF's BIF and EIF - done for
                    amplitudes, system and antenna temperatures, and
                    SNRs only.  Changes to IFDF for others.
             'ALIF' => will plot OPTYPE data for all IFs (BIF through
                    EIF) on a single plot (antennas and polarizations
                    are plotted separately).
             'ALST' => will plot OPTYPE data for both polarizations (R
                    and L) on a single plot (antennas and IFs are
                    plotted separately).
             'ALSI' => will plot OPTYPE data for both polarizations (R
                    and L) and all IFs (BIF through EIF) on a single
                    plot (antennas are plotted separately).
             other  => will plot each request polarization, each
                    requested IF and each each requested antenna
                    individually looping in that order.
  DO3COL.....> 0 => use 3-color to separate IFs and Stokes in the
             ALIF, ALST, ALSI modes.  Line types 3 and 4 will be used
             if there only 2 Stokes to plot, otherwise red -> blue
             will be from IF BIF Stokes 1 to IF EIF Stokes 2.
             For summary mode, color is used for antenna number 1-N
             being red to blue.
             <= 0 => use line type 4 for all points plotted.
  BCOUNT.....If INEXT ='PC', and OPTYPE = 'AMP' or 'PHAS' then BCOUNT
             specifies the phase cal tone number to be plotted. 0 -> 1.
  XAXIS......Variable data is to be plotted against. 0=> 1
              (1) = Data label time
              (2) = Antenna elevation
              (3) = Hour angle
              (4) = Local Sidereal Time
  SYMBOL.....1: Plus sign (default)   12: Five pointed star
             2: Cross (X)             13: Star of David
             3: Circle                14: Seven-pointed star
             4: Box                   15: Eight-pointed star
             5: Triangle              16: Nine-pointed star
             6: Diamond               17: Ten-pointed star
             7: Pentagon              18: 11-pointed star
             8: Hexagon               19: 12-pointed star
             9: Septagon              20: 13-pointed star
             10: Octagon              21: 14-pointed star
             11: Nine-gon             22: Plus with gap
                                      23: vertical line
                                      24: Cross with gap
  FACTOR.....Scale plot symbols by FACTOR     0 -> 1.
             If FACTOR < 0, draw lines between the points and use
             abs(FACTOR) to scale the points plotted.
  DOBLANK....> 0 => plot blanked solutions with a symbol of type
             DOBLANK (see symbol types above).  They will be plotted
             along the lower edge of each plot.  NOTE: if DOTV true
             and GRCHAN 0 and DO3COL <= 0, then the blanked samples
             will be in the color of graphics channel 3 (pink) and the
             good samples in the color of graphics channel 4 (blue).
             DOBLANK > 0 is forced to be different than SYMBOL by
             adding 1.
  CUTOFF.....If >= 0, the task will examine the weight column of the
             table and if the weight <= CUTOFF, the task will not plot
             that sample.  If = 0, will plot all good points; flagged
             data are not plotted.  CUTOFF is ignored for TY and PC
             tables and OPTYPEs MDEL, ATM, GEO, and CCAL.
  LTYPE......Labelling type: 1 = border, 2 = no ticks, 3 - 10 =
             standard, with  7-10 all labels other than tick numbers and
             axis type are omitted.  Less than 0 is the same except that
             the plot file version number and create time are omitted.
  DOTV.......> 0 => plot directly on the TV device, otherwise make a
             plot file for later display on one or more devices
             (including the TV if desired).
  GRCHAN.....Graphics channel (1 - 7) to use for line drawing.
             A value of 0 causes more than one graphics channel to be
             used.
----------------------------------------------------------------
