; UVBAS
;---------------------------------------------------------------
;! averages several channels and subtracts from uv data.
;# Task UV SPECTRAL
;-----------------------------------------------------------------------
;;  Copyright (C) 1995, 2008, 2010, 2018
;;  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
;-----------------------------------------------------------------------
UVBAS     LLLLLLLLLLLLUUUUUUUUUUUU CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
UVBAS     Averages several channels and subtracts from uv data.
INNAME                             Input UV file name (name)
INCLASS                            Input UV file name (class)
INSEQ             0.0     9999.0   Input UV file name (seq. #)
INDISK            0.0        9.0   Input UV file disk unit #
SOURCES                            Source name
QUAL            -10.0              Calibrator qualifier -1=>all
CALCODE                            Calibrator code '    '=>all
TIMERANG                           Time range to use
SELBAND                            Bandwidth to select (kHz)
SELFREQ                            Frequency to select (MHz)
FREQID                             Freq. ID to select.
SUBARRAY          0.0     1000.0   Sub-array, 0=>all
BIF                                Low IF number to do
EIF                                Highest IF number to do
DOCALIB          -1.0      101.0   > 0 calibrate data & weights
                                   > 99 do NOT calibrate weights
GAINUSE                            CL (or SN) table to apply
DOPOL            -1.0       10.0   If >0.5 correct polarization.
PDVER                              PD table to apply (DOPOL>0)
BLVER                              BL table to apply.
FLAGVER                            Flag table version
DOBAND           -1.0       10.0   If >0.5 apply bandpass cal.
                                   Method used depends on value
                                   of DOBAND (see HELP file).
BPVER                              Bandpass table version
SMOOTH                             Smoothing function. See
                                   HELP SMOOTH for details.
DOACOR                             Include autocorrelations?
OUTNAME                            Output UV file name (name)
OUTCLASS                           Output UV file name (class)
OUTSEQ           -1.0     9999.0   Output UV file name (seq. #)
OUTDISK           0.0        9.0   Output UV file disk unit #.
BCHAN                              Lowest channel to write
ECHAN                              Highest channel to write
APARM                              1,2 & 3,4 channel ranges
BADDISK                            Disks to avoid for scratch
----------------------------------------------------------------
UVBAS
Task:  This task does a spectral baseline subtractraction by
       averaging two ranges of channels in the input data set
       and subtracting them from all channels. The two ranges
       count equally in determining the amount to be subtracted.
Adverbs:
  INNAME.....Input UV file name (name).      Standard defaults.
  INCLASS....Input UV file name (class).     Standard defaults.
  INSEQ......Input UV file name (seq. #).    0 => highest.
  INDISK.....Disk drive # of input UV file.  0 => any.
  SOURCES....Source to be baselined.   '  '=> all; if any starts with
             a '-' then all except ANY source named.   Only one source
             may be done at a time.
  QUAL.......Qualifier of source to be baselined. -1 => all.
  CALCODE....Calibrator code of sources to baseline. ' '=> all.
  TIMERANG...Time range of the data to be copied. In order: Start day,
             hour, min. sec, end day, hour, min. sec. Days relative to
             ref. date.
  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. For data which contain multiple
             bandwidths/frequencies the task will insist that some form
             of selection be made by frequency or bandwidth.
  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
             override that of FREQID.  However, setting SELBAND and
             SELFREQ may result in an ambiguity.  In that case, the task
             will request that you use FREQID.
  SUBARRAY...Sub-array number to copy. 0=>all.
  BIF........First IF to include.  0 -> 1.
  EIF........Last IF to include.   0 -> max.
  DOCALIB....If true (>0), calibrate the data using information in the
             specified Cal (CL) table for multi-source or SN table for
             single-source data.  Also calibrate the weights unless
             DOCALIB > 99 (use this for old non-physical weights).
  GAINUSE....version number of the CL table to apply to multi-source
             files or the SN table for single source files.
             0 => highest.
  DOPOL......If > 0 then correct data for instrumental polarization as
             represented in the AN or PD table.  This correction is
             only useful if PCAL has been run or feed polarization
             parameters have been otherwise obtained.  See HELP DOPOL
             for available correction modes: 1 is normal, 2 and 3 are
             for VLBI.  1-3 use a PD table if available; 6, 7, 8 are
             the same but use the AN (continuum solution) even if a PD
             table is present.
  PDVER......PD table to apply if PCAL was run with SPECTRAL true and
             0 < DOPOL < 6.  <= 0 => highest.
  BLVER......Version number of the baseline based calibration (BL) table
             to apply. <0 => apply no BL table, 0 => highest.
  FLAGVER....specifies the version of the flagging table to be applied.
              0 => highest numbered table.
             <0 => no flagging to be applied.
  DOBAND.....If true (>0) then correct the data for the shape of the
             antenna bandpasses using the BP table specified by BPVER.
             The correction has five modes:
             (a) if DOBAND=1 all entries for an antenna in the table
             are averaged together before correcting the data.
             (b) if DOBAND=2 the entry nearest in time (including
             solution weights) is used to correct the data.
             (c) if DOBAND=3 the table entries are interpolated in
             time (using solution weights) and the data are then
             corrected.
             (d) if DOBAND=4 the entry nearest in time (ignoring
             solution weights) is used to correct the data.
             (e) if DOBAND=5 the table entries are interpolated in
             time (ignoring solution weights) and the data are then
             corrected.
             IMAGR uses DOBAND as the nearest integer; 0.1 is therefore
             "false".
  BPVER......Specifies the version of the BP table to be applied
                0 => highest numbered table.
               <0 => no bandpass correction to be applied.
  SMOOTH.....Specifies the type of spectral smoothing to be applied to
             a uv database . The default is not to apply any smoothing.
             The elements of SMOOTH are as follows:
             SMOOTH(1) = type of smoothing to apply: 0 => no smoothing
               To smooth before applying bandpass calibration
                 1 => Hanning, 2 => Gaussian, 3 => Boxcar, 4 => Sinc
               To smooth after applying bandpass calibration
                 5 => Hanning, 6 => Gaussian, 7 => Boxcar, 8 => Sinc
             SMOOTH(2) = the "diameter" of the function, i.e. width
               between first nulls of Hanning triangle and sinc
               function, FWHM of Gaussian, width of Boxcar. Defaults
               (if < 0.1) are 4, 2, 2 and 3 channels for SMOOTH(1) =
               1 - 4 and 5 - 8, resp.
             SMOOTH(3) = the diameter over which the convolving
               function has value - in channels.  Defaults: 1,3,1,4
               times SMOOTH(2) used when input SMOOTH(3) < net
               SMOOTH(2).
  DOACOR.....> 0 => include autocorrelations as well as cross
             correlation data.
  OUTNAME....Output UV file name (name).     Standard defaults.
  OUTCLASS...Output UV file name (class).    Standard defaults.
  OUTSEQ.....Output UV file name (seq. #).   0 => highest unique
  OUTDISK....Disk drive # of output UV file. 0 => highest with
             space for the file.
  BCHAN......Lowest channel number in the input file to write to
             the output file. 0=> 1.
  ECHAN......Highest channel number in the input file to write
             to the output file. 0=> highest in input data.
  APARM......Channels APARM(1) to APARM(2) and APARM(3) to APARM(4)
             are to be averaged and subtracted from all channels.
             The average in each group of channels is done as a vector
             average.  The result is converted to amplitude and phase
             and that is subtracted from the data.
  BADDISK....The disk numbers to avoid for scratch files (sorting
             tables mostly).
;-----------------------------------------------------------------------
UVBAS: Task which subtracts continuum from channels in UV-plane
DOCUMENTOR: H.J. van Langevelde (Sterrewacht Leiden)

                          PURPOSE

    UVBAS will estimate the continuum visibilities and subtract
these from a specified range of channels, hopefully leaving only
the information about spectral features in the output UV-file.
In the channel ranges APARM(1)-APARM(2) and APARM(3)-APARM(4)
the data is averaged. Both complex numbers are then averaged to
get a first order accurate estimation for the continuum
visibility in the midpoint between these ranges. This value is
subtracted from the channels specified in BCHAN - ECHAN,
performing what in single dish is known as frequency switching
or baseline subtraction.

    This can only work properly if the UV coverage is the same
for all spectral line channels. It can, however, deal with
frequency dependent flagging.


                          COMMENTS

    This tasks has proved to be powerful in problems where
bandwith is small and extended continuum emission has to be
removed. Its accuracy is limited by the fact that the
visibilities in the uv plane change over the bandwith. The
errors made in the approximation of the continuum visibility
--and thus in the subtraction-- can be estimated as:

               d V      d u             d V      L
       D V  =  ---  *   ---  *  D v  =  ---  *  ---  *  D v
          L    d u      d v             d u      c

Where D V is the error, D v the bandwith over which we try to do
this and u a coordinate in UV-plane. L is the baseline length
specified in the same units as those used for c, the speed of
light.  The formula tells us that UVBAS should do an accurate
job on short baselines and/or small bandwith, provided there is
a reasonably smooth signature in the UV-plane. That means that
it will generally not work for a field dominated by discrte
(point)sources.

    In comparison with the method of cleaning the background and
UVSUB the components from the spectral line channels, this
method has the main advantages that it is 1) much faster, 2)
will work when the background is difficult to model with clean
components. When point- sources are the main source of continuum
emission the UVSUB method is perfectly suited. In some cases a
hybrid method may be advantageous.

    In comparison with averaging maps to estimate the continuum
this method is again faster and more reliable, since there will
be no sidelobs of the continuum in the map.

    The output data set can also be a powerful diagnostic tool.
In principle, the data can be used to apply selfcal on your
spectral line data.
