%-----------------------------------------------------------------------
%;  Copyright (C) 2009, 2011, 2016, 2022
%;  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
%-----------------------------------------------------------------------
\documentclass[twoside]{article}
% Highlight new text.
\usepackage{color}
\usepackage{alltt}
\definecolor{hicol}{rgb}{0.7,0.1,0.1}
\definecolor{mecol}{rgb}{0.2,0.2,0.8}
\definecolor{excol}{rgb}{0.1,0.6,0.1}
\newcommand{\Hi}[1]{\textcolor{hicol}{#1}}
%\newcommand{\Hi}[1]{\textcolor{black}{#1}}
\newcommand{\Me}[1]{\textcolor{mecol}{#1}}
%\newcommand{\Me}[1]{\textcolor{black}{#1}}
\newcommand{\Ex}[1]{\textcolor{excol}{#1}}
%\newcommand{\Ex}[1]{\textcolor{black}{#1}}
\newcommand{\No}[1]{\textcolor{black}{#1}}
\newcommand{\hicol}{\color{hicol}}
%\newcommand{\hicol}{\color{black}}
\newcommand{\mecol}{\color{mecol}}
%\newcommand{\mecol}{\color{black}}
\newcommand{\excol}{\color{excol}}
%\newcommand{\excol}{\color{black}}
\newcommand{\hblack}{\color{black}}
%
\newcommand{\AIPS}{{$\cal AIPS\/$}}
\newcommand{\eg}{{\it e.g.},}
\newcommand{\ie}{{\it i.e.},}
\newcommand{\nstokes}{$n_{stokes}$}
\newcommand{\nband}{$n_{band}$}
\newcommand{\nchan}{$n_{chan}$}
\newcommand{\ntone}{$n_{tone}$}
\newcommand{\norb}{$n_{orb}$}
\newcommand{\npoly}{$n_{poly}$}
\newcommand{\npcal}{$n_{pcal}$}
\newcommand{\ntab}{$n_{tab}$}
\newcommand{\nbach}{$n_{bach}$}
\newcommand{\whatmem}{\AIPS\ Memo \memnum}
\newcommand{\boxit}[3]{\vbox{\hrule height#1\hbox{\vrule width#1\kern#2%
\vbox{\kern#2{#3}\kern#2}\kern#2\vrule width#1}\hrule height#1}}
%
\newcommand{\memnum}{114}
\newcommand{\memtit}{The FITS Interferometry Data Interchange
      \Hi{Convention}\Me{\ --- Revised}}
\title{
   \vskip -35pt
   \fbox{{\large\whatmem}} \\
   \vskip 28pt
   \memtit \\}
\author{Eric W. Greisen}
%
\parskip 4mm
\linewidth 6.5in                     % was 6.5
\textwidth 6.5in                     % text width excluding margin 6.5
\textheight 8.91 in                  % was 8.81
\marginparsep 0in
\oddsidemargin .25in                 % EWG from -.25
\evensidemargin -.25in
%\topmargin -.5in
\topmargin 0.2in
\headsep 0.25in
\headheight 0.25in
\parindent 0in
\newcommand{\normalstyle}{\baselineskip 4mm \parskip 2mm \normalsize}
\newcommand{\tablestyle}{\baselineskip 2mm \parskip 1mm \small }
%
%
\begin{document}

\pagestyle{myheadings}
\thispagestyle{empty}

\newcommand{\Rheading}{\whatmem \hfill \memtit \hfill Page~~}
\newcommand{\Lheading}{~~Page \hfill \memtit \hfill \whatmem}
\markboth{\Lheading}{\Rheading}
%
%

\vskip -.5cm
\pretolerance 10000
\listparindent 0cm
\labelsep 0cm
%
%

\vskip -30pt
\maketitle
\tableofcontents
\vfill\eject

\normalstyle
\begin{abstract}
\Hi{The FITS Interferometry Data Interchange Convention (``FITS-IDI'')
  is a set of conventions layered upon the standard FITS format to
  assist in the interchange of data recorded by interferometric
  telescopes, particularly at radio frequencies and very long
  baselines.  It is in use for the VLBA telescope for data from the
  current hardware correlator and the future software correlator and
  has also been used with other correlators such as the JIVE
  correlator for the EVN.  This convention is intended to separate a
  standard set of conventions from those used within particular
  software packages such as \AIPS.}
\end{abstract}

\renewcommand{\floatpagefraction}{0.75}
\typeout{bottomnumber = \arabic{bottomnumber} \bottomfraction}
\typeout{topnumber = \arabic{topnumber} \topfraction}
\typeout{totalnumber = \arabic{totalnumber} \textfraction\ \floatpagefraction}

\section{Preface}

\Hi{The original proposal for the FITS Interferometry Data Interchange
Convention (``FITS-IDI'') was made in 1997 by Diamond, et
al.~\cite{DBCWRH97}.  The format actually adopted by the VLBA
Correlator differed from this proposal in a number of ways, causing
Flatters\cite{F98} to re-draft the proposal in late 1998.
Unfortunately, the text file from which this beautifully formatted
PostScript document was produced has been lost, which means that it is
unable to be revised.  This Memo is therefore, initially, a
transcription of \cite{F98} without the beautiful formatting.  It will
then be revised as required to add new capabilities and to clarify the
text.  Corrections and other basic additions are shown in red.}
\Me{Specific additions to the Convention made during the IAU FITS
  Working Committee comment period are present in blue.}

\Hi{The FITS format was initially defined in a series of published
papers, but has been revisited by standards committees.  The official,
IAU-adopted version 3.0 of the fits standard \cite{Fst08} and a large
amount of supporting documentation may be found at the web site
{\tt http://fits.gsfc.nasa.gov/}.  All papers defining FITS over the
years may be downloaded via this site.  FITS-IDI files must conform to
the 3.0 standard.}

The theory of interferometry is described in Thompson, Moran, and
Swenson \cite{TMS01}.  The definitions of interferometric quantities
that are used in this text correspond to those assumed in the present
document except where explicitly noted.

To use this document, begin by reading the preface and introduction.
The preface introduces the notation used in this document while the
introduction provides an overview of the contents of a FITS-IDI file
and introduces the terminology and conventions used to describe these
data.  The remaining chapters contain reference materials and may be
read in any order.

In the interests of keeping this document to a reasonable length, the
reference chapters do not make any specific mention of any elements
that can be inferred to be present from the requirements that FITS-IDI
files be valid FITS files, as defined by version 3.0 of the standard,
unless they have some additional meaning in the context of a FITS-IDI
file (\eg\ NAXIS values in tables).  Although they are omitted from
this document, these elements should be taken to be mandatory in
FITS-IDI files.

Character strings that should appear in FITS-IDI files exactly as they
are written will be presented in a {\tt typewriter-like }font.  This
font will also be used for the names of computer programs.
Character-string values for FITS header keywords will be marked with
single quotation marks, as in {\tt `a character string'}; the
quotation marks do not form a part of the string value \Hi{but are
required delimiters}.  Some keywords used in FITS files consist of a
fixed portion followed by an integer suffix that may be different in
different context.  These will be indicated like {\tt NAXIS}{\it n},
where the {\it n} denotes the integer suffix.  Parameters that may
have different values under different circumstances are denoted in
{\it italic font}.

The use of the word ``shall'' in this document should be interpreted
as indicating a requirement on a FITS-IDI file.  The use of the words
``shall not'' should be interpreted as indicating a prohibition.

Each keyword in a FITS header is associated with a value that has a
specific type.  In this document, these types are denoted by the
letters shown in Table~1.

\vfill\eject
\begin{center}
\underline{\bf{TABLE 1: Type codes for keyword values}}\\
\begin{tabular}{cl}
\noalign{\vspace{2pt}}
\underline{{\bf Code\vphantom{y}}} & \underline{\bf{Type}} \\
\noalign{\vspace{2pt}}
 I & integer number \\
 L & logical \\
 A & character string \\
 E & floating-point number \\
 D & date string
\end{tabular}
\end{center}

A date is a character string in one of two specific formats.  The
first format is \hbox{\tt{'{\it DD\/}/{\it MM\/}/{\it YY\/}'}}, where
{\it DD} is a two-digit day number, {\it MM} is a two-digit month
number, and {\it YY} is a two-digit year number, \Hi{suitable for use
during the twentieth century.  The preferred format} is
\hbox{\tt{'{\it YYYY\/}-{\it MM\/}-{\it DD\/}'}}, where {\it YYYY} is
a four-digit year number \Hi{suitable for use in any recent century}.
Although the FITS standard allows times to be appended to the second
form of a date string, times should not be appended to date strings in
FITS-IDI files.

Each column in a FITS binary table has a type which denotes the
\Hi{kind} of values that may appear in that column.  Each column holds
a one-dimensional array of some base type with a fixed number of
elements.  The base type of an array is denoted by a single-character
code in this document.  These codes correspond to those used for the
{\tt TFORM}{\it n} values in the table header and are listed in
Table~2.

\begin{center}
\underline{\bf{TABLE 2: Basic types for fields in binary tables}}\\
\begin{tabular}{cl}
\noalign{\vspace{2pt}}
\underline{{\bf Code\vphantom{y}}} & \underline{\bf{Type}} \\
\noalign{\vspace{2pt}}
 L & logical \\
 I & 16-bit integer \\
 J & 32-bit integer \\
 A & character \\
 E & 32-bit floating-point number \\
 D & 64-bit floating-point number
\end{tabular}
\end{center}

In the simplest case, the number of elements in the array is given as
a repeat count preceding the code for the basic type, \eg\ {\tt 4J}
for an array of four 32-bit integers.  Some fields are, however,
considered to be multi-dimensional arrays in FITS-IDI tables despite
being declared as one-dimensional arrays in the FITS headers.  In
these cases, the array dimensions will appear in parentheses following
the basic type, \eg\ {\tt E(4, 32)} for a two-dimensional array with 4
\Hi{columns} and 32 \Hi{rows}.  In the table header, the repeat count
\Hi{shall} be the product of all the dimensions and the data in the
array \Hi{shall} be laid out so that the index of the first dimension
varies fastest, followed by the second dimension, and so on.  \Hi{\it
The FITS-IDI Convention does not use the multi-dimensional array
convention of the FITS standard and programs that read FITS-IDI files
should not rely on the presence of {\tt TDIM}{\it n} keywords.}  This
document occasionally uses a parenthesized dimension for
one-dimensional arrays instead of a repeat-count prefix.

Character strings are a special case in that a one-dimensional array
of characters should be taken to be a single string rather than an
array of separate characters.  Repeat-count prefixes will always be
used to describe columns that contain character strings.

A number of arrays have dimensions that depend on the parameters of
the data set or of the table to which they belong.  The notations used
for these parameters are listed in Table~3.

\vfill\eject
\begin{center}
\underline{\bf{TABLE 3: Data set parameters}}\\
\begin{tabular}{ll}
\noalign{\vspace{2pt}}
\underline{{\bf Notation\vphantom{y}}} &
    \underline{\bf{Parameter\vphantom{y}}} \\
\noalign{\vspace{2pt}}
 \nstokes & Number of Stokes parameters in the data set \\
 \nband   & Number of bands in the data set \\
 \nchan   & Number of spectral channels in the data set \\
 \ntone   & Maximum number of pulse-cal tones in {\tt PHASE-CAL} table \\
 \norb    & Number of orbital parameters in an {\tt \Me{ARRAY}\_GEOMETRY}
            table\\
 \npoly   & Number of terms in a delay polynomial in an {\tt
            INTERFEROMETER\_MODEL} table \\
 \ntab    & Maximum number of tabulated values or terms for a gain
            curve in a {\tt GAIN\_CURVE} table
\end{tabular}
\end{center}

\section{Introduction}

A FITS-IDI file contains raw visibility data and the information that
is required in order to be able to interpret those data.  It may also
contain information that may be used to calibrate the raw data.
Astronomical institutions may use the FITS-IDI format to exchange data
with other institutions or to archive data.

The information contained in a FITS-IDI file is carried in a set of
FITS binary tables.  This makes the FITS-IDI \Hi{Convention} more
resilient to media errors than the random-groups FITS format that is
commonly used to transport radio interferometry data.  The effects of
a single media error are confined to the table in which it occurs in a
FITS-IDI file while a single media error may render an entire
random-groups file unusable.  Programs that write FITS-IDI files may
break the data into many small tables \Hi{in multiple physical files}
to minimize the risk to the data.  \Hi{Furthermore, the use of the
random-groups form has been ``deprecated'' by the international FITS
community; readers for table-format files are widespread in the
community, whilst random-groups readers are quite restricted in
occurrence.}

\subsection{Visibility data}
\label{Intr:visdata}

The main content of a FITS-IDI file is visibility data.  This is
stored on one or more {\tt UV\_DATA} tables.

Measurements of the visibility function depend on several parameters
including the antenn\ae\ from which the signals are correlated, the
polarizations of the feeds that were used at each antenna, the
coordinates of the interferometer baseline, the sky frequency to which
the measurement corresponds, \Hi{and so forth}.

Some of these parameters may be mapped onto a regular grid.  These
parameters are termed {\it regular parameters.}  Visibility
measurements are arranged in a multi-dimensional {\it data matrix} in
which each axis corresponds to a regular parameter.  Grid cells are
numbered along each axis starting with one.  The general form of the
mapping between cells in the data matrix and the regular parameters is
established for each axis by specifying a {\it reference value} for
the parameter $c_{\Hi{ref}}$, the grid coordinate or {\it reference pixel}
coordinate to which this value applies $p_{ref}$ (not necessarily an
integer) and the increment in the parameter value between grid cells
$\Delta c$.  The parameter value corresponding to a cell at location
$i$ on the axis in question is then given by Eq.~\ref{eq:WCS}.
\begin{equation}
c = c_{\Hi{ref}} + (i - p_{ref}) \cdot \Delta c   \label{eq:WCS} \, .
\end{equation}
Frequency coordinates are a special case and will be dealt with
below; see Section~\ref{Intr:freq} on page~\pageref{Intr:freq}.

Those parameters that are not mapped to axes of the data matrix are
termed {\it random parameters}.  Visibility data in a FITS-IDI file
are stored as a set of data matrices, each of which is labeled by a
set of random parameter values.  Every data matrix has the same
dimensions and is labeled using the same list of random parameters.

Each visibility measurement is recorded as a complex number and is
assigned a real weight.  There are \Me{three} possible weighting
conventions:
\begin{enumerate}
\item{\ The weight may be assigned a number between 0.0 and 1.0 and
  represents the fraction of the integration time for which valid data
  were accumulated.  In this case it is assumed that the visibility
  data in the FITS-IDI file should be normalized by dividing by the
  weight whenever the weight is not zero.}
\item{\ The weight may be a data validity flag which either has the
  value 0.0 if the measurement is not valid or the value 1.0 if the
  measurement is valid.}
\mecol
\item{\ The weight may be any number representing the uncertainty in
  the units used for the visibilities to the $-2$ power.  These
  weights are not used to scale the visibility data.  Weights less
  than or equal 0.0 indicate that the data are invalid.  These weights
  are then similar to the weights used in many software packages.  The
  use of this type of weight shall be indicated by a table keyword.}
\hblack
\end{enumerate}
Note that the second case can be regarded as a special case of the
first in which data are either accumulated for the whole integration
period or not at all.
%  \Hi{Note also that these correlation weights
%  are not the same as those used by software packages, such as \AIPS,
%  in which weights do not scale visibilities and are in units of
%  JY$^{-2}$.}

A visibility measurement is assumed to be formed from the product of
the output of the first antenna of a baseline pair and the complex
conjugate of the output from the second antenna of the pair while
baseline coordinates are assumed to be the coordinates of the first
antenna of the pair with respect to the second antenna of the pair.
Both conventions are consistent with those used in Thompson, Moran, \&
Swenson (2001) \cite{TMS01} and the NRAO Summer School lectures on
synthesis imaging \Hi{\cite{SS99}.  However, this phase convention is
the opposite of that used internally, and in the FITS files written
by, the \AIPS\ software package,} although the baseline convention is
the same.

\subsection{Arrays}

The antenn\ae\ used for observations in a FITS-IDI file are grouped
into {\it arrays}.  There must be at least one array in the file and
each array is assigned a \Hi{positive} number.  The array numbers must
be contiguous \Hi{and} must start with one.

A single antenna may belong to more than one array, but cannot be
observing as part of more than one array at any given time.
\Hi{Antenna pairs} (``interferometers'') may only be formed between
antenn\ae\ that are observing as members of the same array.

Each array has a corresponding {\tt ARRAY\_GEOMETRY} table in the
FITS-IDI file.  This table contains information about the time system
used by the array and the coordinates of the antenn\ae\ that form the
array.  It also specifies an {\it array reference frequency}.
Frequencies for observations taken using this array are given relative
to this frequency.

\subsection{Frequency setups}
\label{Intr:freq}

In general, a correlator produces visibility measurements at a fixed
number of evenly spaced frequency channels.  Each such grouping of
frequencies is termed a {\it band}.  A single interferometer can
produce data for several bands \Hi{simultaneously}.  The FITS-IDI
\Hi{Convention} assumes that each interferometer used in the
observations produces the same number of bands and labels them by
number from 1 to \nband\ so that the band number may be mapped onto
one axis of the data matrix.  Each band is assumed to have an
identical number of channels \Hi{\nchan}\ and the channels are mapped
to another axis of the data matrix.

\Hi{Each band $b$ is characterized by a frequency offset
$\nu_{off}(b)$, a channel bandwidth $\Delta \nu(b)$ which is always
positive,} and a sideband.  The frequency at the {\it center} of
channel $c$ in band $b$ is given by Eq.~\ref{eq:us} for an upper
sideband and Eq.~\ref{eq:ls} for a lower sideband, where $\nu_a$ is
the array reference frequency, $\nu_s(b)$ is the source-specific
frequency offset for band $b$, and $p_{ref}$ is the reference pixel
for the frequency axis.
\begin{eqnarray}
\nu(c,b) & = & \nu_a + \nu_s(b) + \nu_{off}(b) + (c - p_{ref}) \cdot
                  \Delta \nu(b)  \label{eq:us} \\
\nu(c,b) & = & \nu_a + \nu_s(b) + \nu_{off}(b) + (1+ n_{chan} -
                   p_{ref} -c) \cdot \Delta \nu (b)  \label{eq:ls} \, .
\end{eqnarray}
The characteristic settings for a band may be changed during the
course of the observations.  A complete set of frequency offsets,
channel bandwidths, and sideband settings for every \Hi{band} is
termed a {\it frequency setup}.  The frequency setups used in the file
are listed in the {\tt FREQUENCY} table and each setup is assigned a
unique \Hi{positive} number.  This number is one of the random
parameters of the data matrix.

\Hi{The {\tt FREQUENCY} table} may be omitted from a FITS-IDI file if
and only if
\begin{itemize}
\item{\ there is only one band in the file,}
\item{\ that band is an upper sideband, and}
\item{\ the channel bandwidth is constant throughout the
  observations.}
\end{itemize}
In this case, the frequencies for each channel are calculated using
Eq.~\ref{eq:WCS}\Hi{, with the necessary frequency information
  conveyed using standard FITS header keywords.}

\subsection{Sources}

Each position on the sky that has been observed is termed a {\it
  source}, regardless of whether there is an actual radio source at
that location.  Information about the sources for which data exists in
the FITS-IDI file is recorded in a {\tt SOURCE} table.  Each source is
assigned a unique \Hi{positive} {\it source identification number}.
This number is one of the random parameters of the data matrix.

\Hi{The {\tt SOURCE} table} can be omitted if and only if the file
contains observations of a single source.  Source information
\Hi{should still be provided, but standard FITS header keywords
suffice.}

\subsection{Feed polarization}
\label{Intr:feedpol}

Each feed on an antenna is nominally sensitive to a single hand of
polarization and is given a label that indicates the polarization to
which it is nominally sensitive.  These labels are listed in Table
\Hi{4}.  The horizontal axis of an alt-azimuth antenna is taken to be
perpendicular to the line of sight and parallel to the horizon when
the antenna is observing a source at the horizon while the vertical
axis is taken to be perpendicular to the horizon.  The horizontal axis
of an equatorial antenna is taken to be perpendicular to the line of
sight and parallel to the celestial equator when the antenna is
observing a source on the equator while the vertical axis is
perpendicular to the equator.  A feed is said to be sensitive to
horizontal linear polarization if it is \Hi{primarily} sensitive to
radiation with an electric vector parallel to the horizontal axis of
the antenna.  \Hi{Note that the X and Y notation for linear polarization
has caused much confusion with some calling X horizontal and some
calling it vertical.  We have replaced that nomenclature here in
agreement with Thompson, Moran, and Swenson.  As an example of the
confusion, the previous version of this document declared X to be
horizontal but with the orientation and ellipticity of verstical.}

\begin{center}
\underline{\bf{TABLE 4: Feed polarization labels}}\\
\begin{tabular}{cl}
\noalign{\vspace{2pt}}
\underline{{\bf Label\vphantom{y}}} & \underline{\bf{Nominal sensitivity}} \\
\noalign{\vspace{2pt}}
 R & Right circular (IAU convention) \\
 L & Left circular (IAU convention) \\
\Hi{V} & Vertical linear \\
\Hi{H} & Horizontal linear
\end{tabular}
\end{center}

Real feeds are not purely sensitive to one polarization, but are also
partially sensitive to the orthogonal polarization.  This may be
characterized in two ways.

The simplest is a linear approximation in which the output of a feed
that is nominally sensitive to polarization $i$  has the form shown in
Eq.~\ref{eq:Pol} where $E_i$ is the incident electric field with
polarization $i$, $E_j$ is the incident electric field with
orthogonal polarization, and $D_{ij}$ is a complex constant that is
called a {\it leakage term} and for which $| D_{ij} | \ll 1$.
\begin{equation}
 V_i \propto E_i + D_{ij} \cdot  E_j   \label{eq:Pol}
\end{equation}
A more general parameterization is in terms of the orientation and
ellipticity of the feed.  The orientation of the feed is the angle of
the major axis of the ellipse generated by the electric field to which
the feed is sensitive, measured from the vertical axis as defined
above and increasing counter-clockwise as viewed along the line of
sight.  The ellipticity of the feed is the arctangent of the ratio of
the minor axis of this ellipse to its major axis and is positive if the
feed is sensitive to right circular polarization.  The orientations
and ellipticities of ideal feeds are summarized in Table 5:

\begin{center}
\underline{\bf{TABLE 5: orientation/ellipticity parameters for ideal
    feeds}}\\
\begin{tabular}{ccc}
\noalign{\vspace{2pt}}
\underline{{\bf polarization}} & \underline{\bf{orientation\vphantom{j}}}  &
       \underline{\bf{Ellipticity}} \\
\noalign{\vspace{2pt}}
 R & $0^\circ$ & $45^\circ$ \\
 L & $0^\circ$ & $-45^\circ$ \\
 \Hi{V} & $0^\circ$ & $0^\circ$  \\
 \Hi{H} & $90^\circ$ & $0^\circ$
\end{tabular}
\end{center}
Information about the leakage terms associated with a feed or about the
orientation and ellipticity of a feed may be carried in an {\tt
ANTENNA} table.

\subsection{Stokes parameters}
\label{Intr:Stokes}

Each visibility \Hi{observation} measures a combination of two
polarizations, one from each component of the interferometer.  There
are four possible combinations for circular polarizations that are
labeled RR, LL, RL, and LR and four possible combinations for linear
polarizations that are labeled \Hi{VV, HH, VH,
  HV}\footnote{\Hi{previously called XX, YY, XY, and YX}}; in each case
the first letter labels the polarization of the first input and the
second that of the second input.

In either case, the simple polarizations may be combined to obtain
visibility measurements for the Stokes parameters I, Q, U, and V (IAU
definitions are used).  FITS-IDI follows \AIPS\ terminology by using
the term ``Stokes parameters'' to refer to both the true Stokes
parameters and the simple polarization combinations.  Each Stokes
parameter is assigned a numeric code as shown in Table 6 so that the
Stokes parameter may form a regular axis of the data matrix.
\Hi{While theoretically possible, it is recommended to avoid combining
unlike polarizations (those from different groups in Table 6) on one
regular axis.}

\begin{center}
\underline{\bf{TABLE 6: Numeric codes for Stokes parameters}}\\
\begin{tabular}{cc}
\noalign{\vspace{2pt}}
\underline{{\bf Code\vphantom{y}}} &
    \underline{\bf{Parameter\vphantom{y}}} \\
\noalign{\vspace{2pt}}
  1  & I \\
  2  & Q \\
  3  & U \\
  4  & V \\
\hline
 $-1$  & RR \\
 $-2$  & LL \\
 $-3$  & RL \\
 $-4$  & LR \\
\hline
 $-5$  & \Hi{VV} \\
 $-6$  & \Hi{HH} \\
 $-7$  & \Hi{VH} \\
 $-8$  & \Hi{HV}
\end{tabular}
\end{center}

\vfill\eject
\subsection{Calibration and flagging information}

A FITS-IDI file may also contain optional information that may be used
to calibrate and edit the data.

{\tt FLAG} tables list data that are known or suspected to be bad and
that should be removed from the data set before further processing.

{\tt SYSTEM\_TEMPERATURE} tables list system and antenna temperatures
for some or all of the antenn\ae\ that were used during the
observations.  If the system temperature $T_s$ and antenna temperature
$T_a$ are known for both antenn\ae\ $i$ and $j$ used as an
interferometer pair, then the true visibility $\Gamma(i,j)$ is related
to the \Hi{correlation coefficient} measured by the interferometer
$\gamma(i,j)$ by Eq.~\ref{eq:Tsys}, where $S$ is the flux density of
the source being observed.
\begin{equation}
\Gamma(i,j) = \sqrt{\frac{T_s(i)}{T_a(i)}}
          \sqrt{\frac{T_s(j)}{T_a(j)}} \cdot S \cdot \gamma(i,j)
           \label{eq:Tsys}
\end{equation}

If the antenna temperatures are not known then the antenna gains
$G(i)$ and $G(j)$ may be used as in Eq.~\ref{eq:Gain}.  Antenna gains
are carried in a {\tt GAIN\_CURVE} table either as tabulated values or
as parameterized functions.
\begin{equation}
\Gamma(i,j) = \sqrt{\frac{T_s(i)}{G(i)}}
          \sqrt{\frac{T_s(j)}{G(j)}} \cdot \gamma(i,j)
           \label{eq:Gain}
\end{equation}
The hybrid case may also be used if antenna temperatures are available
for one antenna of the pair and an antenna gain for the other.

FITS-IDI files may also carry phase calibration data.  The phases of
signals injected at discrete frequencies at some defined point in the
receiver path may be measured by the correlator and are recorded in
{\tt PHASE-CAL} tables.  These measurements may be used to correct
bandpass phases for frequency-dependent phase offsets that have been
introduced in the receiving system.

\Hi{In addition, a FITS-IDI file may carry spectral-channel dependent
  complex gains tabulated in a {\tt BANDPASS} table.  These amplitude
  and phase corrections depend on both band and spectral channel and
  are applied to the visibility data in addition to any corrections
  implied by the previously mentioned tables.  Other, more recently
  defined tables are {\tt BASELINE} for baseline-specific gain
  factors, {\tt CALIBRATION} for complex gains as a function of time,
  and {\tt WEATHER} for meteorological data.}

\section{FITS-IDI file structure}

As pointed out in the introduction, all of the data in a FITS-IDI file
\Hi{are} carried in the form of binary tables.  The primary
header-data-unit (HDU) contains no data.

\subsection{The primary HDU}

The primary HDU serves three purposes:
\begin{enumerate}
\item{\ It indicates that the file contains FITS-IDI data.}
\item{\ It carries general information that applies to all of the
  FITS-IDI data in the file.}
\item{\ It carries a record of the processing performed on the data up
  to the point that the file was written.}
\end{enumerate}

In addition to the keywords mandated by the FITS standard, the
primary header of a FITS-IDI file shall contain the keywords listed in
Table 7 with the values shown in that table.  This combination of
keywords and values is the signature of a FITS-IDI file.  Note that
this is a header for a random-groups FITS data set that contains no
data.

\begin{center}
\underline{\bf{TABLE 7: Mandatory keywords for the
    primary header \Hi{in the FITS-IDI convention}}}\\
\begin{tabular}{lcc}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
\Me{{\tt BITPIX}} & \Me{I} & \Me{8} \\
{\tt NAXIS}  & I & 0 \\
{\tt EXTEND} & L & T \\
{\tt GROUPS} & L & T \\
{\tt GCOUNT} & I & 0 \\
{\tt PCOUNT} & I & 0
\end{tabular}
\end{center}

The keyword\Hi{s} shown in Table~8 \Hi{are} used to record
\Hi{information about the correlator used to produce the present
visibility data.  The first keyword records the name/type of the
correlator and has default value {\tt 'VLBA'}.  The only values of
{\tt CORRELAT} which cause any special action in {\tt FITLD} at this
time are {\tt 'VLBA'} (explicitly or by default) and {\tt 'DIFX'},
which differentiates the DiFX VLBA software correlator from the VLBA
hardware correlator.  The second keyword records the version number of
the software that generated a FITS-IDI file.  It triggers special
processing in \AIPS\ program {\tt FITLD}, when {\tt CORRELAT}
indicates the VLBA correlator, to deal with VLBA data that can include
multiple integration times.  It should be used in FITS-IDI files from
other sources only if the {\tt CORRELAT} keyword is also used with
value other than blank or {\tt 'VLBA'}\@.}

\begin{center}
\underline{\bf{TABLE 8: Header keywords reserved for \Hi{FITS-IDI}}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
\Hi{\tt CORRELAT} & \Hi{A} & \Hi{Name/type of correlator} \\
{\tt FXCORVER} & A & Version number of the correlator software\\
               &   & that produced the file
\end{tabular}
\end{center}

Information about the processing up to the point where the FITS file
was created should be recorded in {\tt HISTORY} records in the primary
header.

\subsection{Binary tables}

The first FITS extension in the file shall follow immediately after
the primary \Hi{HDU\@.}

The FITS-IDI data are carried in binary tables which can be identified
by the value of their {\tt EXTNAME} keyword.  If a table has an {\tt
  EXTNAME} keyword \Hi{value} that is listed in Table~9, then it shall
have the structure described in the corresponding chapter of this
document.

\begin{center}
\underline{\bf{TABLE 9: FITS-IDI binary tables}}\\
\begin{tabular}{llr}
\noalign{\vspace{2pt}}
\underline{{\bf EXTNAME value\vphantom{y}}} &
   \underline{\bf{Contents\vphantom{y}}} & \underline{\Hi{\bf{Page}}} \\
\noalign{\vspace{2pt}}
{\tt ANTENNA}         & Antenna polarization information & \Hi{\pageref{s:AN}} \\
{\tt ARRAY\_GEOMETRY} & Time system information and antenna
                        coordinates & \Hi{\pageref{s:AG}} \\
\Hi{\tt BANDPASS}     & \Hi{Channel-dependent complex gains} & \Hi{\pageref{s:BP}} \\
\Hi{\tt BASELINE}     & \Hi{Baseline-specific gain factors} & \Hi{\pageref{s:BL}} \\
\Hi{\tt CALIBRATION}  & \Hi{Complex gains as a function of time} & \Hi{\pageref{s:CA}} \\
{\tt FLAG}            & \Hi{Information for flagging data} & \Hi{\pageref{s:FG}} \\
{\tt FREQUENCY}       & Frequency setups  & \Hi{\pageref{s:FQ}} \\
{\tt GAIN\_CURVE}     & Antenna gain curves  & \Hi{\pageref{s:GC}} \\
{\tt INTERFEROMETER\_MODEL} & Correlator model parameters & \Hi{\pageref{s:IM}} \\
{\tt PHASE-CAL}       & Phase cal measurements  & \Hi{\pageref{s:PC}} \\
{\tt SOURCE}          & Information on sources observed  & \Hi{\pageref{s:SO}} \\
{\tt SYSTEM\_TEMPERATURE} & System and antenna temperatures & \Hi{\pageref{s:TS}} \\
{\tt UV\_DATA}        & Visibility data  & \Hi{\pageref{s:UV}} \\
\Hi{\tt WEATHER}      & \Hi{Meteorological data} & \Hi{\pageref{s:WX}}
\end{tabular}
\end{center}

Other FITS extensions may be freely interleaved with these binary
tables, but \Hi{must not use the extension names listed in Table~9 nor
those reserved for the VLBA in Table~10.}

\Hi{It is recommended that the {\tt ARRAY\_GEOMETRY}, {\tt SOURCE},
  and {\tt FREQUENCY} tables be written in any order immediately
  following the primary HDU\@.  These should be followed by all of the
  other table types in any order, except for the {\tt UV\_DATA} tables
  which should be last.  This ordering allows FITS-IDI tables to be
  interpreted in a single pass through the file.  It also places the
  large {\tt UV\_DATA} tables last after all of the tables which must
  be successfully read in order to render the visibility data
  interpretable.}

%\vfill\eject
\begin{center}
\underline{\bf{TABLE 10: Extension names reserved for use by the VLBA}}\\
\begin{tabular}{llr}
\noalign{\vspace{2pt}}
\underline{{\bf EXTNAME value\vphantom{y}}} &
   \underline{\bf{Contents\vphantom{y}}} & \underline{\bf{Page}} \\
\noalign{\vspace{2pt}}
{\tt CALC}              & Inputs to the {\tt CALC} program \\
{\tt MODEL\_COMPS}      & Models generated by {\tt CALC} & \Hi{\pageref{s:MC}} \\
{\tt GATEDUTY}          & Pulsar gating information \\
{\tt GATEMODL}          & Model used for pulsar gating \\
{\tt SPACECRAFT\_ORBIT} & Spacecraft coordinates \\
{\tt TAPE\_STATISTICS}  & Tape statistics \\
{\tt VLBA\_EPHEMERIS}   & Ephemeris data \\
{\tt VLBA\_SAMPLER}     & Sampler settings
\end{tabular}
\end{center}

All of the tables that are part of the FITS-IDI data set shall contain
the keywords listed in Table \Hi{11}.  The values for {\tt OBSCODE},
{\tt NO\_STKD}, {\tt STK\_1}, {\tt NO\_BAND}, {\tt NO\_CHAN}, {\tt
REF\_FREQ}, {\tt CHAN\_BW}, and {\tt REF\_PIXL} must be the same in
each table.  In future revisions of the FITS-IDI \Hi{Convention}, it
may be possible for a single file to contain several data sets, in
which case these keywords will be used to identify the data set to
which a table belongs.  The current version of the FITS-IDI
\Hi{Convention} only allows one data set per file, but these keywords
are still needed to establish the overall characteristics of the data.

\begin{center}
\underline{\bf{TABLE \Hi{11}: Mandatory keywords for FITS-IDI tables}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}} \label{ta:keywords}
{\tt EXTNAME}   & A & Table name \\
{\tt TABREV}    & I & Revision number of the table definition \\
\Hi{{\tt OBSCODE}} & \Hi{A} & \Hi{Observation identification} \\
{\tt NO\_STKD}  & I & The number of Stokes parameters \\
{\tt STK\_1}    & I & The first Stokes parameter \Hi{coordinate value} \\
{\tt NO\_BAND}  & I & The number of bands \\
{\tt NO\_CHAN}  & I & The number of spectral channels \Hi{per band} \\
{\tt REF\_FREQ} & E & The file reference frequency in Hz \\
{\tt CHAN\_BW}  & E & The channel bandwidth in Hz for the first band \\
                &   & in the frequency \Hi{setup} with frequency ID number 1 \\
{\tt REF\_PIXL} & E & The reference pixel for the frequency axis
\end{tabular}
\end{center}

These keywords will not be repeated in the descriptions of the
individual tables in subsequent \Hi{Sections, other than the {\tt
UV\_DATA} Section immediately following.}  \Hi{A complete example of
  all primary and table headers is shown in the Appendix beginning on
  \pageref{appendix}.}

\section{The {\tt UV\_DATA} table}
\label{s:UV}

A {\tt UV\_DATA} table contains a set of visibility matrices.  If
there is more than one {\tt UV\_DATA} table in the file, then no two
tables shall contain data for overlapping times and the times shall
occur in time order in the file.\footnote{These restrictions may be
lifted in future revisions of the FITS-IDI \Hi{Convention}.}

\subsection{The data matrix and random parameters}

Each row in the table contains a single data matrix that is stored in
a designated column of the table.\footnote{\Hi{The previous FITS-IDI
  documents contain the statement that ``the structure of the {\tt
  UV\_DATA} table follows the conventions established in the draft
  document {\it A FITS Binary Table Convention for Interchange of
  Single-Dish Data in Radio Astronomy} by Harvey S. Liszt.''  There is
  no evidence that this is true and so it has been omitted here.}}
The remaining columns correspond to the random parameters.  The column
containing the data matrix shall be indicated by setting the
string-valued keyword {\tt TTYPE}{\it n} to {\tt 'FLUX'} and the
logical-valued keyword {\tt TMATX}{\it n} to {\tt T}, where {\it n} is
the number of the column containing the data matrix.  The {\tt
TUNIT}{\it n} keyword shall have the value {\tt 'JY'} or {\tt
  'UNCALIB'}\@.  An {\tt NMATRIX} keyword shall be present with the
value 1 to indicate that there is one data matrix for each row.

The number of axes for the data matrix shall be given as the value of
the {\tt MAXIS} keyword.  Each axis {\it m} shall have a corresponding
{\tt MAXIS}{\it m} keyword that gives the number of pixels along the
axis, a {\tt CTYPE}{\it m} keyword that gives the name of the axis,
a {\tt CDELT}{\it m} keyword that gives the parameter increment along
the axis, a {\tt CRVAL}{\it m} keyword that gives the reference value
for the axis, and a {\tt CRPIX}{\it m} keyword that gives the reference
pixel coordinate for the axis.

The column containing the data matrix shall be a single-precision
floating-point column and each entry in the column shall have a number
of elements equal to the product of the values of the {\tt MAXIS}{\it
  m} keywords.

\subsubsection{Regular axes}
\label{UVdata:regaxes}

The axis names listed in Table \Hi{12} are recognized in the current
version of the FITS-IDI \Hi{Convention}.  Most of these are required
to be present.

\begin{center}
\underline{\bf{TABLE \Hi{12}: Regular axes for the data matrix}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Name\vphantom{y}}} & \underline{\bf{Mandatory ?}} &
    \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt COMPLEX} & yes & Real, imaginary, weight \\
{\tt STOKES}  & yes & Stokes parameter \\
{\tt FREQ}    & yes & Frequency (spectral channel) \\
{\tt BAND}    & no  & Band number \\
{\tt RA}      & yes & Right ascension of the phase center \\
{\tt DEC}     & yes & Declination of the phase center
\end{tabular}
\end{center}

The {\tt COMPLEX} axis shall be the first (\ie\ the fastest changing)
axis in the data matrix.  It shall have a {\tt MAXIS1} value of 2 or 3
and {\tt CDELT1}, {\tt CRPIX1}, and {\tt CRVAL1} shall all have the
value 1.0.  The first entry on this axis contains the real part of a
complex visibility and the second contains the corresponding imaginary
component.  If a third element is present, then this shall contain the
weight for this visibility measurement.  See
Section~\ref{Intr:visdata} on page~\pageref{Intr:visdata}.

The {\tt STOKES} axis enumerates polarization combinations.  The
corresponding {\tt MAXIS}{\it m} value shall be no less than 1 and no
greater than 4.  The {\tt CRPIX}{\it m} value shall be 1.0.  See
Section~\ref{Intr:Stokes} on page~\pageref{Intr:Stokes}.  The value of
the {\tt MAXIS}{\it m} shall match that of the {\tt NO\_STKD} keyword
and the value of the {\tt CRVAL}{\it m} shall match that of the {\tt
  STK\_1} keyword.  See Table~11 on page~\pageref{ta:keywords}.

The {\tt FREQ} axis enumerates frequency channels.  The corresponding
{\tt CRVAL}{\it m} shall have the reference frequency for array number
1 as its value.  Both {\tt CRVAL}{\it m} and {\tt CDELT}{\it m} are
given in Hz.  See Section~\ref{Intr:freq} on
page~\pageref{Intr:freq}.  The value of the {\tt MAXIS}{\it m} keyword
shall be identical to that of the {\tt NO\_CHAN} keyword, the value
of the {\tt CRVAL}{\it m} shall be identical to that of the {\tt
REF\_FREQ} keyword, the value of the {\tt CRPIX}{\it m} keyword shall
be identical to the {\tt REF\_PIXL} keyword, and the value of the {\tt
CDELT}{\it m} keyword shall be identical to that of the {\tt
CHAN\_BW} keyword.  See Table~11 on page~\pageref{ta:keywords}.

The {\tt BAND} axis enumerates frequency bands.  The
\Hi{corresponding} {\tt CRVAL}{\it m}, {\tt CRPIX}{\it m}, and {\tt
  CDELT}{\it m} keywords shall all have the value 1.0.  See
Section~\ref{Intr:freq} on page~\pageref{Intr:freq}.  The {\tt
  MAXIS}{\it m} keyword shall have the same value as the {\tt
  NO\_BAND} keyword.  See Table~11 on page~\pageref{ta:keywords}.  The
{\tt BAND} axis may be omitted if and only if there is only one band
and there is only one frequency setup.  In this case, the {\tt
  NO\_BAND} keyword shall have the value 1.

The {\tt RA} and {\tt DEC} axes shall both have \Hi{the corresponding}
{\tt MAXIS}{\it m} values of 1.  If \Hi{only one} source is
\Hi{present} in the file and no {\tt SOURCE} tables are present, then
the {\tt CRVAL}{\it m} keyword for the {\tt RA} axis shall give the
right ascension of the phase center in degrees and the {\tt CRVAL}{\it
  m} keyword for the {\tt DEC} axis shall give the declination of the
phase center in degrees.  \Me{These coordinates shall be those of the
  standard equinox and that standard equinox shall be specified in
the table header.}  If more than one source is \Hi{present} in the
file, then the {\tt CRVAL}{\it m} keywords for both the {\tt RA} and
the {\tt DEC} axes shall have the value 0.0 \Me{and no equinox need be
  specified}.

%\vfill\eject
\subsubsection{Random parameters}

The name of each random parameter is given as the value of the
corresponding {\tt TTYPE}{\it n} keyword\Hi{, where {\it n} is the
column number in which the value of the random parameter appears}.
The recognized values are listed in Table~13.

\begin{center}
\underline{\bf{TABLE \Hi{13}: Random parameter names}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Name\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt UU}       & {\tt 1D} or {\tt 1E} & seconds & $u$ baseline coordinate ({\tt -SIN} system) \\
{\tt VV}       & {\tt 1D} or {\tt 1E} & seconds & $v$ baseline coordinate ({\tt -SIN} system) \\
{\tt WW}       & {\tt 1D} or {\tt 1E} & seconds & $w$ baseline coordinate ({\tt -SIN} system) \\
{\tt UU--\Hi{-}SIN} & {\tt 1D} or {\tt 1E} & seconds & $u$ baseline coordinate ({\tt -SIN} system) \\
{\tt VV--\Hi{-}SIN} & {\tt 1D} or {\tt 1E} & seconds & $v$ baseline coordinate ({\tt -SIN} system) \\
{\tt WW--\Hi{-}SIN} & {\tt 1D} or {\tt 1E} & seconds & $w$ baseline coordinate ({\tt -SIN} system) \\
{\tt UU--\Hi{-}NCP} & {\tt 1D} or {\tt 1E} & seconds & $u$ baseline coordinate ({\tt -NCP} system) \\
{\tt VV--\Hi{-}NCP} & {\tt 1D} or {\tt 1E} & seconds & $v$ baseline coordinate ({\tt -NCP} system) \\
{\tt WW--\Hi{-}NCP} & {\tt 1D} or {\tt 1E} & seconds & $w$ baseline coordinate ({\tt -NCP} system) \\
{\tt DATE}          & {\tt 1D}             & days    & Julian date at 0 hours \\
{\tt TIME}          & {\tt 1D}             & days    & Time elapsed since 0 hours \\
{\tt BASELINE}      & {\tt 1J}             &         & Baseline number \\
{\tt ARRAY}         & {\tt 1J} or {\tt 1I} &         & Array number \\
{\tt SOURCE\_ID}    & {\tt 1J} or {\tt 1I} &         & Source ID number \\
{\tt FREQID}        & {\tt 1J} or {\tt 1I} &         & Frequency \Hi{setup} ID number \\
{\tt INTTIM}        & {\tt 1D} or {\tt 1E} & seconds & Integration time \\
{\tt WEIGHT}        & {\tt E}(\nstokes,\nband) &     & Weights \\
{\tt GATEID}        & {\tt 1J}             &         & VLBA specific \\
{\tt FILTER}        & {\tt 1J}             &         & VLBA specific
\end{tabular}
\end{center}

{\bf Baseline coordinates.}  Three of the random parameters shall be
used to specify the baseline coordinates for the visibility
measurements in light seconds.  The three coordinates are designated
by names that begin with {\tt UU}, {\tt VV}, and {\tt WW}, which
correspond to the $u, v,$ and $w$ coordinates \Hi{at the coordinate
equinox}.  The first two letters may be followed by an optional suffix
that indicates the coordinate system used for the baseline
coordinates.  If the suffix is omitted, then the {\tt ---SIN}
convention is assumed.  The suffixes must match on all three baseline
coordinate parameters.

If the suffix is {\tt ---SIN}, then the $w$ axis lies along the line
of sight to the source and the $u$ and $v$ axes lie in a plane
perpendicular to the line of sight with $v$ increasing to the north
and $u$ increasing to the east.  If the suffix is {\tt ---NCP}, then
the $w$ axis points to the north pole, the $v$ axis is parallel to the
projection of the line of sight into the equator with the $v$
coordinate increasing away from the source and the $u$ coordinate
completes the right-handed Cartesian triad $(u,v,w)$.  \Hi{Note that
  the {\tt ---NCP} system is normally used only with East-West
  interferometers in which the value of $w$ is zero.}

{\bf Important note:} \Hi{There have been several errors in the choice
  of suffixes.  Flatters 1998 \cite{F98} erroneously specified suffixes
  with only two minus signs, {\tt --SIN} and {\tt --NCP}\@.  The VLBA
  archive erroneously uses the suffix {\tt -L}, which normally
  means units of wavelengths but not when used by the VLBA archive.
  Therefore, FITS-IDI readers should recognize these three suffixes as
  {\tt ---SIN}, {\tt ---NCP}, and {\tt ---SIN}, respectively, with
  units of seconds.}

{\bf DATE and TIME\@.} Two random parameters shall be used to record
the time at which the visibility measurements in a record were taken.
The value of the {\tt DATE} parameter shall be the Julian date at
midnight on the day the measurement was made using the appropriate
time system for the array used for the measurement.  The {\tt TIME}
parameter shall be the number of days that have elapsed since
midnight.  The time recorded using {\tt DATE} and {\tt TIME} shall be
the central time in the integration period and shall also be the time
at which the $(u,v,w)$ coordinates are valid.

{\bf Integration time.} The length of the period over which the data
were integrated may optionally be supplied in seconds as the value of
the {\tt INTTIM} parameter.

{\bf Baseline specification.} The baseline \Hi{(telescope pair)} from
which the data were obtained shall be specified using two parameters.
The {\tt ARRAY} parameter shall give the number of the array that was
used for the observations and the {\tt BASELINE} parameter shall give
the antenna numbers of the two antenn\ae\ \Hi{of the antenna pair
  within} this array.  The baseline number is formed by multiplying
the number of the first antenna by 256 and then adding the number of
the second antenna.  The {\tt ARRAY} parameter may be omitted if
\Hi{and only if} there is only one array defined in the file.

{\bf Source identification number.} If the file contains observations
of more than one source, then the identification number of the source
being observed shall be given as the value of the {\tt SOURCE\_ID}
parameter.  \Hi{Note that this random parameter name has also been
  spelled with a blank instead of the underscore and omitting the
{\tt '\_ID'} entirely.  All three spellings should be regarded as
synonymous.}

{\bf Frequency setup number.} If the file contains observations made
using more than one frequency setup, then the identification of the
frequency setup that was used shall be recorded as the value of the
{\tt FREQID} parameter.

{\bf Weights.}  If the weights assigned to all spectral channels in a
band are identical, the weights may be recorded in a {\tt WEIGHT}
random parameter.  The value of this parameter shall be an array that
is indexed by band number and by pixel coordinates on the {\tt STOKES}
axis.  Each element in this array is the weight that should be given
to \Hi{all} data points for that band and polarization.  If {\tt
  MAXIS1} has the value 2, then a {\tt WEIGHT} parameter must be
present.  Conversely, if {\tt MAXIS1} has the value 3, then a {\tt
  WEIGHT} parameter must not be present.

\vfill\eject
\subsection{Table header keywords}

\begin{center}
\underline{\bf{TABLE \Hi{14: Mandatory  keywords for {\tt UV\_DATA} headers}}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}} \label{ta:uvdatakeys}
{\tt EXTNAME}   & A & {\tt 'UV\_DATA'}  \\
{\tt TABREV}    & I & 2 \\
{\tt NMATRIX}   & I & 1 \\
{\tt MAXIS}     & I & \Hi{$M$ = number axes in regular matrix} \\
{\tt MAXIS}$m$  & I & \Hi{Number pixels on axis $m = 1$ to $M$} \\
{\tt CTYPE}$m$  & A & \Hi{Name of regular axis $m = 1$ to $M$} \\
{\tt CDELT}$m$  & E & \Hi{Coordinate increment on axis $m = 1$ to $M$} \\
{\tt CRPIX}$m$  & E & \Hi{Reference pixel on axis $m = 1$ to $M$} \\
{\tt CRVAL}$m$  & E & \Hi{Coordinate value at reference pixel on axis $m = 1$ to $M$} \\
{\tt TMATX}$n$  & L & \Hi{{\tt T} --- column $n$ contains the visibility matrix} \\
{\tt NO\_STKD}  & I & \Hi{The number of Stokes parameters} \\
{\tt STK\_1}    & I & \Hi{The first Stokes parameter coordinate value} \\
{\tt NO\_BAND}  & I & \Hi{The number of bands} \\
{\tt NO\_CHAN}  & I & \Hi{The number of spectral channels per band} \\
{\tt REF\_FREQ} & E & \Hi{The file reference frequency in Hz} \\
{\tt CHAN\_BW}  & E & \Hi{The channel bandwidth in Hz for the first band} \\
                &   & \Hi{in the frequency setup with frequency ID number 1} \\
{\tt REF\_PIXL} & E & \Hi{The reference pixel for the frequency axis} \\
\hline
\Me{{\tt EQUINOX}} & \Me{{\tt 8A}} & \Me{Mean equinox} \\
\Me{{\tt WEIGHTYP}} & \Me{{\tt 8A}} & \Me{Type of data weights} \\
\end{tabular}
\end{center}

The keywords and values shown in Table~\Hi{14} must appear in the
header of each {\tt UV\_DATA} table.  \Hi{Keywords from {\tt EXTNAME}
through {\tt REF\_PIXL} are mandatory \Me{in all headers}, whilst the
keywords \Me{{\tt EQUINOX} and {\tt WEIGHTYP} are mandatory only in
special cases}.  See the discussion of ``Regular axes'' beginning on
page~\pageref{UVdata:regaxes} for a description of keywords {\tt
  MAXIS} though {\tt TMATX}{\it m}.  A set of {\tt MAXIS}{\it m}
through {\tt CRVAL}{\it m} must appear for each of the $M$ axes,
where $M$ is the value of the keyword {\tt MAXIS}\@.  The mandatory,
common keywords of Table~11 discussed on page~\pageref{ta:keywords}
are repeated here, but will not be repeated in the descriptions of the
other tables.  The standard FITS keywords required to characterize a
binary table fully are also required in the headers of all FITS-IDI
tables.}

\Me{{\tt EQUINOX} shall be equal to a string identifying the standard
  mean equinox used for the source coordinates when data for only one
  source appears in the {\tt UV\_DATA} table.  This shall be either
  {\tt '1950.0B'} or {\tt 'J2000'}\@.}

\Me{{\tt WEIGHTYP} shall be equal to a string identifying the type of
  weights accompanying the visibility data.  Value {\tt 'NORMAL'}
  means that the weights represent true weights (one over uncertainty
  squared).  Value {\tt 'CORRELAT'} means that the weights are between
  0 and 1 and should be divided into the accompanying visibilities.
  Value {\tt 'CORRTIME'} means that the visibilities must be divided
  by both the weight and the integration time in order to be brought
  onto a consistant scale.  This keyword must appear unless {\tt
    'CORRELAT'} is desired.  Note that the VLBA and EVN currently do
  not write this keyword, but use {\tt 'CORRTIME'} and {\tt 'NORMAL'}
  respectively.}

\begin{center}
\underline{\bf{TABLE \Hi{14\Me{b}: Optional keywords for {\tt UV\_DATA} headers}}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt DATE-OBS}  & D & Observing date \\
{\tt TELESCOP}  & A & Telescope name \\
{\tt OBSERVER}  & A & Observer's name \\
{\tt VIS\_SCAL} & E & Visibility scale factor \\
{\tt SORT}      & A & Sort order
\end{tabular}
\end{center}

\Me{The keywords and values shown in Table~14b may appear in the
  header of each {\tt UV\_DATA} table.}

\Hi{{\tt DATE-OBS} shall give the date on which the observations were
begun.}

\Hi{{\tt TELESCOP}} shall be a short string that is used to identify
the instrument used to make the observations.  This will normally
identify the correlator.

\Hi{{\tt OBSERVER}} will be a short string that is used to identify
the observer or the project to which the data belong.

\Hi{{\tt VIS\_SCAL}} is a normalization factor which should be used to
divide the amplitudes of all of the visibility data.  This may be used
to reduce the computational load on near-real time systems: such
systems may write accumulated sums in the data matrix and store the
normalization factor as the value of this keyword.  \Me{If this
  keyword does not appear, its value will be taken to be 1.0.  If {\tt
    WEIGHTYP = 'NORMAL'}, any {\tt VIS\_SCAL} will also be used to
  multiply, in its square, the weights as well as dividing into the
  visibilities.}

\Hi{{\tt SORT}} is a string of two characters that indicate\Hi{, if not
blank,} that the data in the {\tt UV\_DATA} table are sorted.  The
first letter gives the primary sort key and the second letter the
secondary sort key.  In other words, the data are sorted in the order
specified by the first letter and those records with identical values
of this key are sorted according to the second letter.  \Hi{The
characters are the first character of the random-parameter name of
the parameter used for the sort key when sorted in ascending order.
Special values include {\tt '*'} and {\tt ' '} which mean no key, {\tt
'T'} which means time including both {\tt DATE} and {\tt TIME}
parameters, {\tt 'X'} which means descending absolute value of {\tt
UU}, and {\tt 'Y'} which means descending absolute value of {\tt VV}.}

\section{The {\tt ARRAY\_GEOMETRY} table}
\label{s:AG}

The {\tt ARRAY\_GEOMETRY} tables define the arrays used in the file.
Each {\tt ARRAY\_GEOMETRY} table lists the antenn\ae\ that are part of
that array together with their coordinates.  It also provides
information about the time system used for that array.  \Hi{There must
be an {\tt ARRAY\_GEOMETRY} table for each array used in the file.}
%\vfill\eject

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{15}.}

{\bf Array number.} The array number for the array described by an
{\tt ARRAY\_GEOMETRY} \Hi{table} shall be recorded as the value of the
{\tt EXTVER} keyword.  Each {\tt ARRAY\_GEOMETRY} table in a FITS-IDI
file must have a distinct value of {\tt EXTVER} and there must be an
{\tt ANTENNA} table with an {\tt EXTVER} value of one.

{\bf Array name.}  The value of the {\tt ARRNAM} keyword shall be a
name for the array that may be used in reports presented to human
readers.  Array names need not be unique and \Hi{should not require
more} than 8 characters.

{\bf Coordinate frame.} The value of the {\tt FRAME} keyword shall be a
string that identifies the coordinate system used for antenna
coordinates.  \Hi{At present, only one value of the {\tt FRAME}
keyword has been defined;} other coordinate definitions may be added
in future revisions of the FITS-IDI \Hi{Convention}.

If the value of the {\tt FRAME} keyword is {\tt 'GEOCENTRIC'}, the the
coordinates are given in an Earth-centered, Earth-fixed, Cartesian
reference frame.  The origin of the coordinates is the Earth's center
of mass.  The $z$ axis is parallel to the direction of the
conventional origin for polar motion.  The $x$ axis is parallel to the
direction of the intersection of the Greenwich meridian with the mean
astronomical equator.  The $y$ axis completes the right-handed,
orthogonal coordinate system.  The coordinates are given in meters.

\vfill\eject
\begin{center}
\underline{\bf{TABLE \Hi{15}: Mandatory keywords for {\tt
    ARRAY\_GEOMETRY} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}} \label{ta:AGkeys}
{\tt EXTNAME}   & A & {\tt 'ARRAY\_GEOMETRY'}  \\
{\tt TABREV}    & I & 1 \\
{\tt EXTVER}    & I & Array number \\
{\tt ARRNAM}    & A & Array name \\
{\tt FRAME}     & A & Coordinate frame \\
{\tt ARRAYX}    & E & $x$ coordinate of array center \Hi{(m)} \\
{\tt ARRAYY}    & E & $y$ coordinate of array center \Hi{(m)} \\
{\tt ARRAYZ}    & E & $z$ coordinate of array center \Hi{(m)} \\
{\tt NUMORB}    & I & \norb = number orbital parameters in table \\
{\tt FREQ}      & E & Reference frequency \Hi{(Hz)} \\
{\tt TIMESYS}   & A & Time system \\
{\tt RDATE}     & D & Reference date \\
{\tt GSTIA0}    & E & GST at 0h on reference date \Hi{(degrees)} \\
{\tt DEGPDY}    & E & Earth's rotation rate \Hi{(degrees/day)} \\
{\tt UT1UTC}    & E & UT1 - UTC \Hi{(sec)} \\
{\tt IATUTC}    & E & IAT - UTC \Hi{(sec)} \\
{\tt POLARX}    & E & $x$ coordinate of North Pole \Hi{(arc seconds)} \\
{\tt POLARY}    & E & $y$ coordinate of North Pole \Hi{(arc seconds)}
\end{tabular}
\end{center}

{\bf Array center.} The {\tt ARRAYX}, {\tt ARRAYY}, and {\tt ARRAYZ}
keywords shall give the coordinates of the array center in the
coordinate frame specified by the {\tt FRAME} keyword.  Antenna
coordinates in the main part of the table are given relative to the
array center.

{\bf Orbital parameters.} The value of the {\tt NUMORB} keyword shall
be the number of elements in the {\tt ORBPARM} array in the main part
of the table.  This shall be either 0 or 6.

{\bf Reference frequency.} The value of the {\tt FREQ} keyword shall be
the reference frequency in Hz for the array described in the present
{\tt ARRAY\_GEOMETRY} table.  See Section~\ref{Intr:freq} on
page~\pageref{Intr:freq}.  If the array number is one, then the value
of the {\tt FREQ} keyword shall be identical to that of the {\tt
  REF\_FREQ} keyword; see page~\pageref{ta:keywords}.

{\bf Time system.} The {\tt TIMSYS} keyword shall specify the time
system used for the array.  It shall either have the value {\tt
'IAT'}, denoting international atomic time, or the value {\tt 'UTC'},
denoting coordinated universal time.  This indicates whether the zero
hour for the {\tt TIME} parameter in the {\tt UV\_DATA} table is
midnight IAT or midnight UTC\@.

{\bf Reference date.} The value of the {\tt RDATE} parameter will be
the date for which the time system parameters {\tt GSTIA0}, {\tt
DECPDY}, and {\tt IATUTC} apply.  If the table contains orbital
parameters for orbiting antenn\ae, this keyword also designates the
epoch for the orbital parameters.

{\bf GST at midnight.} The value of the {\tt GSTIA0} keyword shall be
the Greenwich sidereal time in degrees at zero hours on the reference
date for the array in the  time system specified by the {\tt TIMESYS}
keyword.

{\bf Earth rotation rate.} The value of the {\tt DEGPDY} keyword shall
be the rotation rate of the Earth in degrees per day on the reference
date for the array.

{\bf Difference between UT1 and UTC\@.} The value of the {\tt UT1UTC}
keyword shall be the difference between UT1 and UTC in seconds on the
reference date for the array.

{\bf Difference between IAT and UTC\@.} The value of the {\tt IATUTC}
keyword shall be the difference between IAT and UTC in seconds on the
reference date for the array.  Note that this always has an integral
value and is the number of accumulated leap seconds on that date.

{\bf Polar position.} The values of the {\tt POLARX} and {\tt POLARY}
keywords shall give the $x$ and $y$ offsets of the North Pole in
\Hi{arc seconds} on the reference date for the array with respect to
the coordinate system specified by the {\tt FRAME} keyword.  \Hi{The
units were changed from the meters specified by the earlier documents,
but seldom used in actual implementations.  Note that arc seconds and
meters can be told apart, at least in recent decades.  If $\sqrt{P_x^2
  + P_y^2} < 0.6\, ,$ the units are arc seconds.}

\subsection{Table structure}

Each row in the table provides information about a single antenna.
Each of the columns listed in Table~\Hi{16} must be present.  The
order of the columns does not matter.

\begin{center}
\underline{\bf{TABLE \Hi{16}: Mandatory {\tt and optional} columns for
    the {\tt \Me{ARRAY\_GEOMETRY}} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt ANNAME}  & {\tt 8A} &          & Antenna name \\
{\tt STABXYZ} & {\tt 3D} & meters   & \Hi{Antenna s}tation coordinates
                                      \Hi{$(x,y,z)$} \\
{\tt DERXYZ}  & {\tt 3E} & meters/s & First-order derivatives of the
                                      station coordinates with respect
                                      to time \\
{\tt ORBPARM} & {\tt D}(\norb) &    & Orbital parameters \\
{\tt NOSTA}   & {\tt 1I} &          & \Hi{Antenna} number \\
{\tt MNTSTA}  & {\tt 1J} &          & Mount type \\
{\tt STAXOF}  & {\tt 3E} & meters   & Axis offset \\
\hline
\Me{{\tt DIAMETER}} & \Me{{\tt 1E}} & \Me{meters} & \Me{Antenna diameter}
\end{tabular}
\end{center}

{\bf Antenna name.} The antenna name shall be a character string that
may be used to identify the antenna for a human user.

{\bf Station coordinates.} The {\tt STABXYZ} array shall give the
coordinate vector (element 1 is the $x$ coordinate, element 2 is the
$y$ coordinate, and element 3 is the $z$ coordinate) of the antenna
relative to the array center defined in the header, provided that the
antenna is not an orbiting antenna.  The coordinate system used for
the antenna coordinates is indicated by the {\tt FRAME} keyword in the
header.  The {\tt DERXYZ} array shall give the first-order derivative
of the antenna coordinate vector with respect to time in meters per
second, provided that the antenna is not an orbiting antenna.

{\bf Orbital parameters.} If the antenna is an orbiting antenna and
orbital information is available, the {\tt ORBPARM} array will
contain the orbital parameters for the antenna as shown in
Table~\Hi{17}.  The orbital elements shall be those for 0 hours on the
reference date for the array in the time system used for the array.
The reference frame for the orbital parameters shall be the same as
that used for $u,v,w$ coordinates in the {\tt UV\_DATA} table.
\begin{center}

\underline{\bf{TABLE \Hi{17}: Contents of the {\tt ORBPARM} array}} \\
\begin{tabular}{lll}
\noalign{\vspace{2pt}}
\underline{{\bf Index\vphantom{y}}} &
   \underline{\bf{Parameter\vphantom{y}}} &
   \underline{{\bf Units\vphantom{y}}} \\
\noalign{\vspace{2pt}}
1  & Semi-major axis of orbit ($a$) & meters \\
2  & Ellipticity of orbit ($e$)          &  \\
3  & Inclination of the orbit to the celestial equator ($i$) & degrees \\
4  & The right ascension of the ascending node ($\Omega$)  & degrees \\
5  & The argument of the perigee ($\omega$)  & degrees \\
6  & The mean anomaly ($M$)  & degrees
\end{tabular}
\end{center}

The dimension of the {\tt ORBPARM} array is given by the \Hi{value of}
the {\tt NUMORB} keyword \Hi{(\norb)}.  If this value is zero, then
the {\tt ORBPARM} column contains no values.  If \Hi{\norb\ } is 6,
then all 6 orbital parameters shall be set to NaN \Hi{(not a number)}
for all antenn\ae\ for which {\tt MNTSTA} is not 2.

{\bf \Hi{Antenna} number.} The {\tt NOSTA} column shall contain a
positive integer value that uniquely defines the antenna within the
array.  If the same antenna appears in more than one array, it need
not have the same station number in each array.  This is the antenna
identification number that is used in other FITS-IDI tables.

{\bf Mount type.} The {\tt MNTSTA} column shall contain an integer
value that encode the mount type of the antenna.  \Hi{Codes 0 for
alt-azimuth, 1 for equatorial, and 2 for orbiting are
defined.  Codes 3 for X-Y, 4 for right-handed Nasmyth, and 5 for
left-handed Nasmyth are hereby also defined.}  \Me{Aperture arrays,
  which are steered electronically rather than mechanically, are
  assigned code 6.}

{\bf Axis offset.}  The {\tt STAXOF} column shall contain the
\Hi{array of} axis offsets for the antenna \Hi{in $x,y,z$ order}.

\mecol
{\bf Antenna diameter.} The optional {\tt DIAMETER} column shall give
the antenna physical diameter.  This information may be used in
calculations of sensitivity and shadowing.
information.
\hblack

\section{The {\tt ANTENNA} table}
\label{s:AN}

The {\tt ANTENNA} table contains information about the antenn\ae\ used
in a FITS-IDI file that may change with time or with frequency setup.
These characteristics include the polarization properties of the
feeds and the number of digitizer levels.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{18}.  The {\tt POLTYPE}
keyword may be omitted if the value of the {\tt NOPCAL} keyword is
zero.}

\begin{center}
\underline{\bf{TABLE \Hi{18}: Mandatory keywords for {\tt
    ANTENNA} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'ANTENNA'}  \\
{\tt TABREV}    & I & 1 \\
{\tt NOPCAL}    & I & \npcal\ $= 0$ or $2$, number of polarization
                      calibration constants \\
{\tt POLTYPE}   & A & The feed polarization parameterization \\
\end{tabular}
\end{center}

{\bf Number of polarization calibration constants.}  The {\tt ANTENNA}
table may carry information about the polarization characteristics of
the feeds if this is known.  If information about the polarization
characteristics of the feeds is contained in the table, then the {\tt
  NOPCAL} keyword shall have the value 2.  If no information about the
polarization characteristics is contained in the table, then the {\tt
  NOPCAL} keyword shall have the value 0.

{\bf Polarization parameterization.} If the table contains information
about the polarization characteristics of the feeds, then the feed
parameterization that is used shall be indicated by the value of the
{\tt POLTYPE} keyword, as given in Table~\Hi{19}.

\begin{center}
\underline{\bf{TABLE \Hi{19}: Values for the {\tt POLTYPE} keyword}}\\
\begin{tabular}{ll}
\noalign{\vspace{2pt}}
\underline{{\bf Value\vphantom{y}}} & \underline{\bf{Model\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt 'APPROX'}  & Linear approximation for circular feeds \\
{\tt 'X-Y LIN'} & Linear approximation for linear feeds \\
{\tt 'ORI-ELP'} & Orientation and ellipticity
\end{tabular}
\end{center}

\subsection{Table structure}

Each row in the table gives the parameters for one antenna in one
frequency setup over a designated period of time.  Each of the columns
listed in Table~\Hi{20} shall be present.  The order of the columns
does not matter.

{\bf Time covered by the record.} The value in the {\tt TIME} column
shall be the number of days that have elapsed between 0 hours on the
reference date for the current array and the center of the time period
covered by the current row.  The value in the {\tt TIME\_INTERVAL}
column shall be the number of days covered by the current row.

{\bf Antenna identification.} The value in the {\tt ANNAME} column
shall be the name of the antenna to which the current row applies.
This should be identical to the name given in the {\tt
  ARRAY\_GEOMETRY} table.  The value in the {\tt ANTENNA\_NO} column
shall be the antenna identification number and \Hi{the value} in the
{\tt ARRAY} column shall be the array number of the antenna to which
the current row applies.

\begin{center}
\underline{\bf{TABLE \Hi{20}: Mandatory \Me{and optional} columns for
    the {\tt ANTENNA} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}    & {\tt 1D} & days     & Central time of period covered
                                      by record \\
{\tt TIME\_INTERVAL} & {\tt 1E} & days & Duration of period covered by
                                      record \\
{\tt ANNAME}  & {\tt 8A} &          & Antenna name \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}   & {\tt 1J} &          & Array number \\
{\tt FREQID}  & {\tt 1J} &          & Frequency setup number \\
{\tt NO\_LEVELS} & {\tt 1J} &       & Number of digitizer levels \\
{\tt POLTYA}  & {\tt 1A} &          & Feed A polarization label \\
{\tt POLAA}   & {\tt E}(\nband) & degrees & Feed A orientation \\
{\tt POLCALA} & {\tt E}(\npcal,\nband) & & Feed A polarization
                                      parameters \\
{\tt POLTYB}  & {\tt 1A} &          & Feed B polarization label \\
{\tt POLAB}   & {\tt E}(\nband) & degrees & Feed B orientation \\
{\tt POLCALB} & {\tt E}(\npcal,\nband) & & Feed B polarization
                                      parameters \\
\hline
\Me{{\tt BEAMFWHM}} & \Me{{\tt E}(\nband)} & \Me{degrees / m} &
                                     \Me{{\tt Antenna beam fwhm}}
\end{tabular}
\end{center}

{\bf Frequency setup number.}  The value in the {\tt FREQID} column
shall be the number of the frequency setup to which the current record
applies.

{\bf Number of digitizer levels.}  The value in the {\tt NO\_LEVELS}
column shall be the number of digitizer levels for the antenna.  This
shall be 2 for Mk II and Mk III terminals and may be either 2 or 4 for
VLBA terminals (depending on observing mode).

{\bf Polarization types.}  The value in the {\tt POLTYA} column shall
be the feed polarization of feed A\@.  This corresponds to
polarization 1 in calibration tables.  The value in the {\tt POLTYB}
column shall be the feed polarization of feed B (if any).  See
Section~\ref{Intr:feedpol} on page~\pageref{Intr:feedpol}.  The two
feeds may be either circularly or linearly polarized.  Mixtures of
linear and circular polarizations are forbidden.  If two orthogonal
polarizations are used, it is strongly recommended that feed A
\Hi{({\tt POLTYA})} be {\tt 'R'} or {\tt 'X'} and feed B \Hi{({\tt
POLTYB})} be {\tt 'L'} or {\tt 'Y'}\@.

{\bf Feed orientations.} The value of the {\tt POLAA} columns shall be
an array, each element of which is the orientation of feed A in the
corresponding band, given in degrees.  \Hi{Similarly,} the {\tt POLAB}
column shall contain the feed orientations for feed B\@.  See
Section~\ref{Intr:feedpol} on page~\pageref{Intr:feedpol}.

{\bf Polarization parameters.}  If the value of the {\tt NOPCAL}
keyword is 2, then the {\tt POLCA} and {\tt POLCB} columns shall
contain 2 polarization parameters for each band for feeds A and B,
respectively.  If the value of the {\tt POLTYPE} keyword is {\tt
  'APPROX'} or {\tt 'X-Y LIN'}, then the first parameter shall be the
real part of the leakage term and the second shall be the imaginary
part of the leakage term.  If the value of the {\tt POLTYPE} keyword
is {\tt 'OTI-ELP'}, then the first parameter shall be the orientation
and the second shall be the ellipticity and both shall be given in
radians.  See Section~\ref{Intr:feedpol} on
page~\pageref{Intr:feedpol}.

\mecol
{\bf Antenna beam.} The optional column {\tt BEAMFWHM} shall contain
the full-width at half maximum of the (single-dish) beam of the
antenna.  It shall be expressed in degrees per meter and shall be
assumed to scale with actual observing wavelength within the
corresponding band.
\hblack

\section{The {\tt FREQUENCY} table}
\label{s:FQ}

The {\tt FREQUENCY} table provides information about the frequency
setups used in a FITS-IDI file.  There shall be no more than one {\tt
FREQUENCY} table in a FITS-IDI file.  If the {\tt FREQID} \Hi{random}
parameter is used in the {\tt UV\_DATA} tables, then a {\tt FREQUENCY}
table is mandatory.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{21}.}

\begin{center}
\underline{\bf{TABLE \Hi{21}: Mandatory keywords for {\tt
    FREQUENCY} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'FREQUENCY'}  \\
{\tt TABREV}    & I & 1 \\
\end{tabular}
\end{center}

\subsection{Table structure}

Each row in the table provides information about a single frequency
setup.  Each of the columns listed in Table~\Hi{22} must be present.
The order of the columns does not matter.

\begin{center}
\underline{\bf{TABLE \Hi{22}: Mandatory columns for the {\tt
      FREQUENCY} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt FREQID}    & {\tt 1J} &           & Frequency setup number \\
{\tt BANDFREQ}  & {\tt D}(\nband) & Hz & Frequency offsets \\
{\tt CH\_WIDTH} & {\tt \Hi{E}}(\nband) & Hz & Individual channel widths \\
{\tt TOTAL\_BANDWIDTH} & {\tt \Hi{E}}(\nband) & Hz & Total bandwidths
                                       of bands \\
{\tt SIDEBAND} & {\tt J}(\nband) &     & Sideband flag \\
\end{tabular}
\end{center}

{\bf Frequency \Hi{setup} number.}  The {\tt FREQID} column shall
contain the frequency setup number for the frequency setup.  This
shall be a positive integer that uniquely identifies the frequency
setup.  One of the frequency setups shall be assigned the frequency
setup number 1.

{\bf Band frequency \Hi{offsets}.}  The {\tt BANDFREQ} column shall
contain a one-dimensional array of band-specific frequency offsets.
There shall be one element for each band in the file.  The offset for
the first band in the frequency setup with {\tt FREQID} \Hi{value} 1
should be 0 Hz.  \Hi{Frequency offsets may be of either sign.}

{\bf Bandwidths.} The {\tt CH\_WIDTH} column shall contain a
one-dimensional array of channel bandwidths.  There shall be one
element for each band in the file and each element is the frequency
spacing between adjacent channels in the corresponding band for the
current frequency \Hi{setup}.  Each entry shall be positive.  The
channel bandwidth for the first band in the frequency setup with {\tt
FREQID} \Hi{value} 1 shall be identical to the value of the {\tt
CHAN\_BW} keyword.

The {\tt TOTAL\_BANDWIDTH} column shall contain a one-dimensional array
of total bandwidths for each band.  There shall be one element for each
band in the file.  The total bandwidth for a band is normally obtained
by multiplying the channel bandwidth by the number of channels.

{\bf Sidebands.}  The {\tt SIDEBAND} column shall contain a
one-dimensional array of sideband flags.  There shall be one entry for
each band in the file.  Each flag shall have the value $+1$ if the
corresponding band is an upper sideband in the current frequency setup
and $-1$ if the corresponding band is a lower sideband in the current
frequency setup.  See Sect.~\ref{Intr:freq} on
page~\pageref{Intr:freq}.

\section{The {\tt SOURCE} table}
\label{s:SO}

The {\tt SOURCE} table contains information about the sources for
which data are available in the FITS-IDI file.  There shall be no more
than one {\tt SOURCE} table in a FITS-IDI file.  If the {\tt
  SOURCE\_ID} random parameter is used in the {\tt UV\_DATA} tables,
then a {\tt SOURCE} table is mandatory.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{23}.}

\begin{center}
\underline{\bf{TABLE \Hi{23}: Mandatory keywords for {\tt
    SOURCE} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'SOURCE'}  \\
{\tt TABREV}    & I & 1 \\
\end{tabular}
\end{center}

\subsection{Table structure}

Each row in the table provides information for one source for each
frequency setup in which it is observed.  Each of the columns listed
in Table~\Hi{24} must be present.  The order of the columns does not
matter.

\begin{center}
\underline{\bf{TABLE \Hi{24}: Mandatory \Me{and optional} columns for
    the {\tt SOURCE} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt SOURCE\_ID} & {\tt 1J}  &         & Source ID number \\
{\tt SOURCE}     & {\tt 16A} &         & Source name \\
{\tt QUAL}       & {\tt 1J}  &         & Source \Hi{name numeric} qualifier \\
{\tt CALCODE}    & {\tt 4A}  &         & Calibrator code \\
{\tt FREQID}     & {\tt 1J}  &         & Frequency \Hi{setup number} \\
{\tt IFLUX}      & {\tt E}(\nband) & Jy & Stokes I flux density \\
{\tt QFLUX}      & {\tt E}(\nband) & Jy & Stokes Q flux density \\
{\tt UFLUX}      & {\tt E}(\nband) & Jy & Stokes U flux density \\
{\tt VFLUX}      & {\tt E}(\nband) & Jy & Stokes V flux density \\
{\tt ALPHA}      & {\tt E}(\nband) & Jy & Spectral index for each band \\
{\tt FREQOFF}    & {\tt E}(\nband) & Hz & Frequency offset for each band \\
{\tt RAEPO}      & {\tt 1D}   & degrees & Right ascension at mean
                                          equinox \\
{\tt DECEPO}     & {\tt 1D}   & degrees & Declination at mean
                                          \Hi{equinox} \\
{\tt EQUINOX}    & {\tt 8A}   &         & Mean equinox \\
{\tt RAAPP}      & {\tt 1D}   & degrees & Apparent right ascension \\
{\tt DECAPP}     & {\tt 1D}   & degrees & Apparent declination \\
{\tt SYSVEL}     & {\tt D}(\nband) & meters/sec & Systemic velocity
                                        for each band \\
{\tt VELTYP}     & {\tt 8A} &           & Velocity type \\
{\tt VELDEF}     & {\tt 8A} &           & Velocity definition \\
{\tt RESTFREQ}   & {\tt D}(\nband) & Hz & Line rest frequency for each
                                        band \\
{\tt PMRA}       & {\tt 1D} & degrees/day & Proper motion in right
                                        ascension \\
{\tt PMDEC}      & {\tt 1D} & degrees/day & Proper motion in
                                        declination \\
{\tt PARALLAX}   & {\tt 1E} & arcseconds  & Parallax of source \\
\hline
\Me{{\tt EPOCH}} & \Me{{\tt 1D}} & \Me{years} & \Me{Epoch of
                                               observation}
\end{tabular}
\end{center}

{\bf Source ID number.}  The {\tt SOURCE\_ID} column shall contain the
source identification number for the source.  The source
identification number is a positive integer that uniquely identifies
the source.  \Hi{The keyword name {\tt 'ID\_NO.'} has been used as a
synonym by the VLBA correlator.}

{\bf Source name and qualifier.} The {\tt SOURCE} column shall contain
the name of the source.  The {\tt QUAL} column shall contain a {\it
  source qualifier}.  The source qualifier is a \Hi{positive} integer
that is used in combination with the name of the source to identify it
to a human user.  For example, if several regions about a named radio
source are observed, the same source name may be used for all of them
and they may be distinguished by having different source qualifiers.

{\bf Calibrator code.}  The {\tt CALCODE} column shall contain a {\it
  calibrator code}.  A calibrator code is an instrument-specific code
that encodes information about the suitability of the source for use
as a calibrator.

{\bf Frequency ID\@.}  The {\tt FREQID} column shall contain the
frequency setup number to which the current row applies.

{\bf Flux density information.}  The {\tt IFLUX} column shall contain
an array of flux densities.  There shall be one entry for every band
in the file and each entry shall be the flux density of the source in
Stokes \Hi{parameter} I at the reference frequency for that band in
the current frequency setup.  \Hi{Similarly, the {\tt QFLUX}, {\tt
UFLUX}, and {\tt VFLUX} columns shall contain arrays of flux densities
for Stokes parameters Q, U, and V, respectively, for every band in the
file appropriate to those bands in the current frequency setup.}  If
the flux density is unknown, then the value shall either be zero or
NaN (not a number).

{\bf Spectral indices.}  The {\tt ALPHA} column shall contain an array
of spectral indices.  There shall be one entry for every band in the
file and each entry shall be the spectral index of the source for that
band in the current frequency setup.  The spectral index $\alpha$ is
defined such that the flux density $S(\nu)$ as a function of
frequency $\nu$, is related to the flux density at the reference
frequency $S(\nu_0)$ following Eq.~\ref{Eq:alpha}.
\begin{equation}
S(\nu) = S(\nu_0) \cdot (\nu \Me{/} \nu_0)^\alpha  \label{Eq:alpha} \, .
\end{equation}

{\bf Source-specific frequency offsets.}  The {\tt FREQOFF} column
shall contain an array of frequency offsets.  There shall be one entry
for \Me{each} band in the file and each entry shall contain the
source-specific frequency offset for that band in the \Hi{frequency
setup specified by the value in the {\tt FREQID} column.}  \Me{The
column gives the offsets in the frequency of the reference pixel on
the frequency axis and should be added to the {\tt BANDFREQ} value
from the {\tt FREQUENCY} table.}  See Sect.~\ref{Intr:freq} on
page~\pageref{Intr:freq}.

{\bf Velocity information.}  The {\tt SYSVEL} column shall contain an
array of velocities.  There shall be one entry for each band in the
file and every entry shall give the systemic velocity of the source at
the reference frequency for that band in the current frequency
\Hi{setup}.

The {\tt VELTYP} column shall contain a string that specifies the
frame of reference for the systemic velocities.  This string shall be
one of those listed in Table~\Hi{25}.

%\vfill\eject
\begin{center}
\underline{\bf{TABLE \Hi{25}: Frames of reference for {\tt VELTYP}}} \\
\begin{tabular}{ll}
\noalign{\vspace{2pt}}
\underline{{\bf Value\vphantom{y}}} & \underline{\bf{Frame of
    reference\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt LSR}        & Local standard of rest \\
{\tt BARYCENT}   & Solar system barycenter \\
{\tt GEOCENTR}   & Center of mass of the Earth \\
{\tt TOPOCENT}   & Uncorrected
\end{tabular}
\end{center}

The {\tt VELDEF} column shall contain a string indicating the
convention used for systemic velocities.  It shall be either {\tt
  'RADIO'} or {\tt 'OPTICAL'}\@.

The {\tt RESTFREQ} column shall contain an array of rest frequencies.
There shall be one entry for \Me{each} band in the file and each entry
shall contain the nominal rest frequency for the line being observed
in the corresponding band for this source using the current frequency
setup.  \Me{This line is the spectral line defining the velocity
information provided.}  If a rest frequency is not available for a
particular band, then the corresponding entry should be zero or NaN.
\Me{No provision is made for specifying more than one spectral line
  per band.}

{\bf Source positions.}  The {\tt RAEPO} column shall contain the
right ascension of the phase center associated with the source at
the standard mean \Hi{equinox}.  The {\tt DECEPO} column shall contain
the declination of the phase center at the standard mean \Hi{equinox}.
The {\tt EQUINOX} column shall contain a string identifying the
standard mean \Hi{equinox} used for the current source.  This shall be
either {\tt '1950.0B'} or {\tt 'J2000'}\@.  \Hi{The VLBA writes an
{\tt EPOCH} column in double precision containing 1950.0 or 2000.0.}
\Me{This VLBA column must be understood as equinox values not epoch
  values.}

The {\tt RAAPP} column shall contain the best available
approximation\footnote{There are no enforceable standards for the
  quality of this approximation.  For example, the VLBA merely repeats
  the coordinates for the standard mean \Hi{equinox} in these fields.}
of the right ascension of the phase center associated with the source
at 0 hours on the reference date for array 1.  The {\tt DECAPP} column
shall contain the best available approximation of the \Hi{declination}
of the phase center associated with the source at 0 hours on the
reference date for array 1.

The {\tt PMRA} column should contain the proper motion of the source
in right ascension.  The {\tt PMDEC} column should contain the proper
motion of the source in declination.  The {\tt PARALLAX} column should
contain the parallax of the source.  If the proper \Hi{motions and/or
parallax} are unknown, then \Hi{the corresponding} fields should be
set to 0.  \Me{The optional {\tt EPOCH} column must be given if any of
  these fields are not zero and is the date to which the equinox and
  apparemt positions of the moving source apply.}

\section{The {\tt INTERFEROMETER\_MODEL} table}
\label{s:IM}

The {\tt INTERFEROMETER\_MODEL} table contains information about the
interferometer models used by the correlator.  {\tt
  INTERFEROMETER\_MODEL} tables are optional.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{26}.}

\begin{center}
\underline{\bf{TABLE \Hi{26}: Mandatory keywords for {\tt
    INTERFEROMETER\_MODEL} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'INTERFEROMETER\_MODEL'}  \\
{\tt TABREV}    & I & 2 \\
{\tt NPOLY}     & I & Number of polynomial terms \npoly \\
{\tt NO\_POL}   & I & Number of polarizations
\end{tabular}
\end{center}

{\bf Number of polynomial terms.}  Delays and rates are given as
polynomials with \npoly\ terms \Hi{as specified by} the value of the
{\tt NPOLY} keyword.  This shall be a positive integer.

{\bf Number of polarizations.}  The {\tt INTERFEROMETER\_MODEL} may
contain information for one or two orthogonal polarizations.  The
number of polarizations shall be given by the {\tt NO\_POL} keyword.

\subsection{Table structure}

Each row of the table shall give the model information applicable to
one antenna over a range of time.  Each of the columns listed in
Table~\Hi{27} \Hi{above the horizontal line} must be present.  The
columns for the second polarization, listed below the horizontal line,
must appear but only if the value of the {\tt NO\_POL} keyword is two.
Polarization 1 corresponds to feed A in the {\tt ANTENNA} table and
polarization 2 to feed B\@.  The order of the columns does not matter.

\vfill\eject
\begin{center}
\underline{\bf{TABLE \Hi{27}: Mandatory columns for the {\tt
      INTERFEROMETER\_\Me{MODEL}} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & Starting time of interval \\
{\tt TIME\_INTERVAL} & {\tt 1E} & days & Duration of interval \\
{\tt SOURCE\_ID}  & {\tt 1J} &       & Source ID number \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt I.FAR.ROT}   & {\tt 1E} & rad m$^{-2}$ & Ionospheric Faraday
                                       rotation \\
{\tt FREQ.VAR}    & {\tt E}(\nband) & Hz & Time variable frequency
                                       offsets \\
{\tt PDELAY\_1}   & \Hi{{\tt D}}(\npoly,\nband) & turns & Phase delay
                                       polynomials for polarization 1 \\
{\tt GDELAY\_1}   & \Hi{{\tt D}}(\npoly,\nband) & seconds & Group delay
                                       polynomials for polarization 1 \\
{\tt PRATE\_1}    & \Hi{{\tt D}}(\npoly,\nband) & Hz & Phase delay rate
                                       polynomials for polarization 1 \\
{\tt GRATE\_1}    & \Hi{{\tt D}}(\npoly,\nband) & sec/sec & Group delay rate
                                       polynomials for polarization 1 \\
{\tt DISP\_1}     & {\tt 1E} & sec \Me{m$^{-2}$} & Dispersive delay for
                                       polarization 1 \\
{\tt DDISP\_1}    & {\tt 1E} & sec \Me{m$^{-2}$}/sec & Rate of change of dispersive
                                       delay for \\
                  &          &         & \hspace{1em} polarization 1 \\
\hline
{\tt PDELAY\_2}   & \Hi{{\tt D}}(\npoly,\nband) & turns & Phase delay
                                       polynomials for polarization 2 \\
{\tt GDELAY\_2}   & \Hi{{\tt D}}(\npoly,\nband) & seconds & Group delay
                                       polynomials for polarization 2 \\
{\tt PRATE\_2}    & \Hi{{\tt D}}(\npoly,\nband) & Hz & Phase delay rate
                                       polynomials for polarization 2 \\
{\tt GRATE\_2}    & \Hi{{\tt D}}(\npoly,\nband) & sec/sec & Group delay rate
                                       polynomials for polarization 2 \\
{\tt DISP\_2}     & {\tt 1E} & sec \Me{m$^{-2}$} & Dispersive delay for
                                       polarization 2 \\
{\tt DDISP\_2}    & {\tt 1E} & sec \Me{m$^{-2}$}/sec & Rate of change of dispersive
                                       delay for \\
                  &          &         & \hspace{1em} polarization 2 \\
\end{tabular}
\end{center}

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the earliest time covered by the current row as the number of days
that have elapsed since 0 hours on the reference date in the time
system used for the array.  This is also the zero time for the delay
and rate polynomials.  The {\tt TIME\_INTERVAL} column shall contain
the number of days for which the model described by the row remains
valid.  Note that the {\tt INTERFEROMETER\_MODEL} table differs from
the other FITS-IDI tables in that the value in the {\tt TIME} column
is the beginning of the interval covered and not the center of the
interval.

{\bf Source identification number.}  The {\tt SOURCE\_ID} column shall
contain the source identification number of the source for which the
model is valid.

{\bf Antenna and array numbers.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number of the antenna to which the
model applies.  The {\tt ARRAY} column shall contain the array number
of the array to which the antenna belongs.

{\bf Frequency setup number.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup for which the model
applies.

{\bf Ionospheric Faraday rotation.}  The {\tt I.FAR.ROT} column shall
contain the value of the ionospheric Faraday rotation applied at the
correlator.  If no correction has been applied, then this field shall
contain 0.0.

{\bf Time variable frequency offsets.} The {\tt FREQ.VAR} column shall
contain an array of time-variable frequency offsets that were applied.
\Hi{There shall be one entry for every band in the file and each entry
shall contain the additional frequency offsets applied to the band as
a function of time.}

{\bf Phase and group delay polynomials.}  The {\tt GDELAY\_1} and {\tt
  GDELAY\_2} columns shall contain polynomial terms for the group
delays for each band in polarization 1 and 2\Hi{, respectively}.  The
group delay is calculated from these according to Eq.~\ref{Eq:delay},
where $\Delta t$ is the number of seconds that have elapsed since the
beginning of the interval covered by the model and $p_i$ is the
polynomial term with index $i$ for the current band.
\begin{equation}
\tau_g = \sum_{i=1}^{n_{poly}} p_i \cdot \left( \Delta t \right) ^{i-1}
  \label{Eq:delay} \, .
\end{equation}
The {\tt PDELAY\_1} and {\tt PDELAY\_2} columns shall contain the
polynomial terms for the phase delay evaluated at the reference
frequency for each band in the same format.

{\bf Phase and group delay rates.}  The {\tt GRATE\_1} and {\tt
GRATE\_2} columns shall contain polynomial terms for the group delay
rates (\ie\ the time derivatives of the group delays) for each band in
polarizations 1 and 2, respectively.  Similarly, the {\tt PRATE\_1}
and {\tt PRATE\_2} columns shall contain the polynomial terms for the
phase delay rates.  The same conventions are used as for the group
delay terms.  Note that the rate terms may be expected to be
approximately equal to the delay terms but shifted by one position,
but that exact equivalence is not required.  This allows for
correlators such as the VLBA which model delay and rate separately.

{\bf Dispersive delays.}  The {\tt DISP\_1} and {\tt DISP\_2} columns
shall contain the components of the group delays for polarization 1
and 2 that scale with the square of the wavelength (\eg\ ionospheric
delay).  These shall be specified by giving the delays \Me{in seconds
per meter squared}.  The {\tt DDISP\_1} and {\tt DDISP\_2} columns
give the time derivatives of the dispersive delays in {\tt DISP\_1}
and {\tt DISP\_2}\@.

\Hi{Table revision 1 of the {\tt INTERFEROMETER\_TABLE} differs from
table revision 2 in the spelling of column labels from {\tt PDELAY\_1}
through {\tt DDISP\_2}.  In revision 1, the underscore character in
each was replaced with a blank character.}

\section{The {\tt SYSTEM\_TEMPERATURE} table}
\label{s:TS}

The {\tt SYSTEM\_TEMPERATURE} table contains a record of system and
antenna temperatures for the antenn\ae\ used in the FITS-IDI file.
{\tt SYSTEM\_TEMPERATURE} tables are optional.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{28}.}

\begin{center}
\underline{\bf{TABLE \Hi{28}: Mandatory keywords for {\tt
    SYSTEM\_TEMPERATURE} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'SYSTEM\_TEMPERATURE'}  \\
{\tt TABREV}    & I & 1 \\
{\tt NO\_POL}   & I & Number of polarizations in the table
\end{tabular}
\end{center}

{\bf Number of polarizations.}  If the table contains information for
two polarizations, the value of {\tt NO\_POL} keyword shall be 2.  If
the table only contains information for one polarization, then the
value of the {\tt NO\_POL} keyword shall be 1.

\subsection{Table structure}

Each row contains system temperatures and antenna temperatures for a
single antenna using a single frequency setup and that is valid for a
limited range of times.  Each row shall contain the columns shown in
Table~\Hi{29} \Hi{above the horizontal line.  Columns for the second
polarization, listed below the horizontal line, must also appear but
only if the value of the {\tt NO\_POL} keyword is two.}  The columns
may be written in any order.

\vfill\eject
\begin{center}
\underline{\bf{TABLE \Hi{29}: Mandatory columns for the {\tt
      SYSTEM\_TEMPERATURE} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & Central time of interval \\
{\tt TIME\_INTERVAL} & {\tt 1E} & days & Duration of interval \\
{\tt SOURCE\_ID}  & {\tt 1J} &       & Source ID number \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt TSYS\_1}     & {\tt E}(\nband) & Kelvin & System temperatures for
                                     polarization 1 \\
{\tt TANT\_1}     & {\tt E}(\nband) & Kelvin & Antenna temperatures for
                                     polarization 1 \\
\hline
{\tt TSYS\_2}     & {\tt E}(\nband) & Kelvin & System temperatures for
                                     polarization 2 \\
{\tt TANT\_2}     & {\tt E}(\nband) & Kelvin & Antenna temperatures for
                                     polarization 2 \\
\end{tabular}
\end{center}

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the number of days that have elapsed between 0 hours on the reference
date for the current array and the center of the time period covered
by the current row.  The {\tt TIME\_INTERVAL} column shall contain the
number of days covered by the current row.

{\bf Source identification number.}  The {\tt SOURCE\_ID} column shall
contain the source identification number of the source to which the
current \Hi{row} applies.

{\bf Antenna identification.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number and the {\tt ARRAY} column
shall contain the array number of the antenna to which the current row
applies.

{\bf Frequency setup number.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup to which the current
\Hi{row} applies.

{\bf System temperatures.}  The {\tt TSYS\_1} and {\tt TSYS\_2}
columns shall contain arrays \Hi{for polarizations 1 and 2,
  respectively,} of system temperatures\Hi{, one for each band in the
  current file.}  If system temperature information is not available
for any band in either polarization, then the corresponding elements
of the arrays shall be set to NaN\@.

{\bf Antenna temperatures.}  The {\tt TANT\_1} and {\tt TANT\_2}
columns shall contain arrays \Hi{for polarizations 1 and 2,
  respectively,} of antenna temperatures\Hi{, one for each band in the
  current file.}  If antenna temperature information is not available
for any band in either polarization, then the corresponding elements
of the arrays shall be set to NaN\@.

\section{The {\tt GAIN\_CURVE} table}
\label{s:GC}

The {\tt GAIN\_CURVE} table contains tabulated or parameterized gain
curve information for the antenn\ae\ used in the FITS-IDI file.  It is
an optional table.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{30}.}

\begin{center}
\underline{\bf{TABLE \Hi{30}: Mandatory keywords for {\tt
    GAIN\_CURVE} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'GAIN\_CURVE'}  \\
{\tt TABREV}    & I & 1 \\
{\tt NO\_POL}   & I & Number of polarizations in the table \\
{\tt NO\_TABS}  & I & Number of tabulated values \ntab
\end{tabular}
\end{center}

{\bf Number of polarizations.}  If the table contains information for
two polarizations, the value of {\tt NO\_POL} keyword shall be 2.  If
the table only contains information for one polarization, then the
value of the {\tt NO\_POL} keyword shall be 1.

{\bf Number of tabulated values.} The value of the {\tt NO\_TABS}
keyword shall be the maximum number of tabulated values or parameters
for a gain curve in the table.  This shall be a positive \Hi{integer}.

\subsection{Table structure}

Each row contains gain information for a single antenna using a single
frequency setup.  Each row shall contain the columns shown in
Table~\Hi{31 above the horizontal line.  Columns for the second
polarization, listed below the horizontal line, must also appear but
only if the value of the {\tt NO\_POL} keyword is two.}  The columns
may be written in any order.

\begin{center}
\underline{\bf{TABLE \Hi{31}: Mandatory columns for the {\tt
      GAIN\_CURVE} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt TYPE\_1}     & {\tt J}(\nband) &  & Gain curve types for
                                         polarization 1 \\
{\tt NTERM\_1}    & {\tt J}(\nband) &  & Number of terms or entries for
                                         polarization 1 \\
{\tt X\_TYP\_1}   & {\tt J}(\nband) &  & $x$ value types for
                                         polarization 1 \\
{\tt Y\_TYP\_1}   & {\tt J}(\nband) &  & $y$ value types for
                                         polarization 1 \\
{\tt X\_VAL\_1}   & {\tt E}(\nband) &  & $x$ values for polarization 1 \\
{\tt Y\_VAL\_1}   & {\tt E}(\ntab,\nband) &  & $y$ values for polarization 1 \\
{\tt GAIN\_1}     & {\tt E}(\ntab,\nband) &  & Relative gain values
                                         for polarization 1 \\
{\tt SENS\_1}     & {\tt E}(\nband) & K/Jy& Sensitivities for
                                         polarization 1 \\
\hline
{\tt TYPE\_2}     & {\tt J}(\nband) &  & Gain curve types for
                                         polarization 2 \\
{\tt NTERM\_2}    & {\tt J}(\nband) &  & Number of terms or entries for
                                         polarization 2 \\
{\tt X\_TYP\_2}   & {\tt J}(\nband) &  & $x$ value types for
                                         polarization 2 \\
{\tt Y\_TYP\_2}   & {\tt J}(\nband) &  & $y$ value types for
                                         polarization 2 \\
{\tt X\_VAL\_2}   & {\tt E}(\nband) &  & $x$ values for polarization 2 \\
{\tt Y\_VAL\_2}   & {\tt E}(\ntab,\nband) &  & $y$ values for polarization 2 \\
{\tt GAIN\_2}     & {\tt E}(\ntab,\nband) &  & Relative gain values
                                         for polarization 2 \\
{\tt SENS\_2}     & {\tt E}(\nband) & K/Jy& Sensitivities for
                                         polarization 2 \\
\end{tabular}
\end{center}

{\bf Antenna identification.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number and the {\tt ARRAY} column
shall contain the array number of the antenna to which the current row
applies.

{\bf Frequency setup number.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup to which the current
row applies.

\subsection{Gain curve encoding}

A separate gain curve shall be provided for each band in each
polarization.  Each gain curve may be provided as a list of tabulated
values, as a polynomial in a single variable, or as a spherical
harmonic expansion in hour angle and co-declination ($90^{\circ}$ -
declination) as used by the Green Bank 140-foot telescope.  The type
of gain curve provided is indicated by the value of the {\tt TYPE\_1}
and {\tt TYPE\_2} array corresponding to the band\Hi{: code 1 for
tabulated, 2 for polynomial, and 3 for spherical harmonic.}  Different
types of gain curve may be provided for different bands.

In each case, the gain curves are dimensionless and should be
multiplied by the sensitivity for the corresponding band to obtain the
actual gain.  The sensitivities for each band are listed in the {\tt
  SENS\_1} and {\tt SENS\_2} columns, indexed by band number.

\subsubsection{Tabulated gain curves}

If the gain curve for a given band is tabulated, then the number of
tabulated values shall be given in the {\tt NTERM\_1} or {\tt
  NTERM\_2} column for the band, depending on polarization.  This
shall be a positive number and shall not be greater than \ntab.  The
variable against which the gain values are tabulated shall be
indicated by the value in {\tt Y\_TYP\_1} or {\tt Y\_TYP\_2} column
for the corresponding band \Hi{and polarization} as shown in
Table~\Hi{32}.

\begin{center}
\underline{\bf{TABLE 32: Types for $x$ and $y$ values}}\\
\begin{tabular}{cl}
\noalign{\vspace{2pt}}
\underline{{\bf Code\vphantom{y}}} & \underline{\bf{Value type}} \\
\noalign{\vspace{2pt}}
 0 & None \\
 1 & Elevation in degrees \\
 2 & Zenith angle in degrees \\
 3 & Hour angle in degrees \\
 4 & Declination in degrees \\
 5 & Co-declination in degrees
\end{tabular}
\end{center}

The values against which the gain is tabulated shall be listed in the
first elements of the {\tt Y\_VAL\_1} or {\tt Y\_VAL\_2} matrix column
that corresponds to the band and the gain values shall be listed in
the corresponding entries of the {\tt GAIN\_1} or {\tt GAIN\_2}
matrices.  Unused entries in the {\tt Y\_VAL\_1}, {\tt Y\_VAL\_2},
{\tt GAIN\_1}, and {\tt GAIN\_2} arrays shall be set to NaN.

If the gain curve is tabulated against hour angle, then the entry in
the {\tt X\_TYP\_1} or {\tt X\_TYP\_2} \Hi{column array} for the band
shall be 4 (declination) and the corresponding entry in the {\tt
  X\_VAL\_1} or {\tt X\_VAL\_2} \Hi{column array} shall be the
declination at which the gain curve is tabulated in degrees.  In all
other cases, the {\tt X\_TYP\_1} or {\tt X\_TYP\_2}  \Hi{column array}
entry shall be zero and the {\tt X\_VAL\_1} or {\tt X\_VAL\_2}
\Hi{column array} entry shall be NaN.

\subsubsection{Polynomial gain curves}

If the gain curve for a given band is polynomial, then the value in
the {\tt Y\_TYP\_1} or  {\tt Y\_TYP\_2} column \Hi{array}
corresponding to the band shall designate the polynomial variable as
shown in Table~\Hi{32} and the value in the {\tt NTERM\_1} or {\tt
  NTERM\_2} column \Hi{array} corresponding to the band shall be the
number of terms in the polynomial.  This must be a positive number,
but may not be larger than \ntab.  The polynomial coefficients shall
be listed in the first elements in the {\tt GAIN\_1} or {\tt GAIN\_2}
column \Hi{array} that corresponds to the band and starting with the
coefficient of the zeroth-order term.  Unused elements in {\tt
  GAIN\_1} and {\tt GAIN\_2} \Hi{column arrays} shall be set to 0.0 or
to NaN.

If the gain curve is a polynomial of hour angle, then the value of {\tt
X\_TYP\_1} or {\tt X\_TYP\_2} \Hi{column array} that corresponds to
the band shall be set to 4 and the corresponding element in the {\tt
  X\_VAL\_1} or  {\tt X\_VAL\_2} \Hi{column array} shall be the
declination at which the gain curve is evaluated.  In all other cases,
the {\tt X\_TYP\_1} or {\tt X\_TYP\_2} \Hi{column array} entry shall
be zero and the {\tt X\_VAL\_1} or {\tt X\_VAL\_2} \Hi{column array}
entry shall be NaN.

All entries in the {\tt Y\_VAL\_1} and {\tt Y\_VAL\_1} \Hi{column}
arrays corresponding to the band shall be NaN.

\subsubsection{Spherical harmonics}

If the gain curve for a band is a spherical harmonic, then the value
in \Hi{the} {\tt NTERM\_1} or {\tt NTERM\_2} \Hi{column array}
corresponding to the band shall be the number of terms in the
expansion.  This must be a positive number, but may not be larger than
\ntab.  The \Hi{first elements} of the {\tt GAIN\_1} or {\tt GAIN\_2}
\Hi{column} matrix that corresponds to the band shall hold the
coefficients of the harmonic expansion as listed in Table~\Hi{33}.

\begin{center}
\underline{\bf{TABLE 33: Spherical harmonic coefficients in {\tt
      GAIN\_1} and {\tt GAIN\_2}}}\\
\begin{tabular}{cl}
\noalign{\vspace{2pt}}
\underline{{\bf Index\vphantom{y}}} & \underline{\bf{Coefficient\vphantom{y}}} \\
\noalign{\vspace{2pt}}
 1 & {\tt A00} \\
 2 & {\tt A10} \\
 3 & {\tt A11E} \\
 4 & {\tt A110} \\
 5 & {\tt A20} \\
 6 & {\tt A21E} \\
 7 & {\tt A210} \\
 8 & {\tt A22E} \\
 9 & {\tt A220} \\
 10 & {\tt A30}
\end{tabular}
\end{center}

The value in the {\tt X\_TYP\_1} or {\tt X\_TYP\_2} \Hi{column array}
corresponding to the band shall be 5 (co-declination) and the
corresponding value in the {\tt Y\_TYP\_1} or {\tt Y\_TYP\_2}
\Hi{column array} shall be 3 (hour angle).  All entries in the {\tt
  X\_VAL\_1} and {\tt Y\_VAL\_1} or  {\tt X\_VAL\_2} and {\tt
  Y\_VAL\_2} \Hi{column arrays} that correspond to the band shall be
set to NaN.

\section{The {\tt PHASE-CAL} table}
\label{s:PC}

The {\tt PHASE-CAL}\footnote{Note that the table name contains a
  hyphen rather than an underscore.} table contains the phase
calibration data.  It is an optional table.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{34}.}

\begin{center}
\underline{\bf{TABLE \Hi{34}: Mandatory keywords for {\tt
    PHASE-CAL} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'PHASE-CAL'}  \\
{\tt TABREV}    & I & 2 \\
{\tt NO\_POL}   & I & Number of polarizations in the table \\
{\tt NO\_TABS}  & I & Number of tones \ntone
\end{tabular}
\end{center}

{\bf Number of polarizations.}  If the table contains information for
two polarizations, the value of {\tt NO\_POL} keyword shall be 2.  If
the table only contains information for one polarization, then the
value of the {\tt NO\_POL} keyword shall be 1.

{\bf Number of tones.} The value of the {\tt NO\_TONES} keyword shall
be the maximum number of phase-cal tones in a single band.  This must
be a positive number.

\subsection{Table structure}

Each row contains phase-cal data for a single antenna using a single
frequency setup over a limited period of time.  Each row shall contain
the columns shown in Table~\Hi{35 above the horizontal line.  Columns
for the second polarization, listed below the horizontal line, must
also appear but only if the value of the {\tt NO\_POL} keyword is
two.}  The columns may be written in any order.
\begin{center}
\underline{\bf{TABLE \Hi{35}: Mandatory columns for the {\tt
      PHASE-CAL} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & Central time of interval \\
{\tt TIME\_INTERVAL} & {\tt 1E} & days & Duration of interval \\
{\tt SOURCE\_ID}  & {\tt 1J} &       & Source ID number \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt CABLE\_CAL}  & {\tt 1\Hi{D}} & seconds & Cable calibration measurement \\
{\tt STATE\_1}    & \Hi{{\tt E}}(4,\nband) & percent & State counts for
                                         polarization 1 \\
{\tt PC\_FREQ\_1} & {\tt D}(\ntone,\nband) & Hz & Phase-cal tone
                                        frequencies for polarization 1 \\
{\tt PC\_REAL\_1} & {\tt E}(\ntone,\nband) &    & Real parts of phase-cal \\
                  & & &\hspace{1em} measurements for polarization 1 \\
{\tt PC\_IMAG\_1} & {\tt E}(\ntone,\nband) &    & Imaginary parts of phase-cal \\
                  & & &\hspace{1em} measurements for polarization 1 \\
{\tt PC\_RATE\_1} & {\tt E}(\ntone,\nband) & sec/sec & Phase-cal
                                        rates for polarization 1 \\
\hline
{\tt STATE\_2}    & \Hi{{\tt E}}(4,\nband) & percent & State counts for
                                         polarization 2 \\
{\tt PC\_FREQ\_2} & {\tt D}(\ntone,\nband) & Hz & Phase-cal tone
                                        frequencies for polarization 2 \\
{\tt PC\_REAL\_2} & {\tt E}(\ntone,\nband) &    & Real parts of phase-cal \\
                  & & &\hspace{1em} measurements for polarization 2 \\
{\tt PC\_IMAG\_2} & {\tt E}(\ntone,\nband) &    & Imaginary parts of phase-cal \\
                  & & &\hspace{1em} measurements for polarization 2 \\
{\tt PC\_RATE\_2} & {\tt E}(\ntone,\nband) & sec/sec & Phase-cal
                                        rates for polarization 2 \\
\end{tabular}
\end{center}

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the number of days that have elapsed between 0 hours on the reference
date for the current array and the center of the time period covered
by the current row.  The {\tt TIME\_INTERVAL} column shall contain the
number of days covered by the current row.

{\bf Source identification number.}  The {\tt SOURCE\_ID} column shall
contain the source identification number of the source to which the
current row applies.

{\bf Antenna identification.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number and the {\tt ARRAY} column
shall contain the array number of the antenna to which the current
\Hi{row} applies.

{\bf Frequency setup number.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup to which the current
\Hi{row} applies.

{\bf Cable calibration.} The {\tt CABLE\_CAL} column shall contain the
measured cable cal value in seconds.  If this is not available, then
the column shall contain a NaN.

{\bf State counts.} The {\tt STATE\_1} and {\tt STATE\_2} columns
shall contain the percentage of time that the digitizer spent in each
of its lowest, medium-low, medium-high, and highest states for each
band.  Entries where these data are not available shall be set to NaN.

{\bf Phase-cal tone frequencies.} The {\tt PC\_FREQ\_1} and {\tt
  PC\_FREQ\_2} columns shall list the sky frequencies of the phase-cal
tones for each band.  Unused entries in these columns shall be set to
NaN.

{\bf Phase-cal measurements.}  The phase-cal measurements shall be
reported as complex quantities with the real parts listed in {\tt
  PC\_REAL\_1} and {\tt PC\_REAL\_2} \Hi{columns} and the imaginary
parts listed in {\tt PC\_IMAG\_1} and {\tt PC\_IMAG\_2} \Hi{columns}.
The {\tt PC\_RATE\_1} and {\tt PC\_RATE\_2} \Hi{columns} shall list
the rates of change of the phase cal phase over the interval covered
by the record.  Unused entries in these columns shall be set to NaN as
shall entries corresponding to missing data.

\Hi{Table revision 1 of the {\tt PHASE-CAL} table named the
polarization-dependent columns with a blank character rather than the
second underscore character.}

\section{The {\tt FLAG} table}
\label{s:FG}

The {\tt FLAG} table designates data \Hi{included in the {\tt
UV\_DATA}} table that are to be regarded \Hi{a priori} as
invalid.  It is an optional table.

\subsection{Table header}

\Hi{The table header shall contain all normal FITS binary table
keywords needed to characterize the table fully, the mandatory, common
keywords of Table~11 discussed on page~\pageref{ta:keywords}, plus the
keywords and values listed in Table~\Hi{36}.}

\begin{center}
\underline{\bf{TABLE \Hi{36}: Mandatory keywords for {\tt
    FLAG} table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'FLAG'}  \\
{\tt TABREV}    & I & 2
\end{tabular}
\end{center}

\subsection{Table structure}

Each row in the table specifies a set of data to be flagged.  These
specifications are independent and may overlap.  The table may be
regarded as specifying a set of data to be flagged which is the union
of the sets specified by its constituent rows.  The table shall
contain the columns shown in Table~\Hi{37}.  The columns may be
written in any order.

\begin{center}
\underline{\bf{TABLE \Hi{37}: Mandatory columns for the {\tt
      FLAG} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt SOURCE\_ID}  & {\tt 1J} &      & Source ID number \\
{\tt ARRAY}       & {\tt 1J} &      & Array number \\
{\tt ANTS}        & {\tt 2J} &      & Antenna numbers \\
{\tt FREQID}      & {\tt 1J} &      & Frequency setup number \\
{\tt TIMERANG}    & {\tt 2E} & days & Time range \\
{\tt BANDS}       & {\tt J}(\nband) &  & Band flags \\
{\tt CHANS}       & {\tt 2J} &      & Channel range \\
{\tt PFLAGS}      & {\tt 4J} &      & Polarization flags \\
{\tt REASON}      & \Hi{{\tt $n$A}} &    & Reason for flag \\
{\tt SEVERITY}    & {\tt 1J} &      & Severity code
\end{tabular}
\end{center}

{\bf Source identification.}  If the {\tt SOURCE\_ID} column contains
a non-zero value, then all data for the source with the ID number
matching this value that match the other criteria specified by the
current \Hi{row} should be flagged.  \Hi{If the {\tt SOURCE\_ID}
column contains a zero value,} then all data matching the other
criteria specified by the current \Hi{row} should be flagged
regardless of the the source number identification.

{\bf Array number.}  If the {\tt ARRAY} column contains a non-zero
value, then all data from the array with this array number that match
the other criteria specified by the current row should be flagged.
\Hi{If the {\tt ARRAY} column contains a zero value,} then all data
matching the other criteria specified by the current row should be
flagged regardless of the array number.

{\bf Antenn\ae.}  If both elements of the {\tt ANTS} column are zero,
then all data that match the other criteria specified by the current
row should be flagged regardless of the baseline from which they were
obtained.  If the first element \Hi{of the {\tt ANTS} column} is
positive and the second element is zero, then all data that match the
other criteria specified by the current row and that are obtained from
baselines involving the antenna with the antenna identification number
given in the first element should be flagged.  If both elements \Hi{of
  the {\tt ANTS} column} are positive, then all data that match the
other criteria specified by the current row and that are obtained from
the baseline defined by the antenn\ae\ with identification numbers given
by the first and second elements should be flagged.

{\bf Frequency setup number.}  If the {\tt FREQID} column contains a
positive number, then all data taken with the setup that has been
assigned this frequency setup number, and that match the other criteria
specified by the current row, should be flagged.  If it has the value
of 0 or $-1$, then all data that match the other criteria specified by
the current row should be flagged regardless of frequency setup.

{\bf Band flags.}  If the entry in the {\tt BANDS} column that
corresponds to a given band number is not zero, then all data for this
band that meet the other criteria specified by the current row should
be flagged.  If the entry \Hi{in the {\tt BANDS} column that
  corresponds to a given band number} is zero, then the current row
specifies no flags for this band.


{\bf Channel range.}  Data from channels with numbers in the range
specified by the two elements in the {\tt CHANS} column that meet the
other criteria specified by the current row should be flagged.  The
first element shall be less than or equal to the second element \Hi{in
the {\tt CHANS} column}.  If both elements of the {\tt CHANS} column
are zero, then the channel range is taken to cover all channels.

{\bf Polarization flags.}  If an element in the {\tt PFLAGS} column is
not zero, then all data that have the corresponding index on the {\tt
  STOKES} axis of the data matrix and that meet the other criteria
specified by the current row should be flagged.

{\bf Reason.} the {\tt REASON} column shall contain a short string
explaining why the data specified by the current record were flagged.
\Hi{Flatters\cite{F98} specified the length as 24 characters, probably
because that is the internal length in the AIPS software.  There is no
reason to limit the length and FITS-IDI readers should be able to cope
with any length up to 80 characters.  The VLBA uses 40.}

{\bf Severity code.}  The {\tt SEVERITY} column shall contain a
severity code that applies to the current record.  Recommended code
are listed in Table~\Hi{38}.  Software may use the severity codes to
decide whether to apply the flags specified by individual \Hi{rows in
  the {\tt FLAG} table.}

\begin{center}
\underline{\bf{TABLE \Hi{38}: Recommended {\tt SEVERITY} codes}} \\
\begin{tabular}{cl}
\noalign{\vspace{2pt}}
\underline{{\bf Code\vphantom{y}}} & \underline{\bf{Severity level}}\\
\noalign{\vspace{2pt}}
$-1$ & No severity level assigned \\
 0 & Data are known to be useless \\
 1 & Data are probably useless \\
 2 & Data may be useless
\end{tabular}
\end{center}

Revision 2 {\tt FLAG} tables differ from revision 1 tables in using an
array of flags to specify the bands that should be flagged.  In
revision 1 tables, the {\tt BANDS} field contained a two-element array
of integers that specified a contiguous range of band numbers to be
flagged.

\hicol

\section{The {\tt WEATHER} table}
\label{s:WX}

The {\tt WEATHER} table contains meteorological data for the antenn\ae\
and times used in the FITS-IDI file.

\subsection{Table header}

The table header shall contain all normal FITS binary table keywords
needed to characterize the table fully, the mandatory, common keywords
of Table~11 discussed on page~\pageref{ta:keywords}, plus the keywords
and values listed in Table~39.

\vfill\eject
\begin{center}
\underline{\bf{TABLE 39: Mandatory keywords for {\tt WEATHER} table
    headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'WEATHER'}  \\
{\tt TABREV}    & I & \Hi{3} \\
{\tt RDATE}     & D & Reference date \\
\end{tabular}
\end{center}

{\bf Reference date.} The value of the {\tt RDATE} parameter will be
the date for which the time system parameters apply.

\subsection{Table structure}

Each row contains meteorological data for a single antenna (or all
antenn\ae) over a limited period of time.  Each row shall contain the
columns shown in Table~40.  The columns may be written in any order.
If a value for some parameter is unavailable, it shall be written as
NaN.

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the number of days that have elapsed between 0 hours on the reference
date for the current array and the center of the time period covered
by the current row.  The {\tt TIME\_INTERVAL} column shall contain the
number of days covered by the current row.

\begin{center}
\underline{\bf{TABLE 40: Mandatory \Me{and optional} columns for the
    {\tt WEATHER} table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & Central time of interval \\
{\tt TIME\_INTERVAL} & {\tt 1E} & days & Duration of interval \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt TEMPERATURE} & {\tt 1E} & Centigrade & Surface air temperature \\
{\tt PRESSURE}    & {\tt 1E} & millibar   & Surface air pressure \\
{\tt DEWPOINT}    & {\tt 1E} & Centigrade & Dewpoint temperature \\
{\tt WIND\_VELOCITY}  & {\tt 1E} & m s$^{-1}$ & Wind velocity \\
{\tt WIND\_DIRECTION} & {\tt 1E} & degrees & Wind direction East
                                             from North \\
\hline
\Me{{\tt WIND\_GUST}} & \Me{{\tt 1R}} & \Me{m s$^{-1}$} & \Me{Wind
  gust speed} \\
\Me{{\tt PRECIPITATION}} & \Me{{\tt 1R}} & \Me{cm} & \Me{Precipitation
  since midnight local time} \\
{\tt WVR\_H2O}        & {\tt 1E} & m$^{-2}$ & Water column \\
{\tt IONOS\_ELECTRON} & {\tt 1E} & m$^{-2}$ & Electron column
\end{tabular}
\end{center}

{\bf Antenna identification.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number of the antenna to which the
current row applies.  If the value of the {\tt ANTENNA\_NO} column is
zero, the data in the row are understood to apply to all antenn\ae.

{\bf Weather information.}  The surface {\tt TEMPERATURE}, {\tt
  PRESSURE}, and {\tt DEWPOINT} shall be given in the common units of
degrees Centigrade and millibars.  The {\tt WIND\_VELOCITY} in meters
per second and the {\tt WIND\_DIRECTION} in degrees measured to the
East from North shall also be given.  \Me{Optional parameters {\tt
WIND\_GUST} giving the gusty wind speed in meters per second and
{\tt PRECIPITATION} giving the amount of preciptable water accumulated
since midnight local time in cm are also understood and may be
present.}

{\bf Atmospheric absorbers.}  \Me{Optional columns in the table
  include} the column of precipitable water above the telescope in
molecules per meter squared and the column of ionospheric electrons
per meter squared shall be given in the {\tt WVR\_H20} and {\tt
  IONOS\_ELECTRON}, respectively.

Table revision 1 of the {\tt WEATHER} table spelled many of the column
labels differently.  In the order of Table~40, they were {\tt 'TIME'},
{\tt 'TIME INTERVAL'}, {\tt 'ANTENNA NUMBER'}, {\tt 'TEMPERATURE'},
{\tt 'PRESSURE'}, {\tt 'DEWPOINT'}, {\tt 'WIND VELOCITY'}, {\tt 'WIND
  DIRECTION'}, {\tt 'H2O COLUMN'}, and {\tt 'ELECTRON COLUMN'}\@.

\section{The {\tt BASELINE} table}
\label{s:BL}

The {\tt BASELINE} table contains baseline-dependent multiplicative
and additive corrections.

\subsection{Table header}

The table header shall contain all normal FITS binary table keywords
needed to characterize the table fully, the mandatory, common keywords
of Table~11 discussed on page~\pageref{ta:keywords}, plus the keywords
and values listed in Table~41.

\begin{center}
\underline{\bf{TABLE 41: Mandatory keywords for {\tt BASELINE} table
    headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'BASELINE'}  \\
{\tt TABREV}    & I & 1 \\
{\tt NO\_ANT}   & I & Maximum antenna number in the table \\
\end{tabular}
\end{center}

{\bf Number of antenn\ae.}  The {\tt NO\_ANT} keyword shall have value
equal to the maximum antenna number appearing in the table.

{\bf Number of Stokes parameters.}  The number of Stokes parameters
shall be set by the value of the required keyword {\tt NO\_STKD}\@.
It shall be equal to the number of pixels on the {\tt STOKES} axis in
the regular data matrix of the {\tt UV\_DATA} table.

\subsection{Table structure}

Each row contains baseline-dependent corrections for one baseline,
source, and frequency setup.  Each row shall contain the columns shown
in Table~42.  The columns may be written in any order.

\begin{center}
\underline{\bf{TABLE  42: Mandatory columns for the {\tt BASELINE}
    table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & Central time of interval \\
{\tt SOURCE\_ID}  & {\tt 1J} &       & Source ID number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt ANTENNA\_NOS.} & {\tt 2J} &     & Antenna numbers forming baseline \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt REAL\_M}     & {\tt E}(\nstokes,\nband) & & Real part of
                                       multiplicative correction \\
{\tt IMAG\_M}     & {\tt E}(\nstokes,\nband) & & Imaginary part of
                                       multiplicative correction \\
{\tt REAL\_A}     & {\tt E}(\nstokes,\nband) & & Real part of
                                       additive correction \\
{\tt IMAG\_A}     & {\tt E}(\nstokes,\nband) & & Imaginary part of
                                       additive correction \\
\end{tabular}
\end{center}

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the number of days that have elapsed between 0 hours on the reference
date for the current array and the center of the time period covered
by the current row.  If the {\tt BASELINE} table contains more than
one row with identical values in the {\tt SOURCE\_ID}, {\tt ARRAY},
{\tt ANTENNA\_NOS.}, and {\tt FREQID} columns, then the multiplicative
and additive constants are to be interpolated to times between the
times in the {\tt TIME} column and extrapolated to times outside the
range of times in the {\tt TIME} column.

{\bf Source identification number.}  The {\tt SOURCE\_ID} column shall
contain the source identification number of the source to which the
current row applies.  A value of zero in the {\tt SOURCE\_ID} column
shall be understood to apply to all source identification numbers.

{\bf Baseline identification.}  The {\tt ANTENNA\_NOS.} column shall
contain the two antenna identification numbers forming the baseline
and the {\tt ARRAY} column shall contain the array number to which the
current row applies.  (Note the period at the end of column name.)

{\bf Frequency setup number.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup to which the current
row applies.

{\bf Calibration data.}  The multiplicative correction $M$ is a
complex quantity whose real parts are in the matrix contained in the
{\tt REAL\_M} column and whose imaginary parts are in the matrix
contained in the {\tt IMAG\_M} column.  The additive correction $A$ is
a complex quantity whose real parts are in the matrix contained in
the {\tt REAL\_A} column and whose imaginary parts are in the matrix
contained in the {\tt IMAG\_A} column.  Each of these four matrices are
dimensioned by (\nstokes,\nband).  To apply the corrections, the
visibility data for the selected baseline and source should first be
multiplied by $M$ and then have $A$ added.

{\bf Special note.}  The \AIPS\ implementation of this table does not
support the full generality described here.  {\tt FITLD} will
translated the {\tt BASELINE} table into an \AIPS\ {\tt BL} table
containing at most two, parallel-hand polarizations.  The routines
which apply the correction ignore the additive term.

\section{The {\tt BANDPASS} table}
\label{s:BP}

The {\tt BANDPASS} table contains the antenna-based, spectral-channel
dependent calibrations.  \Me{Each row of the table contains one
  complex gain for each spectral channel.  Parameterized solutions for
  the bandpass must be expanded to this form, avoiding the
  difficulties associated with defining the functional forms for which
  the parameterization applies.}

\subsection{Table header}

The table header shall contain all normal FITS binary table keywords
needed to characterize the table fully, the mandatory, common keywords
of Table~11 discussed on page~\pageref{ta:keywords}, plus the keywords
and values listed in Table~43.

\begin{center}
\underline{\bf{TABLE 43: Mandatory keywords for {\tt BANDPASS} table
    headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'BANDPASS'}  \\
{\tt TABREV}    & I & 1 \\
{\tt NO\_ANT}   & I & Maximum antenna number in the table \\
{\tt NO\_POL}   & I & Number of polarizations in the table \\
{\tt NO\_BACH}  & I & Number of spectral channels in the table \\
{\tt STRT\_CHN} & I & Data channel number for first channel in the table \\
\end{tabular}
\end{center}

{\bf Number of antenn\ae.}  The {\tt NO\_ANT} keyword shall have value
equal to the maximum antenna number appearing in the table.

{\bf Number of polarizations.}  If the table contains information for
two polarizations, the value of {\tt NO\_POL} keyword shall be 2.  If
the table only contains information for one polarization, then the
value of the {\tt NO\_POL} keyword shall be 1.

{\bf Number of spectral channels.}  The number of spectral channels in
the {\tt BANDPASS} table shall be set by the value of the {\tt
  NO\_BACH} keyword \nbach.  It shall be a positive integer less
than or equal the value of the standard keyword {\tt NO\_CHAN} \nchan.
The \nbach\ channels are taken to apply to spectral channels in the
{\tt UV\_DATA} regular matrices from pixel $n_0$ through $n_0 +$
\nbach\ $ - 1$, where $n_0$ is the value of the keyword {\tt
  STRT\_CHN}\@.  The value of {\tt STRT\_CHN} must be $\ge 1$ and
small enough that $n_0 +$ \nbach\ $ - 1 \le$ \nchan.

\subsection{Table structure}

Each row contains spectral-channel-dependent corrections for one
antenna, source, and frequency setup for a limited range of time.
Each row shall contain the columns shown in Table~44 above the
horizontal line.  Columns for the second polarization, listed below
the horizontal line, must also appear but only if the value of the
{\tt NO\_POL} keyword is two.  The columns may be written in any
order.

\begin{center}
\underline{\bf{TABLE 44: Mandatory columns for the {\tt BANDPASS}
    table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & Central time of interval \\
{\tt TIME\_INTERVAL} & {\tt 1E} & days & Duration of interval \\
{\tt SOURCE\_ID}  & {\tt 1J} &       & Source ID number \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt BANDWIDTH}   & {\tt 1E} & Hz    & Channel bandwidth \\
{\tt BAND\_FREQ}  & {\tt D}(\nband) & Hz & Frequency of each band \\
{\tt REFANT\_1}   & {\tt 1J} &       & Reference antenna for
                                       polarization 1 \\
{\tt BREAL\_1}    & {\tt E}(\nbach,\nband) & & Real part of
                                       bandpass correction for
                                       polarization 1 \\
{\tt BIMAG\_1}     & {\tt E}(\nbach,\nband) & & Imaginary part of
                                       bandpass correction \\
     &                        & & \hspace{1em} for polarization 1 \\
\hline
{\tt REFANT\_2}   & {\tt 1J} &       & Reference antenna for
                                       polarization 2 \\
{\tt BREAL\_2}    & {\tt E}(\nbach,\nband) & & Real part of
                                       bandpass correction for
                                       polarization 2 \\
{\tt BIMAG\_2}     & {\tt E}(\nbach,\nband) & & Imaginary part of
                                       bandpass correction \\
     &                        & & \hspace{1em} for polarization 2 \\
\end{tabular}
\end{center}

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the number of days that have elapsed between 0 hours on the reference
date for the current array and the center of the time period covered
by the current row. The {\tt TIME\_INTERVAL} column shall contain the
number of days covered by the current row.

{\bf Source identification number.}  The {\tt SOURCE\_ID} column shall
contain the source identification number of the source to which the
current row applies.  A value of zero in the {\tt SOURCE\_ID} column
shall be understood to apply to all source identification numbers.

{\bf Antenna identification.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number and the {\tt ARRAY} column
shall contain the array number of the antenna to which the current row
applies.

{\bf Frequency information.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup to which the current
row applies.  The {\tt BANDWIDTH} column shall contain the individual
channel separation in Hz of the first band in this frequency setup.
The {\tt BAND\_FREQ} column contains the reference frequencies for
each band in this frequency setup.

{\bf Reference antenna.}  The phase of the bandpass function for the
``reference antenna'' is by convention equal to zero for all channels
and all other phases are with respect to this reference.  The antenna
used as the reference for polarization 1 shall be recorded in the {\tt
REFANT\_1} column and the antenna used as the reference for
polarization 2, if there are two polarizations, shall be recorded in
the {\tt REFANT\_2} column.

{\bf Bandpass function.}  The complex visibilities for baseline $i-j$
are corrected by dividing by the bandpass function for antenna $i$ and
dividing by the complex conjugate of the bandpass function for antenna
$j$.  The bandpass function for polarization 1 is given in the {\tt
  BREAL\_1} column for the real part and the {\tt BIMAG\_1} column for
the imaginary part.  If the value of the keyword {\tt NO\_POL} is two,
the real part of the bandpass function for polarization 2 is given in
the {\tt BREAL\_2} column and the imaginary part is given in the {\tt
  BIMAG\_2} column.

\section{The {\tt CALIBRATION} table}
\label{s:CA}

\Me{This chapter is included for documentation and discussion purposes
  only.  So far as this author is aware, no software has been
  implemented to either write or read the {\tt CALIBRATION} table.}
Therefore, the description provided in this section should be regarded
as tentative.  In fact, it is not at all clear what the intentions
were in the case of some of the columns specified for this table.

\subsection{Table header}

The table header shall contain all normal FITS binary table keywords
needed to characterize the table fully, the mandatory, common keywords
of Table~11 discussed on page~\pageref{ta:keywords}, plus the keywords
and values listed in Table~45.

\begin{center}
\underline{\bf{TABLE 45: Mandatory keywords for {\tt CALIBRATION}
    table headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'CALIBRATION'}  \\
{\tt TABREV}    & I & 1 \\
{\tt NO\_ANT}   & I & Maximum antenna number in the table \\
{\tt NO\_POL}   & I & Number of polarizations in the table \\
\end{tabular}
\end{center}

{\bf Number of antenn\ae.}  The {\tt NO\_ANT} keyword shall have value
equal to the maximum antenna number appearing in the table.

{\bf Number of polarizations.}  If the table contains information for
two polarizations, the value of {\tt NO\_POL} keyword shall be 2.  If
the table only contains information for one polarization, then the
value of the {\tt NO\_POL} keyword shall be 1.

\subsection{Table structure}

Each row contains data corrections for one antenna, source, and
frequency setup for a limited range of time.  Each row shall contain
the columns shown in Table~46 above the horizontal line.  Columns for
the second polarization, listed below the horizontal line, must also
appear but only if the value of the {\tt NO\_POL} keyword is two.  The
columns may be written in any order.

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the number of days that have elapsed between 0 hours on the reference
date for the current array and the center of the time period covered
by the current row. The {\tt TIME\_INTERVAL} column shall contain the
number of days covered by the current row.

{\bf Source identification number.}  The {\tt SOURCE\_ID} column shall
contain the source identification number of the source to which the
current row applies.  A value of zero in the {\tt SOURCE\_ID} column
shall be understood to apply to all source identification numbers.

{\bf Antenna identification.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number and the {\tt ARRAY} column
shall contain the array number of the antenna to which the current row
applies.

{\bf Frequency setup number.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup to which the current
row applies.

\vfill\eject
\begin{center}
\underline{\bf{TABLE 46: Mandatory columns for the {\tt CALIBRATION}
    table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & Central time of interval \\
{\tt TIME\_INTERVAL} & {\tt 1E} & days & Duration of interval \\
{\tt SOURCE\_ID}  & {\tt 1J} &       & Source ID number \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt TSYS\_1}     & {\tt E}(\nband) & Kelvin & System temperature for
                                      polarization 1 \\
{\tt TANT\_1}     & {\tt E}(\nband) & Kelvin & Antenna temperature for
                                      polarization 1 \\
{\tt SENSITIVITY\_1} & {\tt E}(\nband) & Kelvin/Jy & Sensitivity at
                                      polarization 1 \\
{\tt PHASE\_1}    & {\tt E}(\nband) & radians & Phase at
                                      polarization 1 \\
{\tt RATE\_1}     & {\tt E}(\nband) & sec/sec & Rate of change of
                                      delay of polarization 1 \\
{\tt DELAY\_1}    & {\tt E}(\nband) & seconds & Delay of
                                      polarization 1 \\
{\tt REAL\_1}     & {\tt E}(\nband) &         & Complex gain real part
                                      for polarization 1 \\
{\tt IMAG\_1}     & {\tt E}(\nband) &         & Complex gain imaginary
                                      part for polarization 1 \\
{\tt WEIGHT\_1}   & {\tt E}(\nband) &         & Reliability weight of
                                      complex gain for polarization 1 \\
{\tt REFANT\_1}   & {\tt J}(\nband) &         & Reference antenna for
                                      polarization 1 \\
\hline
{\tt TSYS\_2}     & {\tt E}(\nband) & Kelvin & System temperature for
                                      polarization 2 \\
{\tt TANT\_2}     & {\tt E}(\nband) & Kelvin & Antenna temperature for
                                      polarization 2 \\
{\tt SENSITIVITY\_2} & {\tt E}(\nband) & Kelvin/Jy & Sensitivity at
                                      polarization 2 \\
{\tt PHASE\_2}    & {\tt E}(\nband) & radians & Phase at
                                      polarization 2 \\
{\tt RATE\_2}     & {\tt E}(\nband) & sec/sec & Rate of change of
                                      delay of polarization 2 \\
{\tt DELAY\_2}    & {\tt E}(\nband) & seconds & Delay of
                                      polarization 2 \\
{\tt REAL\_2}     & {\tt E}(\nband) &         & Complex gain real part
                                      for polarization 2 \\
{\tt IMAG\_2}     & {\tt E}(\nband) &         & Complex gain imaginary
                                      part for polarization 2 \\
{\tt WEIGHT\_2}   & {\tt E}(\nband) &         & Reliability weight of
                                      complex gain for polarization 2 \\
{\tt REFANT\_2}   & {\tt J}(\nband) &         & Reference antenna for
                                      polarization 2 \\
\end{tabular}
\end{center}

{\bf System temperatures.}  The {\tt TSYS\_1} and {\tt TSYS\_2}
columns shall contain arrays for polarizations 1 and 2, respectively,
of system temperatures, one for each band in the current file.  The
{\tt TSYS\_2} column shall appear if and only if the value of the {\tt
NO\_POL} keyword is 2.  If system temperature information is not
available for any band in either polarization, then the corresponding
elements of the arrays shall be set to NaN\@.

{\bf Antenna temperatures.}  The {\tt TANT\_1} and {\tt TANT\_2}
columns shall contain arrays for polarizations 1 and 2, respectively,
of antenna temperatures, one for each band in the current file.  The
{\tt TANT\_2} column shall appear if and only if the value of the {\tt
NO\_POL} keyword is 2.  If antenna temperature information is not
available for any band in either polarization, then the corresponding
elements of the arrays shall be set to NaN\@.

{\bf Sensitivities.}  The {\tt SENSITIVITY\_1} and {\tt
  SENSITIVITY\_2} columns shall contain arrays for polarizations 1 and
2, respectively, of sensitivities (degrees Kelvin of antenna
temperature produced by a 1 Jy source), one for each band in the
current file.  The {\tt SENSITIVITY\_2} column shall appear if and
only if the value of the {\tt NO\_POL} keyword is 2.  If sensitivity
information is not available for any band in either polarization, then
the corresponding elements of the arrays shall be set to NaN\@.

{\bf Antenna phase.} The {\tt PHASE\_1} and {\tt PHASE\_2} columns
shall contain arrays for polarizations 1 and 2, respectively, of antenna
phase in radians, one for each band in the file.  Similarly, the {\tt
DELAY\_1} and {\tt DELAY\_2} columns shall contain the antenna delays
and the {\tt RATE\_1} and {\tt RATE\_2} columns shall contain the rate
of change of antenna delays.  The {\tt PHASE\_2}, {\tt DELAY\_2}, and
{\tt RATE\_2} columns shall appear if and only if the value of the
{\tt NO\_POL} keyword is 2.  If any of these data are no available,
the the corresponding elements of the arrays shall be set to NaN\@.

{\bf Complex gain.} The {\tt REAL\_1} and {\tt IMAG\_1} columns shall
provide the real and imaginary parts, respectively, of the complex
gain in polarization 1 for each band in the array.  If and only if the
value of the keyword {\tt NO\_POL} is 2, the {\tt REAL\_2} and {\tt
  IMAG\_2} columns shall provide the real and imaginary parts,
respectively, of the complex gain in polarization 2 for each band in
the array.  The {\tt WEIGHT\_1} and {\tt WEIGHT\_2} columns shall
provide some indication of the relative reliability of the complex
gain solutions.  These data may be used when averaging or
interpolating complex gains over time.

{\bf Reference antenna.}  The phase of the complex gain for the
``reference antenna'' is by convention zero and all other phases are
with respect to this reference.  The antenna used as the reference for
polarization 1 shall be recorded in the {\tt REFANT\_1} column and the
antenna used as the reference for polarization 2, if there are two
polarizations, shall be recorded in the {\tt REFANT\_2} column.

\section{The {\tt MODEL\_COMPS} table}
\label{s:MC}

The {\tt MODEL\_COMPS} table is one of those reserved for use by the
VLBA\@.  However, since it has been used fairly widely, it will be
documented here.  It is used to convey the parameters of the spectral
sampling and of the various delay corrections applied to the data
during the correlation.

\subsection{Table header}

The table header shall contain all normal FITS binary table keywords
needed to characterize the table fully, the mandatory, common keywords
of Table~11 discussed on page~\pageref{ta:keywords}, plus the keywords
and values listed in Table~47.

\begin{center}
\underline{\bf{TABLE 47: Mandatory keywords for {\tt MODEL\_COMPS} table
    headers}}\\
\begin{tabular}{lcl}
\noalign{\vspace{2pt}}
\underline{{\bf Keyword}} & \underline{\bf{Value type}} &
    \underline{\bf{Value\vphantom{y}}} \\
\noalign{\vspace{2pt}}
{\tt EXTNAME}   & A & {\tt 'MODEL\_COMPS'}  \\
{\tt TABREV}    & I & 1 \\
{\tt RDATE}     & D & Reference date \\
{\tt NO\_POL}   & I & Number of polarizations in the table \\
{\tt FFT\_SIZE} & I & FFT size \\
{\tt OVERSAMP}  & I & Oversampling factor \\
{\tt ZERO\_PAD} & I & Zero padding factor \\
{\tt TAPER\_FN} & A & Tapering function ({\tt 'HANNING'} or {\tt
                      'UNIFORM'}) \\
{\tt \Me{DELTAT}} & \Me{E} & \Me{Time interval (days)}
\end{tabular}
\end{center}

{\bf Reference date.} The value of the {\tt RDATE} parameter will be
the date for which the time system parameters apply.

{\bf Number of polarizations.}  If the table contains information for
two polarizations, the value of {\tt NO\_POL} keyword shall be 2.  If
the table only contains information for one polarization, then the
value of the {\tt NO\_POL} keyword shall be 1.

{\bf Data sampling.}  \Me{The data are given for an antenna and one or
more sources every {\tt DELTAT} days and apply until the next recorded
time.}  The numerical size of the FFT used to convert from time domain
to frequency prior to cross-correlation shall be specified in the {\tt
  FFT\_SIZE} keyword.  Its value is normally an integer power of 2.
The oversampling and zero padding ``factors'' are given by the {\tt
  OVERSAMP} and {\tt ZERO\_PAD} keywords; a value of 0 for these
keywords implies no oversampling and no zero padding.  The taper if
any applied to the time domain prior to FFT is specified in the
character-valued keyword {\tt TAPER\_FN}; only {\tt 'HANNING'} and
{\tt 'UNIFORM'} (no taper) are recognized.
\vfill\eject

\subsection{Table structure}

Each row contains the various delays and frequency offsets for one
antenna, source, and frequency setup for a limited range of time.
Each row shall contain the columns shown in Table~48 above the
horizontal line.  Columns for the second polarization, listed below
the horizontal line, must also appear but only if the value of the
{\tt NO\_POL} keyword is two.  The columns may be written in any
order.

\begin{center}
\underline{\bf{TABLE 48: Mandatory columns for the {\tt MODEL\_COMPS}
    table}}\\
\begin{tabular}{lcll}
\noalign{\vspace{2pt}}
\underline{{\bf Title\vphantom{y}}} & \underline{\bf{Type}} &
   \underline{{\bf Units\vphantom{y}}} & \underline{\bf{Description}} \\
\noalign{\vspace{2pt}}
{\tt TIME}        & {\tt 1D} & days  & \Me{Start} time of interval \\
{\tt SOURCE\_ID}  & {\tt 1J} &       & Source ID number \\
{\tt ANTENNA\_NO} & {\tt 1J} &       & Antenna number \\
{\tt ARRAY}       & {\tt 1J} &       & Array number \\
{\tt FREQID}      & {\tt 1J} &       & Frequency setup number \\
{\tt ATMOS}       & {\tt 1D} & sec   & Atmospheric delay \\
{\tt DATMOS}      & {\tt 1D} & sec/sec & Time derivative of
                                       atmospheric delay \\
{\tt GDELAY}      & {\tt 1D} & sec   & Group delay \\
{\tt GRATE}       & {\tt 1D} & sec/sec & Rate of change of group delay \\
{\tt CLOCK\_1}    & {\tt 1D} & sec   & ``Clock'' epoch error \\
{\tt DCLOCK\_1}   & {\tt 1D} & sec/sec & Time derivative of clock error \\
{\tt LO\_OFFSET\_1} & {\tt E}(\nband) & Hz & LO offset \\
{\tt DLO\_OFFSET\_1} & {\tt E}(\nband) & Hz/sec & Time derivative of
                                        LO offset \\
{\tt DISP\_1}     & {\tt 1E} & sec \Me{m$^{-2}$} & Dispersive delay \\
{\tt DDISP\_1}    & {\tt 1E} & sec \Me{m$^{-2}$}/sec & Time derivative of dispersive
                                        delay \\
\hline
{\tt CLOCK\_2}    & {\tt 1D} & sec   & ``Clock'' epoch error \\
{\tt DCLOCK\_2}   & {\tt 1D} & sec/sec & Time derivative of clock error \\
{\tt LO\_OFFSET\_2} & {\tt E}(\nband) & Hz & LO offset \\
{\tt DLO\_OFFSET\_2} & {\tt E}(\nband) & Hz/sec & Time derivative of
                                        LO offset \\
{\tt DISP\_2}     & {\tt 1E} & sec \Me{m$^{-2}$} & Dispersive delay \\
{\tt DDISP\_2}    & {\tt 1E} & sec \Me{m$^{-2}$}/sec & Time derivative of dispersive
                                        delay \\
\end{tabular}
\end{center}

{\bf Time covered by the row.}  The {\tt TIME} column shall contain
the number of days that have elapsed between 0 hours on the reference
date for the current array and the \Me{beginning} of the time period
covered by the current row.

{\bf Source identification number.}  The {\tt SOURCE\_ID} column shall
contain the source identification number of the source to which the
current row applies.  A value of zero in the {\tt SOURCE\_ID} column
shall be understood to apply to all source identification numbers.

{\bf Antenna identification.}  The {\tt ANTENNA\_NO} column shall
contain the antenna identification number and the {\tt ARRAY} column
shall contain the array number of the antenna to which the current row
applies.

{\bf Frequency information.}  The {\tt FREQID} column shall contain
the frequency setup number of the frequency setup to which the current
row applies.

{\bf Atmospheric delay.}  The {\tt ATMOS} and {\tt DATMOS} columns
shall contain the atmospheric group phase delay and rate of change of
that delay, respectively, applied to the data by the correlator
software.

{\bf Group delay.} The {\tt GDELAY} and {\tt GRATE} columns shall
contain the group delay calculated by the {\tt CALC} software and the
rate of change of that delay, respectively, applied to the data by the
correlator software.

{\bf Clock error.} The {\tt CLOCK\_1} and {\tt DCLOCK\_1} columns
shall contain the electronic, clock-like delay and the rate of change
of that delay, respectively, applied to the data of polarization 1 by
the correlator software.  If the value of the {\tt NO\_POL} keyword is
two, then the {\tt CLOCK\_2} and {\tt DCLOCK\_2} columns shall contain
the electronic, clock-like delay and the rate of change of that delay,
respectively, applied to the data of polarization 2 by the correlator
software.

{\bf LO offset.}  The {\tt LO\_OFFSET\_1} and  {\tt DLO\_OFFSET\_1}
columns shall contain the station-dependent local oscillator offset
and rate of change of that offset, respectively, applied to the data
of polarization 1 by the correlator software.  If the value of the
{\tt NO\_POL} keyword is two, then the {\tt LO\_OFFSET\_2} and  {\tt
  DLO\_OFFSET\_2} columns shall contain the station-dependent local
oscillator offset and rate of change of that offset, respectively,
applied to the data of polarization 2 by the correlator software.

{\bf Dispersive delays.}  The {\tt DISP\_1} and  {\tt DDISP\_1}
columns shall contain the component of the group delay that scales
with the square of the wavelength (\eg\ ionospheric delay) and rate of
change of that delay, respectively, applied to the data of
polarization 1 by the correlator software.  These shall be specified
by giving the delays \Me{in seconds per meter squared}.  If the value of the
{\tt NO\_POL} keyword is two, then the {\tt DISP\_1} and  {\tt
  DDISP\_1} columns shall contain the component of the group delay
that scales with the square of the wavelength (\eg\ ionospheric delay)
and rate of change of that delay, respectively, applied to the data of
polarization 2 by the correlator software.

\begin{thebibliography}{99}

\bibitem{DBCWRH97}
  Diamond, P. J., Benson, J., Cotton, W. D., Wells, D. C., Romney, J.
  \&\ Hunt, G. 1997, ``FITS Format for Interferometry Data
  Interchange,'' VLBA Correlator Memo No.~108, NRAO, Socorro, NM

\bibitem{F98}
   Flatters, C. 1998, ``The FITS Interferometry Data Interchange
   Format,'' AIPS Memo No.~102, NRAO, Socorro, NM

\bibitem{Fst08}
   IAU FITS Working Group 2008, ``Definition of the Flexible Image
   Transport System (FITS),''
   {\tt http://fits.gsfc.nasa.gov/fits\_standard.html}

\bibitem{SS99}
   ``Synthesis Imaging in Radio Astronomy II'' 1999, ASP Conf.~Series
   180, eds. Taylor, G. B., Carilli, C. L., \&\ Perley, R. A.,
   Astronomical Society of the Pacific, San Francisco

\bibitem{TMS01}
   Thompson, A. R., Moran, J. M., \&\ Swenson, G. W. 2001,
   ``Interferometry and Synthesis in Radio Astronomy,'' Second
   Edition, John Wiley \&\ Sons, New York

\end{thebibliography}

\vfill\eject
\appendix

\section{Example FITS-IDI file}
\label{appendix}

The sample FITS headers listed below come from a VLBA correlator
output file chosen at random.  The only changes made were to (1) omit
all {\tt HISTORY} and commentary card images, (2) add a {\tt CORRELAT}
keyword to the main HDU, and (3) to correct the {\tt UU-L}, {\tt
  VV-L}, {\tt WW-L}, and {\tt ID\_NO.} errors which the VLBA
correlator system makes.

\subsection{Primary HDU}
\small
\begin{alltt}
SIMPLE  =                    T / Standard FITS format
BITPIX  =                    8 /
NAXIS   =                    0 /
EXTEND  =                    T /
BLOCKED =                    T /
OBJECT  = 'BINARYTB'           /
TELESCOP= 'VLBA    '           /
\Ex{CORELAT = 'VLBA    '           / added to header dump by EWG}
FXCORVER= '4.22    '           /
OBSERVER= 'BL146   '           /
ORIGIN  = 'VLBA Correlator'    /
DATE-OBS= '2007-08-23'         /
DATE-MAP= '2007-08-31'         / Correlation date
GROUPS  =                    T /
GCOUNT  =                    0 /
PCOUNT  =                    0 /
END
\end{alltt}

\subsection{Binary table headers}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                   64 /
NAXIS2  =                   10 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                    7 /
EXTNAME = 'ARRAY_GEOMETRY'     /
EXTVER  =                    1 /
TTYPE1  = 'ANNAME  '           / station name
TFORM1  = '8A      '           /
TTYPE2  = 'STABXYZ '           / station offset from array origin
TFORM2  = '3D      '           /
TUNIT2  = 'METERS  '           /
TTYPE3  = 'DERXYZ  '           / first order derivs of STABXYZ
TFORM3  = '3E      '           /
TUNIT3  = 'M/SEC   '           /
TTYPE4  = 'ORBPARM '           / orbital parameters
TFORM4  = '0D      '           /
TTYPE5  = 'NOSTA   '           / station id number
TFORM5  = '1J      '           /
TTYPE6  = 'MNTSTA  '           / antenna mount type
TFORM6  = '1J      '           /
TTYPE7  = 'STAXOF  '           / axis offset, x, y, z
TFORM7  = '3E      '           /
TUNIT7  = 'METERS  '           /
ARRAYX  =   0.00000000000000000E+00 /
ARRAYY  =   0.00000000000000000E+00 /
ARRAYZ  =   0.00000000000000000E+00 /
ARRNAM  = 'VLBA    '           /
NUMORB  =                    0 /
RDATE   = '2007-08-23'         /
FREQ    =   8.40549000000000000E+09 /
FRAME   = 'GEOCENTRIC'         /
TIMSYS  = 'UTC     '           /
TIMESYS = 'UTC     '           /
GSTIA0  =   3.30909596261338038E+02 /
DEGPDY  =   3.60985644973299998E+02 /
POLARX  =   2.08099999999999996E-01 /
POLARY  =   2.80019999999999989E-01 /
UT1UTC  =  -1.63126999999999995E-01 /
IATUTC  =   3.30000000000000000E+01 /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    1 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                  284 /
NAXIS2  =                    6 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   23 /
EXTNAME = 'SOURCE  '           /
EXTVER  =                    1 /
\Ex{TTYPE1  = 'SOURCE_ID'          / source id number (corrected by EWG)}
TFORM1  = '1J      '           /
TTYPE2  = 'SOURCE  '           / source name
TFORM2  = '16A     '           /
TTYPE3  = 'QUAL    '           / source qualifier
TFORM3  = '1J      '           /
TTYPE4  = 'CALCODE '           / calibrator code
TFORM4  = '4A      '           /
TTYPE5  = 'FREQID  '           / freq id number in frequency tbl
TFORM5  = '1J      '           /
TTYPE6  = 'IFLUX   '           / ipol flux density at ref freq
TFORM6  = '4E      '           /
TUNIT6  = 'JY      '           /
TTYPE7  = 'QFLUX   '           / qpol flux density at ref freq
TFORM7  = '4E      '           /
TUNIT7  = 'JY      '           /
TTYPE8  = 'UFLUX   '           / upol flux density at ref freq
TFORM8  = '4E      '           /
TUNIT8  = 'JY      '           /
TTYPE9  = 'VFLUX   '           / vpol flux density at ref freq
TFORM9  = '4E      '           /
TUNIT9  = 'JY      '           /
TTYPE10 = 'ALPHA   '           / spectral index
TFORM10 = '4E      '           /
TTYPE11 = 'FREQOFF '           / freq. offset from ref freq.
TFORM11 = '4D      '           /
TUNIT11 = 'HZ      '           /
\Ex{TTYPE12 = 'RAEPO   '           / Right Ascension at EQUINOX (EWG)}
TFORM12 = '1D      '           /
TUNIT12 = 'DEGREES '           /
\Ex{TTYPE13 = 'DECEPO  '           / Declination at EQUINOX (EWG)}
TFORM13 = '1D      '           /
TUNIT13 = 'DEGREES '           /
\Ex{TTYPE14 = 'EQUINOX '           / equinox '1950.0B' or 'J2000' (EWG)}
\Ex{TFORM14 = '8A      '           / corrected from 1D by EWG}
\Ex{TUNIT14 = '        '           / corrected from YEARS by EWG}
TTYPE15 = 'RAAPP   '           / apparent RA at 0 IAT ref day
TFORM15 = '1D      '           /
TUNIT15 = 'DEGREES '           /
TTYPE16 = 'DECAPP  '           / apparent Dec at 0 IAT ref day
TFORM16 = '1D      '           /
TUNIT16 = 'DEGREES '           /
TTYPE17 = 'SYSVEL  '           / systemic velocity at ref pixal
TFORM17 = '4D      '           /
TUNIT17 = 'M/SEC   '           /
TTYPE18 = 'VELTYP  '           / velocity type
TFORM18 = '8A      '           /
TTYPE19 = 'VELDEF  '           / velocity def: radio, optical
TFORM19 = '8A      '           /
TTYPE20 = 'RESTFREQ'           / line rest frequency
TFORM20 = '4D      '           /
TUNIT20 = 'HZ      '           /
TTYPE21 = 'PMRA    '           / proper motion in RA
TFORM21 = '1D      '           /
TUNIT21 = 'DEG/DAY '           /
TTYPE22 = 'PMDEC   '           / proper motion in Dec
TFORM22 = '1D      '           /
TUNIT22 = 'DEG/DAY '           /
TTYPE23 = 'PARALLAX'           / parallax of source
TFORM23 = '1E      '           /
TUNIT23 = 'ARCSEC  '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    1 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                  102 /
NAXIS2  =                   10 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   13 /
EXTNAME = 'ANTENNA '           /
EXTVER  =                    1 /
TTYPE1  = 'TIME    '           / time of center of interval
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'TIME_INTERVAL'      / row interval
TFORM2  = '1E      '           /
TUNIT2  = 'DAYS    '           /
TTYPE3  = 'ANNAME  '           / station name
TFORM3  = '8A      '           /
TTYPE4  = 'ANTENNA_NO'         / antenna number
TFORM4  = '1J      '           /
TTYPE5  = 'ARRAY   '           / array id number
TFORM5  = '1J      '           /
TTYPE6  = 'FREQID  '           / frequency id number
TFORM6  = '1J      '           /
TTYPE7  = 'NO_LEVELS'          / number of digitizer levels
TFORM7  = '1J      '           /
TTYPE8  = 'POLTYA  '           / feed A poln. code
TFORM8  = '1A      '           /
TTYPE9  = 'POLAA   '           / feed A position angle
TFORM9  = '4E      '           /
TUNIT9  = 'DEGREES '           /
TTYPE10 = 'POLCALA '           / feed A poln. cal. parameter
TFORM10 = '4E      '           /
TTYPE11 = 'POLTYB  '           / feed B poln. code
TFORM11 = '1A      '           /
TTYPE12 = 'POLAB   '           / feed B position angle
TFORM12 = '4E      '           /
TUNIT12 = 'DEGREES '           /
TTYPE13 = 'POLCALB '           / feed B poln. cal. parameter
TFORM13 = '4E      '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    1 /
NOPCAL  =                    0 /
POLTYPE = 'APPROX  '           /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                  100 /
NAXIS2  =                    1 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                    6 /
EXTNAME = 'FREQUENCY'          /
EXTVER  =                    1 /
TTYPE1  = 'FREQID  '           / FREQID number in uv data
TFORM1  = '1J      '           /
TTYPE2  = 'BANDFREQ'           / frequency offset
TFORM2  = '4D      '           /
TUNIT2  = 'HZ      '           /
TTYPE3  = 'CH_WIDTH'           / spectral channel bandwidth
TFORM3  = '4E      '           /
TUNIT3  = 'HZ      '           /
TTYPE4  = 'TOTAL_BANDWIDTH'    / total bw of a BAND
TFORM4  = '4E      '           /
TUNIT4  = 'HZ      '           /
TTYPE5  = 'SIDEBAND'           / sideband of each BAND
TFORM5  = '4J      '           /
TTYPE6  = 'BB_CHAN '           / baseband channel number (1-16)
TFORM6  = '4J      '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    2 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                 1024 /
NAXIS2  =                  640 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   20 /
EXTNAME = 'INTERFEROMETER_MODEL' /
EXTVER  =                    1 /
TTYPE1  = 'TIME    '           / time of model start
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'TIME_INTERVAL'      / model interval
TFORM2  = '1E      '           /
TUNIT2  = 'DAYS    '           /
TTYPE3  = 'SOURCE_ID'          / source id from sources tbl
TFORM3  = '1J      '           /
TTYPE4  = 'ANTENNA_NO'         / antenna number from antennas tbl
TFORM4  = '1J      '           /
TTYPE5  = 'ARRAY   '           / array id number
TFORM5  = '1J      '           /
TTYPE6  = 'FREQID  '           / frequency id number from frequency tbl
TFORM6  = '1J      '           /
TTYPE7  = 'I.FAR.ROT'          / ionospheric faraday rotation
TFORM7  = '1E      '           /
TUNIT7  = 'RAD/METER**2'       /
TTYPE8  = 'FREQ.VAR'           / time variable freq. offset
TFORM8  = '4E      '           /
TUNIT8  = 'HZ      '           /
TTYPE9  = 'PDELAY_1'           / total phase delay at ref time
TFORM9  = '24D     '           /
TUNIT9  = 'TURNS   '           /
TTYPE10 = 'GDELAY_1'           / total group delay at ref time
TFORM10 = '6D      '           /
TUNIT10 = 'SECONDS '           /
TTYPE11 = 'PRATE_1 '           / phase delay rate
TFORM11 = '24D     '           /
TUNIT11 = 'HZ      '           /
TTYPE12 = 'GRATE_1 '           / group delay rate
TFORM12 = '6D      '           /
TUNIT12 = 'SEC/SEC '           /
TTYPE13 = 'DISP_1  '           / dispersive delay for polar.1
TFORM13 = '1E      '           /
TUNIT13 = 'SECONDS '           /
TTYPE14 = 'DDISP_1 '           / dispersive delay rate for polar. 1
TFORM14 = '1E      '           /
TUNIT14 = 'SEC/SEC '           /
TTYPE15 = 'PDELAY_2'           / total phase delay at ref time
TFORM15 = '24D     '           /
TUNIT15 = 'TURNS   '           /
TTYPE16 = 'GDELAY_2'           / total group delay at ref time
TFORM16 = '6D      '           /
TUNIT16 = 'SECONDS '           /
TTYPE17 = 'PRATE_2 '           / phase delay rate
TFORM17 = '24D     '           /
TUNIT17 = 'HZ      '           /
TTYPE18 = 'GRATE_2 '           / group delay rate
TFORM18 = '6D      '           /
TUNIT18 = 'SEC/SEC '           /
TTYPE19 = 'DISP_2  '           / dispersive delay for polar.2
TFORM19 = '1E      '           /
TUNIT19 = 'SECONDS '           /
TTYPE20 = 'DDISP_2 '           / dispersive delay rate for polar. 2
TFORM20 = '1E      '           /
TUNIT20 = 'SEC/SEC '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    2 /
NO_POL  =                    2 /
GSTIA0  =   0.00000000000000000E+00 /
DEGPDY  =   0.00000000000000000E+00 /
RDATE   = '2007-08-23'         /
CDATE   = '2007-08-31'         /
NPOLY   =                    6 /
REVISION=   1.00000000000000000E+00 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                   82 /
NAXIS2  =                    5 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   11 /
EXTNAME = 'CALC    '           /
EXTVER  =                    1 /
TTYPE1  = 'TIME    '           / Time of center of interval
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'UT1-UTC '           / Difference between UT1 and UTC
TFORM2  = '1D      '           /
TUNIT2  = 'SECONDS '           /
TTYPE3  = 'IAT-UTC '           / Difference between IAT and UTC
TFORM3  = '1D      '           /
TUNIT3  = 'SECONDS '           /
TTYPE4  = 'A1-IAT  '           / Difference between A1 and IAT
TFORM4  = '1D      '           /
TUNIT4  = 'SECONDS '           /
TTYPE5  = 'UT1 TYPE'           / E=extrapol., P=prelim., F+final
TFORM5  = '1A      '           /
TUNIT5  = '        '           /
TTYPE6  = 'WOBXY   '           / x, y polar offsets
TFORM6  = '2D      '           /
TUNIT6  = 'arcsec  '           /
TTYPE7  = 'WOB TYPE'           / E=extrapol., P=prelim., F+final
TFORM7  = '1A      '           /
TUNIT7  = '        '           /
TTYPE8  = 'DPSI    '           / Nutation in longitude
TFORM8  = '1D      '           /
TUNIT8  = 'rad     '           /
TTYPE9  = 'DDPSI   '           / CT derivative of DPSI
TFORM9  = '1D      '           /
TUNIT9  = 'rad/sec '           /
TTYPE10 = 'DEPS    '           / Nutation in obliquity
TFORM10 = '1D      '           /
TUNIT10 = 'rad     '           /
TTYPE11 = 'DDEPS   '           / CT derivative of DEPS
TFORM11 = '1D      '           /
TUNIT11 = 'rad/sec '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    2 /
C_SRVR  = 'kepler  '           /
C_VERSN = '9.1     '           /
A_VERSN = '2.2     '           /
I_VERSN = '0.0     '           /
E_VERSN = '9.1     '           /
ACCELGRV=   9.78031846000000016E+00 /
E-FLAT  =   3.35280999999999985E-03 /
EARTHRAD=   6.37813700000000000E+06 /
MMSEMS  =   1.23000200000000004E-02 /
EPHEPOC =                 2000 /
ETIDELAG=   0.00000000000000000E+00 /
GAUSS   =   1.72020989499999999E-02 /
GMMOON  =   4.90279750000000000E+12 /
GMSUN   =   1.32712438000000000E+20 /
LOVE_H  =   6.09670000000000023E-01 /
LOVE_L  =   8.51999999999999957E-02 /
PRE_DATA=   5.02909659999999985E+03 /
REL_DATA=   1.00000000000000000E+00 /
TIDALUT1=                    0 /
TSECAU  =   4.99004781999999977E+02 /
U-GRV-CN=   6.67200000000000149E-11 /
VLIGHT  =   2.99792458000000000E+08 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                  168 /
NAXIS2  =                 1060 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   21 /
EXTNAME = 'MODEL_COMPS'        /
EXTVER  =                    1 /
\Ex{TTYPE1  = 'TIME    '           / Time of start of interval}
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'SOURCE_ID'          / source id from sources tbl
TFORM2  = '1J      '           /
TTYPE3  = 'ANTENNA_NO'         / antenna id from antennas tbl
TFORM3  = '1J      '           /
TTYPE4  = 'ARRAY   '           / array id number
TFORM4  = '1J      '           /
TTYPE5  = 'FREQID  '           / freq id from frequency tbl
TFORM5  = '1J      '           /
TTYPE6  = 'ATMOS   '           / atmospheric group delay
TFORM6  = '1D      '           /
TUNIT6  = 'SECONDS '           /
TTYPE7  = 'DATMOS  '           / atmospheric group delay rate
TFORM7  = '1D      '           /
TUNIT7  = 'SEC/SEC '           /
TTYPE8  = 'GDELAY  '           / CALC geometric delay
TFORM8  = '1D      '           /
TUNIT8  = 'SECONDS '           /
TTYPE9  = 'GRATE   '           / CALC geometric delay rate
TFORM9  = '1D      '           /
TUNIT9  = 'SEC/SEC '           /
TTYPE10 = 'CLOCK_1 '           / electronic delay
TFORM10 = '1D      '           /
TUNIT10 = 'SECONDS '           /
TTYPE11 = 'DCLOCK_1'           / electronic delay rate
TFORM11 = '1D      '           /
TUNIT11 = 'SEC/SEC '           /
TTYPE12 = 'LO_OFFSET_1'        / station lo_offset for polar. 1
TFORM12 = '4E      '           /
TUNIT12 = 'HZ      '           /
TTYPE13 = 'DLO_OFFSET_1'       / station lo_offset rate for polar. 1
TFORM13 = '4E      '           /
TUNIT13 = 'HZ/SEC  '           /
TTYPE14 = 'DISP_1  '           / dispersive delay
TFORM14 = '1E      '           /
TUNIT14 = 'SECONDS '           /
TTYPE15 = 'DDISP_1 '           / dispersive delay rate
TFORM15 = '1E      '           /
TUNIT15 = 'SEC/SEC '           /
TTYPE16 = 'CLOCK_2 '           / electronic delay
TFORM16 = '1D      '           /
TUNIT16 = 'SECONDS '           /
TTYPE17 = 'DCLOCK_2'           / electronic delay rate
TFORM17 = '1D      '           /
TUNIT17 = 'SEC/SEC '           /
TTYPE18 = 'LO_OFFSET_2'        / station lo_offset for polar. 2
TFORM18 = '4E      '           /
TUNIT18 = 'HZ      '           /
TTYPE19 = 'DLO_OFFSET_2'       / station lo_offset rate for polar. 2
TFORM19 = '4E      '           /
TUNIT19 = 'HZ/SEC  '           /
TTYPE20 = 'DISP_2  '           / dispersive delay for polar 2
TFORM20 = '1E      '           /
TUNIT20 = 'SECONDS '           /
TTYPE21 = 'DDISP_2 '           / dispersive delay rate for polar 2
TFORM21 = '1E      '           /
TUNIT21 = 'SEC/SEC '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
NO_POL  =                    2 /
FFT_SIZE=                  256 /
OVERSAMP=                    0 /
ZERO_PAD=                    0 /
FFT_TWID=                    1 / Version of FFT twiddle table used
TAPER_FN= 'UNIFORM '           /
\Ex{DELTAT=              0.0013889 / interval days (added by EWG)}
TABREV  =                    1 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                   72 /
NAXIS2  =                90240 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   15 /
EXTNAME = 'TAPE_STATISTICS'    /
EXTVER  =                    1 /
TTYPE1  = 'TIME    '           / time of center of interval
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'VSN     '           / VSN id
TFORM2  = '8A      '           /
TTYPE3  = 'ANTENNA_NO'         / antenna id from antennas tbl
TFORM3  = '1J      '           /
TTYPE4  = 'ANTENNA_NAME'       / antenna name
TFORM4  = '4A      '           /
TTYPE5  = 'REC_NO  '           / recorder number from antenna
TFORM5  = '1J      '           /
TTYPE6  = 'PBD_NO  '           / correlator playback drive
TFORM6  = '1J      '           /
TTYPE7  = 'SPEED   '           / tape speed and direction
TFORM7  = '1D      '           /
TTYPE8  = 'HEAD_POS'           / recorder headstack position
TFORM8  = '1J      '           /
TTYPE9  = 'QUALIFIER'          / 0 = statistics, 1 = out of sync, 2 = idle
TFORM9  = '1J      '           /
TTYPE10 = 'HEAD_NO '           / recorder head number
TFORM10 = '1J      '           /
TTYPE11 = 'PARITY  '           / parity error count
TFORM11 = '1J      '           /
TTYPE12 = 'HEADER  '           / header error count
TFORM12 = '1J      '           /
TTYPE13 = 'RESYNC  '           / resync count
TFORM13 = '1J      '           /
TTYPE14 = 'INVALID '           / invalid frame count
TFORM14 = '1J      '           /
TTYPE15 = 'FRAME   '           / frame count for above
TFORM15 = '1J      '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    2 /
FILE_MJD=   5.43439079631558634E+04 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                   72 /
NAXIS2  =                    0 / [number of rows is initially zero]
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                    4 /
EXTNAME = 'SPACECRAFT_ORBIT'   /
EXTVER  =                    1 /
TTYPE1  = 'SPACECR '           / spacecraft name
TFORM1  = '16A     '           /
TTYPE2  = 'TIME    '           / UT time
TFORM2  = '1D      '           /
TUNIT2  = 'DAYS    '           /
TTYPE3  = 'ORBXYZ  '           / geocentric coordinates
TFORM3  = '3D      '           /
TUNIT3  = 'METERS  '           /
TTYPE4  = 'VELXYZ  '           / velcity vector
TFORM4  = '3D      '           /
TUNIT4  = 'METERS/SEC'         /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    1 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                  112 /
NAXIS2  =                 1058 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   10 /
EXTNAME = 'FLAG    '           /
EXTVER  =                    1 /
TTYPE1  = 'SOURCE_ID'          / source id number from source tbl
TFORM1  = '1J      '           /
TTYPE2  = 'ARRAY   '           / ????
TFORM2  = '1J      '           /
TTYPE3  = 'ANTS    '           / antenna id from antennas tbl
TFORM3  = '2J      '           /
TUNIT3  = '        '           /
TTYPE4  = 'FREQID  '           / freq id number from frequency tbl
TFORM4  = '1J      '           /
TTYPE5  = 'TIMERANG'           / time flag condition begins, ends
TFORM5  = '2E      '           /
TUNIT5  = 'DAYS    '           /
TTYPE6  = 'BANDS   '           / true if the baseband is bad
TFORM6  = '4J      '           /
TTYPE7  = 'CHANS   '           / channel range to be flagged
TFORM7  = '2J      '           /
TTYPE8  = 'PFLAGS  '           / flag array for polarization
TFORM8  = '4J      '           /
TTYPE9  = 'REASON  '           / reason for data to be flagged bad
TFORM9  = '40A     '           /
TTYPE10 = 'SEVERITY'           / severity code
TFORM10 = '1J      '           /
OBSCODE = 'BL146   '           / Proposal code
RDATE   = '2007-08-23'         / Reference date
NO_STKD =                    4 / Nmbr stokes
STK_1   =                   -1 / First stokes
NO_BAND =                    4 / Number of basebands
NO_CHAN =                    8 / Number of channels
REF_FREQ=   8.40549000000000000E+09 / Frequency reference
CHAN_BW =   1.00000000000000000E+06 / Channel bandwidth
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    2 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                   92 /
NAXIS2  =                  398 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   10 /
EXTNAME = 'SYSTEM_TEMPERATURE' /
EXTVER  =                    1 /
TTYPE1  = 'TIME    '           / time of center of interval
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'TIME_INTERVAL'      / time span of datum
TFORM2  = '1E      '           /
TUNIT2  = 'DAYS    '           /
TTYPE3  = 'SOURCE_ID'          / source id number from source tbl
TFORM3  = '1J      '           /
TTYPE4  = 'ANTENNA_NO'         / antenna id from array geom. tbl
TFORM4  = '1J      '           /
TTYPE5  = 'ARRAY   '           / ????
TFORM5  = '1J      '           /
TTYPE6  = 'FREQID  '           / freq id number from frequency tbl
TFORM6  = '1J      '           /
TTYPE7  = 'TSYS_1  '           / system temperature
TFORM7  = '4E      '           /
TUNIT7  = 'K       '           /
TTYPE8  = 'TANT_1  '           / antenna temperature
TFORM8  = '4E      '           /
TUNIT8  = 'K       '           /
TTYPE9  = 'TSYS_2  '           / system temperature
TFORM9  = '4E      '           /
TUNIT9  = 'K       '           /
TTYPE10 = 'TANT_2  '           / antenna temperature
TFORM10 = '4E      '           /
TUNIT10 = 'K       '           /
OBSCODE = 'BL146   '           / Proposal code
RDATE   = '2007-08-23'         / Reference date
NO_STKD =                    4 / Nmbr stokes
STK_1   =                   -1 / First stokes
NO_BAND =                    4 / Number of basebands
NO_CHAN =                    8 / Number of channels
REF_FREQ=   8.40549000000000000E+09 / Frequency reference
CHAN_BW =   1.00000000000000000E+06 / Channel bandwidth
REF_PIXL=   5.31250000000000000E-01 /
NO_POL  =                    2 /
TABREV  =                    1 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                  484 /
NAXIS2  =                  241 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   17 /
EXTNAME = 'PHASE-CAL'          /
EXTVER  =                    1 /
TTYPE1  = 'TIME    '           / time of center of interval
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'TIME_INTERVAL'      / time span of datum
TFORM2  = '1E      '           /
TUNIT2  = 'DAYS    '           /
TTYPE3  = 'SOURCE_ID'          / source id number from source tbl
TFORM3  = '1J      '           /
TTYPE4  = 'ANTENNA_NO'         / antenna id from array geom. tbl
TFORM4  = '1J      '           /
TTYPE5  = 'ARRAY   '           / ????
TFORM5  = '1J      '           /
TTYPE6  = 'FREQID  '           / freq id number from frequency tbl
TFORM6  = '1J      '           /
TTYPE7  = 'CABLE_CAL'          / cable length calibration
TFORM7  = '1D      '           /
TUNIT7  = 'SECONDS '           /
TTYPE8  = 'STATE_1 '           / state counts (4 per baseband)
TFORM8  = '16E     '           /
TTYPE9  = 'PC_FREQ_1'          / Pcal recorded frequency
TFORM9  = '8D      '           /
TUNIT9  = 'Hz      '           /
TTYPE10 = 'PC_REAL_1'          / Pcal real
TFORM10 = '8E      '           /
TTYPE11 = 'PC_IMAG_1'          / Pcal imag
TFORM11 = '8E      '           /
TTYPE12 = 'PC_RATE_1'          / Pcal rate
TFORM12 = '8E      '           /
TTYPE13 = 'STATE_2 '           / state counts (4 per baseband)
TFORM13 = '16E     '           /
TTYPE14 = 'PC_FREQ_2'          / Pcal recorded frequency
TFORM14 = '8D      '           /
TUNIT14 = 'Hz      '           /
TTYPE15 = 'PC_REAL_2'          / Pcal real
TFORM15 = '8E      '           /
TTYPE16 = 'PC_IMAG_2'          / Pcal imag
TFORM16 = '8E      '           /
TTYPE17 = 'PC_RATE_2'          / Pcal rate
TFORM17 = '8E      '           /
OBSCODE = 'BL146   '           / Proposal code
RDATE   = '2007-08-23'         / Reference date
NO_STKD =                    4 / Nmbr stokes
STK_1   =                   -1 / First stokes
NO_BAND =                    4 / Number of basebands
NO_CHAN =                    8 / Number of channels
REF_FREQ=   8.40549000000000000E+09 / Frequency reference
CHAN_BW =   1.00000000000000000E+06 / Channel bandwidth
REF_PIXL=   5.31250000000000000E-01 /
NO_TONES=                    2 /
NO_POL  =                    2 /
TABREV  =                    2 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                   44 / \Me{2 columns empty}
NAXIS2  =                   70 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   12 /
EXTNAME = 'WEATHER '           /
EXTVER  =                    1 /
TTYPE1  = 'TIME    '           / time of measurement
TFORM1  = '1D      '           /
TUNIT1  = 'DAYS    '           /
TTYPE2  = 'TIME_INTERVAL'      / time span over which data applies
TFORM2  = '1E      '           /
TUNIT2  = 'DAYS    '           /
TTYPE3  = 'ANTENNA_NO'         / antenna id from antennas tbl
TFORM3  = '1J      '           /
TTYPE4  = 'TEMPERATURE'        / ambient temperature
TFORM4  = '1E      '           /
TUNIT4  = 'CENTIGRADE'         /
TTYPE5  = 'PRESSURE'           / atmospheric pressure
TFORM5  = '1E      '           /
TUNIT5  = 'MILLIBARS'          /
TTYPE6  = 'DEWPOINT'           / dewpoint
TFORM6  = '1E      '           /
TUNIT6  = 'CENTIGRADE'         /
TTYPE7  = 'WIND_VELOCITY'      / wind velocity
TFORM7  = '1E      '           /
TUNIT7  = 'M/SEC   '           /
TTYPE8  = 'WIND_DIRECTION'     / wind direction
TFORM8  = '1E      '           /
TUNIT8  = 'DEGREES '           /
\Me{TTYPE9  = 'WIND_GUST'          / wind gusts}
\Me{TFORM9  = '1E      '           /}
\Me{TUNIT9  = 'M/SEC   '           /}
\Me{TTYPE10 = 'PRECIPITATION'      / precipitation since midnight}
\Me{TFORM10 = '1E      '           /}
\Me{TUNIT10 = 'CM      '           /}
TTYPE11 = 'WVR_H2O '           /
TFORM11 = '0E      '           / \Me{note empty column}
TUNIT11 = '        '           /
TTYPE12 = 'IONOS_ELECTRON'     /
TFORM12 = '0E      '           / \Me{note empty column}
TUNIT12 = '        '           /
OBSCODE = 'BL146   '           / Proposal code
RDATE   = '2007-08-23'         / Reference date
NO_STKD =                    4 / Nmbr stokes
STK_1   =                   -1 / First stokes
NO_BAND =                    4 / Number of basebands
NO_CHAN =                    8 / Number of channels
REF_FREQ=   8.40549000000000000E+09 / Frequency reference
CHAN_BW =   1.00000000000000000E+06 / Channel bandwidth
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                   \Me{3} /
MAPFUNC = '        '           /
WVR_TYPE= '        '           /
ION_TYPE= '        '           /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                  588 /
NAXIS2  =                   10 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   19 /
EXTNAME = 'GAIN_CURVE'         /
EXTVER  =                    1 /
TTYPE1  = 'ANTENNA_NO'         / antenna id from array geom. tbl
TFORM1  = '1J      '           /
TUNIT1  = '        '           /
TTYPE2  = 'ARRAY   '           / ????
TFORM2  = '1J      '           /
TTYPE3  = 'FREQID  '           / freq id number from frequency tbl
TFORM3  = '1J      '           /
TUNIT3  = '        '           /
TTYPE4  = 'TYPE_1  '           / gain curve type
TFORM4  = '4J      '           /
TUNIT4  = '        '           /
TTYPE5  = 'NTERM_1 '           / number of terms
TFORM5  = '4J      '           /
TUNIT5  = '        '           /
TTYPE6  = 'X_TYP_1 '           / abscissa type of plot
TFORM6  = '4J      '           /
TUNIT6  = '        '           /
TTYPE7  = 'Y_TYP_1 '           / second axis of 3d plot
TFORM7  = '4J      '           /
TUNIT7  = '        '           /
TTYPE8  = 'X_VAL_1 '           / For tabulated curves
TFORM8  = '4E      '           /
TUNIT8  = '        '           /
TTYPE9  = 'Y_VAL_1 '           / For tabulated curves
TFORM9  = '24E     '           /
TUNIT9  = '        '           /
TTYPE10 = 'GAIN_1  '           / Gain curve
TFORM10 = '24E     '           /
TUNIT10 = '        '           /
TTYPE11 = 'SENS_1  '           / Sensitivity
TFORM11 = '4E      '           /
TUNIT11 = 'Kelvin/Jy'          /
TTYPE12 = 'TYPE_2  '           / gain curve type
TFORM12 = '4J      '           /
TUNIT12 = '        '           /
TTYPE13 = 'NTERM_2 '           / number of terms
TFORM13 = '4J      '           /
TUNIT13 = '        '           /
TTYPE14 = 'X_TYP_2 '           / abscissa type of plot
TFORM14 = '4J      '           /
TUNIT14 = '        '           /
TTYPE15 = 'Y_TYP_2 '           / second axis of 3d plot
TFORM15 = '4J      '           /
TUNIT15 = '        '           /
TTYPE16 = 'X_VAL_2 '           / For tabulated curves
TFORM16 = '4E      '           /
TUNIT16 = '        '           /
TTYPE17 = 'Y_VAL_2 '           / For tabulated curves
TFORM17 = '24E     '           /
TUNIT17 = '        '           /
TTYPE18 = 'GAIN_2  '           / Gain curve
TFORM18 = '24E     '           /
TUNIT18 = '        '           /
TTYPE19 = 'SENS_2  '           / Sensitivity
TFORM19 = '4E      '           /
TUNIT19 = 'Kelvin/Jy'          /
OBSCODE = 'BL146   '           / Proposal code
RDATE   = '2007-08-23'         / Reference date
NO_STKD =                    4 / Nmbr stokes
STK_1   =                   -1 / First stokes
NO_BAND =                    4 / Number of basebands
NO_CHAN =                    8 / Number of channels
REF_FREQ=   8.40549000000000000E+09 / Frequency reference
CHAN_BW =   1.00000000000000000E+06 / Channel bandwidth
REF_PIXL=   5.31250000000000000E-01 /
NO_POL  =                    2 /
NO_TABS =                    6 /
TABREV  =                    1 /
END
\end{alltt}

\begin{alltt}
XTENSION= 'BINTABLE'           / FITS Binary Table Extension
BITPIX  =                    8 /
NAXIS   =                    2 /
NAXIS1  =                 1136 /
NAXIS2  =                96843 /
PCOUNT  =                    0 /
GCOUNT  =                    1 /
TFIELDS =                   13 /
EXTNAME = 'UV_DATA '           /
EXTVER  =                    1 /
\Ex{TTYPE1  = 'UU      '           / u (corrected by EWG)}
TFORM1  = '1E      '           /
TUNIT1  = 'SECONDS '           /
\Ex{TTYPE2  = 'VV      '           / v (corrected by EWG)}
TFORM2  = '1E      '           /
TUNIT2  = 'SECONDS '           /
\Ex{TTYPE3  = 'WW      '           / w (corrected by EWG)}
TFORM3  = '1E      '           /
TUNIT3  = 'SECONDS '           /
TTYPE4  = 'DATE    '           / Julian day at 0 hr current day
TFORM4  = '1D      '           /
TUNIT4  = 'DAYS    '           /
TTYPE5  = 'TIME    '           / IAT time
TFORM5  = '1D      '           /
TUNIT5  = 'DAYS    '           /
TTYPE6  = 'BASELINE'           / baseline: ant1*256 + ant2
TFORM6  = '1J      '           /
TTYPE7  = 'FILTER  '           / filter id number
TFORM7  = '1J      '           /
\Ex{TTYPE8  = 'SOURCE_ID'          / source id number from source tbl}
TFORM8  = '1J      '           /
TTYPE9  = 'FREQID  '           / freq id number from frequency tbl
TFORM9  = '1J      '           /
TTYPE10 = 'INTTIM  '           / time span of datum (seconds)
TFORM10 = '1E      '           /
TTYPE11 = 'WEIGHT  '           / weights proportional to time
TFORM11 = '16E     '           /
TTYPE12 = 'GATEID  '           / gate id from gate model table
TFORM12 = '0J      '           /
TTYPE13 = 'FLUX    '           / data matrix
TFORM13 = '256E    '           /
TUNIT13 = 'UNCALIB '           /
NMATRIX =                    1 /
DATE-OBS= '2007-08-23'         /
TELESCOP= 'VLBA    '           /
OBSERVER= 'GOOFY   '           /
OBSCODE = 'BL146   '           /
RDATE   = '2007-08-23'         /
NO_STKD =                    4 /
STK_1   =                   -1 /
NO_BAND =                    4 /
NO_CHAN =                    8 /
REF_FREQ=   8.40549000000000000E+09 /
CHAN_BW =   1.00000000000000000E+06 /
REF_PIXL=   5.31250000000000000E-01 /
TABREV  =                    2 / ARRAY changed to FILTER
VIS_SCAL=   1.08991348743438721E+00 /
SORT    = 'T*      '           /
MAXIS   =                    6 /
MAXIS1  =                    2 /
CTYPE1  = 'COMPLEX '           /
CDELT1  =   1.00000000000000000E+00 /
CRPIX1  =   1.00000000000000000E+00 /
CRVAL1  =   1.00000000000000000E+00 /
MAXIS2  =                    4 /
CTYPE2  = 'STOKES  '           /
CDELT2  =  -1.00000000000000000E+00 /
CRPIX2  =   1.00000000000000000E+00 /
CRVAL2  =  -1.00000000000000000E+00 /
MAXIS3  =                    8 /
CTYPE3  = 'FREQ    '           /
CDELT3  =   1.00000000000000000E+06 /
CRPIX3  =   5.31250000000000000E-01 /
CRVAL3  =   8.40549000000000000E+09 /
MAXIS4  =                    4 /
CTYPE4  = 'BAND    '           /
CDELT4  =   1.00000000000000000E+00 /
CRPIX4  =   1.00000000000000000E+00 /
CRVAL4  =   1.00000000000000000E+00 /
MAXIS5  =                    1 /
CTYPE5  = 'RA      '           /
CDELT5  =   0.00000000000000000E+00 /
CRPIX5  =   1.00000000000000000E+00 /
CRVAL5  =   0.00000000000000000E+00 /
MAXIS6  =                    1 /
CTYPE6  = 'DEC     '           /
CDELT6  =   0.00000000000000000E+00 /
CRPIX6  =   1.00000000000000000E+00 /
CRVAL6  =   0.00000000000000000E+00 /
TMATX11 =                    T /
END
\end{alltt}

\end{document}
