% -*- latex -*-
%-----------------------------------------------------------------------
%;  Copyright (C) 1999
%;  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
%-----------------------------------------------------------------------
%Body of AIPSletter for 15 April 1999

\documentstyle [twoside]{article}

\newcommand{\AIPRELEASE}{April 15, 1999}
\newcommand{\AIPVOLUME}{Volume XIX}
\newcommand{\AIPNUMBER}{Number 1}
\newcommand{\RELEASENAME}{{\tt 15APR99}}
\newcommand{\OLDNAME}{{\tt 15OCT98}}
\newcommand{\NEXTNAME}{{\tt 15OCT99}}

%macros and title page format for the \AIPS\ letter.
\input LET98.MAC
\input psfig

\newcommand{\MYSpace}{-11pt}

\normalstyle

\section{General developments in \AIPS}

\subsection{Current and next release}

The \AIPRELEASE\ release of Classic \AIPS\ is now available.  It may
be obtained via \emph{anonymous} ftp or by contacting Ernie Allen at
the address given in the masthead.  \RELEASENAME\ is also available
on CDrom as well as the more traditional tape media.  \AIPS\ is now
copyright \copyright 1995 through 1999 by Associated Universities,
Inc., NRAO's parent corporation, but may be made freely available
under the terms of the Free Software Foundation's General Public
License \hbox{(GPL)}.  This means that User Agreements are no longer
required, that \AIPS\ may be obtained via anonymous ftp without
contacting NRAO, and that the software may be redistributed (and/or
modified), under certain conditions.  The full text of the GPL can be
found in the \texttt{15JUL95} \Aipsletter.  A convenient order form is
found from our Web page at {\tt http://www.cv.nrao.edu/aips}.  A paper
order form and the ftp address appear on the last page of this
\Aipsletter.

The next release of \AIPS\ will be \NEXTNAME\@.  It is possible
to get early access to, and remain current with, this release by
running a ``midnight job''; see the \AIPS\ home page for further
details.  Note that this allows your site to receive the latest
improvements and bug fixes, at the cost of also receiving the latest
bugs.  The latter can and will be fixed as rapidly as possible when
the programmers are notified of them at \texttt{daip@nrao.edu}.

\subsection{Highlights}

There are only five new tasks and one new verb in this release.  The
most important new task is {\tt FITAB} which should eventually replace
{\tt FITTP} for writing both $uv$ and image data.  The new verb, {\tt
TAPES}, will let you see the choices you have for both local and
remote tape devices.

Because so many significant bugs have been found and corrected, we
recommend that you seriously consider replacing whatever release of
\AIPS\ you are currently using with \RELEASENAME\@.  A long-standing
error in gridded model subtraction and serious errors in the the $uv$
gridding routines were fixed.  A long list of problems, some subtle
and some catastrophic, in the calibration application routines were
also repaired.  Users should check their data for bad bandpass
solutions and bad phases when applying polarization calibration as
well as more subtle affects due to the use of calibrations from not
quite the right times.  The gridded-model subtraction bug could
produce low-level stripes in images, or even, in a well-chosen
example, divergent deconvolutions.  Read the following pages carefully
to see if your data may have been affected.

\vfill\eject

\section{Improvements of interest to users in \RELEASENAME}

\emph{The {\tt 15APR98} introduced numerous changes which are not
compatible with previous releases.  Disk files written by previous
versions are read transparently by {\tt 15APR98} and later releases
(including {\tt SAVE}/{\tt GET} files), but users must not attempt to
read disk files written by any of the modern versions with earlier
versions.  {\tt 15APR98} and later {\tt AIPS} cannot start previous
versions of tasks and the TV displays of the versions are
incompatible.  The TV displays of {\tt 15OCT98} and {\tt 15APR98} are
also not fully compatible.  {\tt SAVE}/{\tt GET} files for {\tt
15OCT98} and \RELEASENAME\ cannot be read by {\tt 15APR98} and earlier
releases; {\tt 15OCT98} and later releases will translate old {\tt
SAVE}/{\tt GET} files when they encounter them.}

\subsection{General matters}

\subsubsection{FITAB}

{\tt FITAB} is a new \AIPS\ task intended to replace {\tt FITTP}
(gradually).  It has a number of advantages over {\tt FITTP} and would
replace it directly except that its output cannot be read by older
versions of \AIPS\ and by other software systems which do read \AIPS\
random-groups $uv$-data format.  The advantages of {\tt FITAB} are:
\begin{itemize}
\item\ For images, {\tt FITAB} allows the specification of the value of
   the least bit.  Integer and floating output FITS files are very much
   more compressible if the least bit is controlled to have a value
   related to the image's rms (\eg\ rms/4).  {\tt FITTP} uses the full
   range of integer and floating output values and is, therefore, not
   particularly compressible.  When shipping a FITS file over the
   Internet, it helps to make a smaller file via Gnu or Unix
   compression.  {\tt FITAB} will use the integer format appropriate
   to the selected least bit and image range when {\tt FORMAT} 1 or 2
   is requested.
\item\ For $uv$ data, {\tt FITAB} writes out the data in a
   binary-tables form rather than in a random-groups form.  This has
   the advantage that the data may be written in ``compressed''" format
   identical to that used on disk inside \AIPS\@.  FITS files that
   take advantage of this option can be as much as three times smaller
   than those written by {\tt FITTP}\@.  Non-\AIPS\ software is much
   more likely to understand binary tables rather than random groups,
   although some (\ie\ {\tt difmap}) are able to read {\tt FITTP}'s
   random groups.
\item\ For $uv$ data, {\tt FITAB} is able to break up the output into
   multiple files, each containing a ``piece'' of the \AIPS\ file.
   Each of these files contain the full contents of many of the
   descriptive files (source, flag, index, antenna) as well as the
   corresponding time range for any calibration files ({\tt CL}, {\tt
   SN}, {\tt IM}, {\tt TY}, etc.).  These tables appear in the files
   before the $uv$ data.  Each piece of an \AIPS\ data set can be read
   and used individually or together with some or all of the other
   pieces.  If parity error, or other problems like end of tape,
   affect the writing of a large file, recovery of some or all of the
   information is simplified with the new capability.  {\tt FITAB} can
   write multiple disk files for the multiple pieces and all FITS
   readers ({\tt FITLD}, {\tt UVLOD}, {\tt PRTTP}) can read and
   understand multiple-piece disk and tape structures.
\end{itemize}
The main disadvantages of {\tt FITAB} are:
\begin{itemize}
\item\ For $uv$ data, {\tt FITAB}'s output is not understood by {\tt
   15OCT98} and earlier versions of \AIPS\@.  It is also not
   understood so far by other software packages such as \AIPTOO, {\tt
   difmap}, {\it et al.}
\item\ For image data, a poor choice of least bit in {\tt FITAB} can
   lead to a serious degradation in image quality.
\end{itemize}

\subsubsection{TAPES}

A new verb called {\tt TAPES} was written to display information about
which tape devices are available.  If the {\tt REMHOST} adverb is
blank, it looks for information on the current computer, using the
standard {\tt \$NET0/TPDEVS.LIST} file.  If {\tt REMHOST} specifies
some other computer, then that computer is sought in the file instead.
If it is not found there, then the verb attempts to acquire the
information using the {\tt TPMON1} d\ae mon running on the remote
host.  If it is running and is at least a {\tt 15APR99} d\ae mon, then
the remote {\tt TPDEVS.LIST} file is read and the selected information
returned.  In this way, users do not have to remember which tape drive
is which long after they have started up their {\tt AIPS} session.

\subsubsection{Serious FITTP bug on LINUX}

When certain subroutines were compiled under the LINUX EGCS g77 Fortran
compiler versions 1.1 and 1.1.1, seemingly random and
non-deterministic errors were found to occur.  Specifically, the
routines {\tt ZR32RL} and {\tt ZRLR32} which translate floating-point
values between local and FITS-standard format, were found to add one
bit on occasion to one of the bytes of some of the values.  This would
often cause only a modest change in the value, but could turn the
value into a $10^{30}$ if the bit happened to be in the exponent.
Data written by {\tt FITTP} and then read with {\tt FITLD}, {\tt
UVLOD}, and {\tt PRTTP} were most affected.  Usually no error message
would appear until the data read back were processed in some way
\eg\ by {\tt IMAGR}\@.  Data files written with this bug are
unrecoverable.  Versions of the EGCS compiler prior to 1.1 do not have
this problem.  \AIPS\ Z routines were changed to avoid any use of {\tt
INTEGER*2} at the end of December 1998 in \RELEASENAME\ and, so far as
we know, there are now no problems in this release with the the EGCS
compiler versions 1.1 and beyond.  Users of {\tt HF2SV} and {\tt
HFPRT} should be aware that the format supported by {\tt HF} files
requires {\tt INTEGER*2} and so there may still be problems with these
tasks if EGCS compilers are used.

\subsubsection{Miscellaneous changes}

\begin{description}
\myitem{XHELP} has been improved.  When you type {\tt XHELP} {\it
    taskname}, the help file for the task will be displayed in your
    network browser.  All adverb names that occur in the inputs and
    help sections of the file will be highlighted as links to the
    adverbs' help files.
\myitem{RUN} The {\tt VERSION} adverb may now be used to point at run
    files belonging both to the login user and to user number 1.
\myitem{COMPRESS} \hspace{3em} This verb, which is the quick way to
   pick up new \POPS\ symbols and to clean up procedure editing, had
   the unfortunate affect of making all character string values into
   upper-case letters.  It now preserves case.
\myitem{Batch} A Y2K-like bug caused the start times for batch jobs
    started with a delay to be 1900 years too large.  Batch jobs are
    sometimes vulnerable to {\tt CTRL-C}'s and the like.  They should
   be avoided when running tasks and batch jobs.
\end{description}

\subsection{VLBI data processing}

\subsubsection{{\tt FITLD}: Calibration transfer}

All FITS export tapes written by the VLBA correlator after April 1,
1999 contain calibration and flagging information.  {\tt FITLD} will
load these data automatically into {\tt TY}, {\tt PC}, FG, and {\tt
GC} tables.  Each FITS file contains an independent copy of the
calibration information so you will often end up with duplicated
information. This may cause some \AIPS\ tasks to fail.  Therefore,
if you process VLBA data, you should type {\tt RUN MERGECAL} to define
the {\tt AIPS} procedure {\tt MERGECAL}\@.  You should then run the
{\tt MERGECAL} procedure on all VLBA data immediately after loading it
to remove redundant calibration data.  This function will eventually be
incorporated into {\tt FITLD}\@.

The calibration data from the VLBA correlator may be incomplete if you
have used non-VLBA stations. Refer to
{\tt http://www.nrao.edu/vlba/html/OBSERVING/cal-transfer/cal-transfer.html }
for procedures to follow in these circumstances.  The Memo defining
the FITS-IDI format including calibration transfer appears in this
release and \AIPS\ Memo No.~102.

\subsubsection{{\tt FITLD}: other changes}

Many fixes have been incorporated into the {\tt 15APR99} version of
{\tt FITLD}\@. These include
\begin{itemize}
\item\ The {\tt BIF}, {\tt EIF}, {\tt BCHAN}, and {\tt ECHAN} adverbs
    are no longer used if they specify IFs and channels outside the
    range in the input file.  Previously, they were used to select
    non-existent data.
\item\ {\tt WTTHRESH} can now be used to flag data within individual
    IFs rather than flagging entire visibility records.
\item\ {\tt FITLD} no longer fails if asked to append data to a file
    that does not contain data from the VLBA correlator.
\item\ VLBA source positions are precessed to the observing date for
    the apparent coordinate columns of the source table.
\item\ Explicit subarray numbers are no longer discarded in
    interferometry data interchange files.
\item\ The way in which {\tt FITLD} chooses an observing date has been
    improved so that it is less likely to omit an observing date from
    the header of an output file.
\item\ The restrictions on the time order of data in a FITS-IDI file
    have been relaxed so that data may occur in any order within a
    single {\tt UV\_DATA} table provided that the table does not span
    a midnight boundary.
\end{itemize}

\subsubsection{CLCOR}

The \AIPS\ task {\tt CLCOR} corrects the {\tt CL} table using several
options.  One of them is a correction for a shift of the source and/or
antenna position (option ``{\tt ANTP}'').  There were no complaints
about this option while it was used for moderate shift ($<1$ asec). At
the end of 1996, a problem was reported in a VLBA observation at
7mm-wavelength with a position shift of 10 asec.  Phil Diamond carried
out a test of {\tt CLCOR} by correlating data at C band with a known
shift of 5 asec in declination.  He showed that the shifted data after
being corrected by {\tt CLCOR} coincided with the original data.
Because some users continued to complain, it was decided to do a
deeper analysis of the {\tt CLCOR} correction for source position
and to carry out the new test with bigger shift

Until now, {\tt CLCOR} calculated the correction of delay and rate
using only linear terms in the series as a function of the shift. So
{\tt CLCOR} could be in error because of disregarding the
higher-order terms or because of the difference between the simple
formul\ae\ used by {\tt CLCOR} and the more sophisticated formul\ae\
of {\tt CALC} used by the VLBA correlator.  To eliminate the problem
of the high terms, the new version of {\tt CLCOR} calculates the
correction of the delay and rate as the difference of the delay and
rate in the shifted and original position.  The accuracy of {\tt
CLCOR} was also improved when {\tt FITLD} was modified to record the
correct apparent source coordinates in the relevant columns of {\tt
SU} table.

Tests were carried out at wavelengths of 7mm and 6cm.  The correlation
was provided with shifted source coordinates as large as 20 asec. The
known shift was then corrected in \AIPS\ by the improved {\tt CLCOR},
and the corrected data were compared with original un-shifted data.
The tests and our error analysis show that {\tt CLCOR} corrects delay
and rate without visible errors in all practical cases.  The error of
the corrected phase is explained by the difference between {\tt
CALC}'s and {\tt CLCOR}'s formul\ae.  The error in the phase
correction by {\tt CLCOR} is small if the product of baseline in
$\lambda$ by the shift in asec less than $3 \cdot 10^8$.

\subsubsection{Miscellaneous changes}

\begin{description}
\myitem{\Cookbook} The VLBI chapter has been updated to include
    information of calibration transfer and phase re-referencing.
\myitem{CVEL} The Hanning smoothing of autocorrelation spectra was
    corrected and Hanning smoothing was made an option for both
    autocorrelation and cross-correlation data under control of {\tt
    APARM(9)}\@.
\myitem{PCCOR} The handling of Pcal tones which are not located
    symmetrically with respect to the edges of the IFs was corrected.
    This case now arises after recent changes to {\tt SCHED}\@.
\myitem{USUBA} This task appears to be fragile for MkIII data in which
    antennas drop in and out rapidly without switching subarrays.  The
    code was able to break the HP optimizer and so is now no longer
    complied with optimization on that architecture.
\myitem{UVPOL} This task converts \uvdata\ having only one cross-hand
    polarization in a sample to a form that {\tt IMAGR} will accept
    and make complex images and beams suitable for {\tt CXCLN}\@.  It
    was retaining data for which both cross-hand polarizations were
    flagged, which disturbed the weighting of the data in imaging.
    Now such data are dropped.
\end{description}

\subsubsection{Fringe fitting}

The performance of {\tt KRING} was checked extensively with a newly
developed test suite.  A new {\tt SOLTYPE = 'NOFT'} to disable the FFT
stage was added.  It allows {\tt KRING} to perform only the least
squares and behave just like {\tt CALIB} except that it can also solve
for rates, and single-band and multi-band delays. When a solution's
SNR falls below the threshold, the solutions are now blanked.  Bugs in
{\tt FRING} affecting loops over subarray and failed solutions in
rate-only fits were corrected.  The task {\tt MBDLY} was found to fail
or get the wrong answer a lot of the time and was found to use ony the
first subarray and first frequency ID\@.  It has been improved, but
{\tt KRING} is more reliable in finding multi-band delays.

\subsection{Interferometric data handling}

\subsubsection{Ionospheric corrections}

This release of \AIPS\ includes a new task ({\tt TECOR}) for
correcting ionospheric delay and Faraday rotation.  This task uses
ionospheric data in IONEX format.  This is a standard format for maps
of ionospheric electron density that is used by the geophysical
community.  World-wide ionospheric data is available from the Crustal
Dynamics Data Information System ({\tt http://cddisa.gsfc.nasa.gov})
in IONEX format with a time resolution of 2 hours.  NRAO plans to make
data with higher time-resolution available for the continental United
States in the near future.  You will need a password to retrieve data
from the CDDIS. Contact information is provided at the CDDIS web site.

In a related change, the task {\tt GPSDL} has been renamed to {\tt
APGPS} (APply GPS) and has been upgraded to allow antenna selection
and calculation of dispersive delays.


\subsubsection{Calibration application package}

For the {\tt 15OCT98} release, the calibration application package was
generalized to allow calibration data to occur at different times for
different antennas.  Previously, they all had to occur at the same
time, a requirement which caused real problems with some standard
modes of VLBI observations.  Unfortunately, there were a number of
problems with the generalized routines which were found only after
they were used on a wide variety of data.  For this reason, users of
{\tt 15OCT98} are encouraged to replace it with {\tt 15APR99}\@.

Changes to the calibration application package included
\begin{itemize}
\item\ The ability to apply dispersive delays, when they are present
   in a {\tt CL} table, was added to all calibration application
   tasks.
\item\ An error made in 1992 caused flagged solutions to be ignored
   with the data then being calibrated with good solutions from
   (potentially much) earlier times.  Now data, for which the
   solutions are blanked, are flagged as they should be.
\item\ The ionospheric Faraday rotation and dispersive delay terms
   were not inserted properly into the interpolation tables under a
   variety of conditions.
\item\ The interpolation routines did not check for blanked Faraday
   rotation values and hence made gross errors in applying
   polarization calibration.  Note that a magic-value blank is around
   $10^8$ on most machines.
\item\ Data records were not dropped when all data were either
   previously flagged or flagged due to bad gain solutions.
\item\ There is code designed to avoid computing interpolated
   solutions for every microscopic change in time or even for every
   data sample.  This code had to be fixed since it failed to
   recognize that the tables to be interpolated had changed and it
   failed to interpolate often enough if one or more antennas had a
   big gap in time with no solutions.
\item\ The bandpass application code contained the dubious assumption
   that auto-correlations after calibration would be centered about
   a value of 1.0 and, therefore, subtracted 1.0 to leave, in
   principle, just the signal from the sky in some sort of units.
   Unfortunately, the order of the gain and bandpass multiplications
   actually made the results be centered on values other than 0.0.
   The subtraction of 1.0 has been removed from the code, leaving
   autocorrelations with no automatic ``baseline'' subtraction.
\item\ The logic by which the adverbs {\tt QUAL}, {\tt CALCODE}, and
   {\tt SOURCES} selected sources produced confusing results when
   sources were de-selected (\ie\ {\tt SOURCES = '-{\it xxxx}'}.  The
   logic was changed so that {\tt CALCODE} and {\tt QUAL} are applied
   to select a list of possible sources from the source table and then
   {\tt SOURCES} is applied to reduce the list.
\end{itemize}

\subsubsection{Miscellaneous corrections and additions}

\begin{description}
\myitem{BPASS} had a very serious bug which was introduced in the {\tt
   15APR98} release.  When one polarization of an antenna was fully
   flagged, the solution for the other polarization was an erroneous
   constant for the first half of the channels.
\myitem{CLINV} is a new task which will make a {\tt CL} or {\tt SN}
   table which is the inverse in amplitude, phase, or both of an input
   table.  The task was created to handle a situation in which a
   strong source near the antenna half-power point dominated the
   self-cal solutions.  Pointing errors make these solutions incorrect
   for the other sources in the field and so the calibration needs to
   be removed after the strong source has been {\tt UVSUB}ed.
\myitem{FLGIT} has a new option to remove data with excessive V
   polarization before median filtering or fitting baselines.  It also
   has new controls on the levels at which data are flagged with
   respect to the rms.
\myitem{SPLIT} contained a bizarre bug which under a combination of
   circumstances could affectively destroy a source table.  The number
   of channels written when frequency smoothing was changed to write
   as many as possible even if the last one does not get as many input
   channels averaged into it.  If {\tt DOUVC=-1}, as it should with
   channel-dependent weighting, then the weights will take care of
   this partial averaging.
\myitem{UVCOP} would occasionally write out fully flagged data even
   when instructed to avoid doing so.  The tests for good data were
   tightened to include only the included IFs and channels.
\myitem{EDITR} and friends had an error that caused them to ignore
   times in which only one antenna or baseline occurred.  This was
   most obvious when a single antenna or baseline was included in the
   editing.
\myitem{UVINIT} had a bug when it had to open a file already larger
   than 2 Gigabytes in order to append even more data.
\end{description}

\subsection{Imaging}

\subsubsection{Miscellaneous imaging changes}

\begin{description}
\myitem{Image size} The maximum allowed image size was parameterized
    throughout \AIPS\ and was increased to 16384.  A number of bugs
    handling image size were corrected.  If you have enough disk and
    time you are now allowed images up to 16384 on a side.  You must
    have a system capable of handling files $> 2$ Gbyte if you need to
    Fourier transform such images.
\myitem{FLATN} The option to omit {\tt EDGSKP} pixels around the edge
    of each image was added.  The gridding was re-arranged to avoid
    excessive computations, greatly improving performance.
\end{description}
\eject

\subsubsection{IMAGR and SCMAP}

A considerable number of changes have been made to {\tt IMAGR} and
{\tt SCMAP} to assist in their use.  They include
\begin{itemize}
\item\ The adverb {\tt OBOXFILE} was added to specify a text file in
    which are kept all of the Clean boxes currently in use.  It is
    updated whenever boxes are changed with the TV display.  Lines
    describing other parameters are kept as well, so {\tt OBOXFILE}
    can be the same file as the {\tt BOXFILE} used to provide the
    initial window and field parameters.
\item\ The display routines no longer require that all Clean boxes
    appear on the display in full or in part although that is the
    default in setting the display window.  The box-setting functions
    will work on whatever window is currently displayed, allowing you
    to look at every pixel in each part of the image if you want.
\item\ Menu handling was improved to try to prevent changes in the
    window size from affecting correct menu reading.
\item\ The color and intensity transfer functions are now initialized
    only at the beginning of the task.  Any transfer function you have
    set will be retained at the next major cycle.
\item\ {\tt OVERLAP 2} mode may be used without having to request {\tt
    DO3DIMAG}\@.
\item\ Cleaning with {\tt DO3DIMAG} true will continue in {\tt OVERLAP}
   $< 2$ modes until each image has had the same number of major
   cycles even if {\tt NITER} is exceeded.
\end{itemize}
A number of significant bugs were found and corrected.  They are
\begin{itemize}
\item\ The gridded model subtraction routines failed to scale the $W$
   term for any frequency difference between the first channel being
   used and the reference frequency.  This tends to arise if {\tt BIF}
   is not 1 and when the primary-beam correction option is invoked.
   The error is particularly prominent at low declinations with fields
   north or south of the pointing position.  Multi-channel
   subtractions were handled correctly if the first channel is at the
   reference frequency.  Note that this error appears to have been
   present since gridded model subtraction first appeared in \AIPS\
   and affects all tasks that do that operation.
\item\ The 3D gridding routine had a gross error that would arise when
   it had to do multiple passes in the gridding and there was a gap
   between one swath in $|u|$ and the next.  This error caused
   very bad intensity levels and other obvious defects in the images.
\item\ A similar gridding bug in both routines arose when there were no
   samples in the very last swath of $|u| \approx 0$.  Its affects
   were also obvious.
\item\ The tests to decide whether data had to be sorted before
   weighting, gridding, or Cleaning were corrected for several minor
   flaws that could result in data not being sorted when it needed to
   be.
\item\ The primary beam correction had a bug causing it to fail when
   {\tt DO3DIMAG} was true.  It also did not handle coordinates
   properly especially in the 3D case.
\item\ Source tables contain frequency offsets for each source with
   respect to the frequency offsets in the {\tt FQ} table.  These are
   often small, but are not required to be.  Unfortunately, they were
   ignored by most tasks except inside the calibration system and in
   {\tt SPLIT}\@.  Among other possible affects, this oversight caused
   a scaling error in images made by {\tt IMAGR} from multi-source
   data sets.  It would also make scaling errors when applying  a
   model with {\tt CALIB}, {\tt FRING}, {\it et al.}
\end{itemize}
\vfill\eject

\subsection{Modeling}

\subsubsection{UVCON}

   The new task {\tt UVCON} was written to simplify simulation of
\uvdata\ for designing array configurations.  It generates a {\it uv}
database for an interferometric array whose configuration is specified
by the user. Visibilities corresponding to a specified model and
Gaussian noise appropriate for the specified antenna characteristics
are calculated for each visibility.  The output is a standard \AIPS\
\uvdata\ file.  \AIPS\ has several tasks which assist with this
problem, but none of them are complete.  They are {\tt UVSIM} which
simulates \uvdata\ without a source model or noise, {\tt UVSUB} adds
a model to an existing \uvdata\ file without simulation, {\tt UVMOD}
which adds noise and a simple model to an existing \uvdata\ file
without simulation, and {\tt DTSIM} which simulates \uvdata\ with only
simple models and without noise.  {\tt DTSIM} is intended to test
calibration defects in VLBI and is thus too complicated for the array
design purposes.  {\tt UVCON} replaces a procedure which used \AIPS\
tasks {\tt UVSIM}, {\tt UVSUB}, and {\tt UVMOD} along with the {\tt
PUTHEAD} verb.  The array geometry can be specified in three different
coordinate systems: equatorial, local horizon, and geodetic. There is
an option of using set of different frequencies to simulate better
{\it uv} coverage.  {\tt UVCON} has been used successfully to
simulate \uvdata\ for ALMA (the new name for the MMA) and for the VLA
upgrade and can be recommended for other projects.

\subsubsection{\SLIME}

     An updated version of \SLIME, the interactive model-fitting
``plug-in'' for \AIPS\ is now available.  Pre-built packages are
available for SPARC workstations running Solaris 2.5 or later and for
ALPHA/AXP workstations running Digital UNIX 4.0.  These packages have
been built against the {\tt 15OCT99} version of \AIPS\ but should work
with any version of \AIPS\ from {\tt 15APR98} onwards. The packages
for {\tt 15OCT97} and earlier have been withdrawn.

This version fixes some memory leaks that caused \SLIME\ to fail under
Digital UNIX under some circumstances and offers improved messages
that provide better advice on what to to if a least-squares solution
fails to converge.  In addition the Digital UNIX version no longer
requires the GNU C++ runtime libraries to be installed.

The updated version of \SLIME\ may be downloaded from the \SLIME\ home
page at\\
\centerline{{\tt http://www.nrao.edu/\~{}cflatter/SLIME/index.htm}}

\subsection{Data analysis and display}

\begin{description}
\myitem{UVHOL} is a new task to perform the holography functions
    previously, but no longer, done by {\tt UVPRT}\@.  It selects the
    last {\tt NPOINTS} samples of each dwell position (as indicated by
    the value of $w$) which is a more reliable method of selection
    than used previously.
\myitem{PRTUV} has a new set of options to specify the data scaling
    in order to avoid reading some of the data set to find the
    necessary scaling information.
\myitem{KNTR} has a new adverb {\tt NY} to specify the number of
    frames in the $y$ direction.  The default is still to make as
    square a display as possible.
\myitem{POSSM} failed to plot bandpass functions produced by {\tt
    CPASS} properly and wrote all over itself.  It does better now.
\myitem{DFTPL} used data weights incorrectly in computing the rms and
    expected error.
\myitem{XMOM} now retains the first axis (making it the last 1-point
    axis) so that coordinate pairs will not be lost.
\myitem{REBOX} and {\tt FILEBOX} now handle Clean boxes that are
    partially or fully off of the display area.  The order of the
    boxes is retained and any that are fully visible may be changed.
\myitem{XAS} has displayed a funny line at the bottom of the screen
    for a very long time.  A correction in the screen initialization
    routine has finally gotten rid of it.
\end{description}

\section{Improvements in system matters in \RELEASENAME}

\subsection{\AIPS\ Manager related items}

\begin{description}
\myitem{XHELP} has a new cgi perl script that should be installed in
    a local form in the cgi area used by your computers.  {\tt
    INSTEP1} now attempts to do this and explains the need to do so.
    Otherwise, {\tt XHELP} fetches its data from Charlottesville.
\myitem{LINUX} EGCS g77 Fortran compilers $\ge 1.1$ were found to make
    errors compiling routines containing {\tt INTEGER*2} statements.
    These compilers must not be used with versions of \AIPS\ prior to
    {\tt 15APR99}\@.  Because of this problem, we re-issued the {\tt
    15OCT98} CDrom of \AIPS\ using serial numbers $\ge 100$.
\myitem{LINUX} version of {\tt ZMOUN2} failed to close the device on a
    number of error conditions.  When this happened, the device was
    locked until the {\tt AIPS} process was terminated.
\myitem{LINUX} libraries were found to have a range of versions in
    which the {\tt getservbyname} function left an open file behind.
    After about 80 TV opens/closes, the open file limit was hit and
    things stopped working.  The latest libraries have corrected this
    bug, but we have left in a work-around since we have found that
    remembering the host and service rather than finding them each
    time is much faster, at least when they have to be found via
    yellow pages.
\myitem{USUBA} was found to be fragile in optimization and the
    optimizations had to be turned off for HP systems.  This is done
    in the file {\tt \$SYSUNIX/OPTIMIZE.LIS}\@.
\end{description}

\subsection{Programming considerations}

\begin{description}
\myitem{Image size} is parameterized in the {\tt PMAD.INC} file with
    the maximum image dimension {\tt MAXIMG} set to 16384 and the
    buffer size parameters {\tt MABFSS} and {\tt MABFSL} set to 16384
    and 65536.  All \AIPS\ subroutines and tasks should now use this
    include to set buffer dimensions.
\myitem{Table} floating-point keywords are now all stored as
    double-precision values.  Routines that read table keywords should
    test the type and handle the returned value properly in case it is
    a single or a double for a floating-valued keywords.
\myitem{Frequency} offsets are also a function of source in the source
    table and of time in the {\tt CL} table.  Both have been ignored
    widely, but it is not acceptable to ignore the first.  After an
    {\tt INIT} call to {\tt UVGET} is made, the source offsets for
    each IF are found in the {\tt DSEL.INC} common variable {\tt
    SFREQS(MAXIF)}\@.  The call sequence to {\tt CHNCOP} was changed
    to include this array.  {\tt UVGET} has always used the source
    offsets in setting the new reference frequency, but any output
    {\tt FQ} table needs to take the offsets at each IF not just the
    first into account.  {\tt SPLIT} did all this correctly, but,
    until this release, most other tasks did not.
\end{description}

\section{Recent \AIPS\ Memoranda}

The following new memorandum is available from the \AIPS\ home page.

\begin{tabular}{lp{6in}}
102 &   The FITS Interferometry Data Interchange Format\\
   &    Chris Flatters\\
   &    December 3, 1998\\
   &    The FITS Interferometry Data Interchange (FITS-IDI) format is
        a variant of FITS that may be used to archive raw radio
        interferometry data and to transport it between institutions.
        It may be used to store both interferometry data and
        calibration data that is associated with it.\\
   &    \\
\end{tabular}
\vfill\eject

\section{Improving \AIPS\ Performance Under Solaris}

Disk writing under Solaris 2.{\it x} is governed be a ``write
throttle'' algorithm that tries to limit the amount of memory that can
be consumed by buffered data waiting to be written to disk. If a
process has more than a certain amount of data in the buffer waiting
to be written to disk, Solaris will hold up that process until some of
that data has been written out.  The default value of this threshold is
rather low and imposes a considerable penalty on \AIPS\ which tends to
write a lot of data to scratch files.  Fortunately, this threshold can
be changed.

If you have a Solaris system that is predominantly used by a single
\AIPS\ user and you have at least 100 megabytes of main memory, then
you should see a significant improvement in performance if you add the
following lines to {\tt /etc/system} and reboot (you will need to do
this as root).
\begin{center}
{\tt set ufs:ufs\_HW=6291456} \\
{\tt set ufs:ufs\_LW=4194304} \\
\end{center}

Tests show improvements from about 10\% to more than 30\% in the {\tt
DDT} benchmark with higher-performance machines receiving the greater
improvements. It is likely that the low default settings are largely
responsible for the performance deficit observed running the {\tt DDT}
benchmark on UltraSPARC systems without using {\tt /tmp} for scratch
files.

If you process a lot of spectral line or VLBI data and you have a
large amount of memory, then it is possible that you could benefit
from even larger values of these settings but you should exercise
caution when changing them and make sure that {\tt ufs\_HW} is always
larger than {\tt ufs\_LW}\@.

If you have 64 megabytes of memory or less, changing these settings
will not improve your performance significantly and may cause some
degradation. If your system is often used by more than one person at
the same time, then you should also avoid this change. When several
programs are trying to write data at the same time, this change tends
to increase the performance of programs with high data rates at the
cost of programs with lower data rates.  This may be unpopular with
other users.

You can find more information about the write throttle in Chapter 8 of
``Sun Performance and Tuning, 2nd Edn'' by Adrian Cockcroft and
Richard Pettit (Prentice Hall, 1998).

\section{Patch Distribution}

As before, important bug fixes and selected improvements in
\RELEASENAME\ can be downloaded via the Web at:

\begin{center}
\vskip -10pt
{\tt http://www.cv.nrao.edu/aips/15APR99/patches.html}
\vskip -10pt
\end{center}

Alternatively one can use {\it anonymous} \ftp\ on the NRAO cpu {\tt
aips.nrao.edu}.  Documentation about patches to a release is placed
in the anonymous-ftp area {\tt pub/aips/}{\it release-name} and the
code is placed in suitable subdirectories below this. Information on
patches and how to fetch and apply them is also available through the
World-Wide Web pages for \hbox{\AIPS}.  As bugs in \RELEASENAME\ are
found, the patches will be placed in the {\tt ftp}/Web area for
\hbox{{\RELEASENAME}}.  No matter when you receive your \RELEASENAME\
``tape,'' {\it you must} fetch and install these patches if you
require them.

The \OLDNAME\ release had a number of important patches announced and
probably should have had more.  Repairs to the general calibration
system are so complex that we hesitate to announce them even when they
might be serious.  The announced corrections were:
\begin{enumerate}
\item\ {\tt FTPGET} incorrectly indicates {\tt DA00} status.
   1998-11-25.
\item\ Error in gridded Clean-component modeling. 1999-01-05.
\item\ Error in appending to very large UV data files.  1999-01-19.
\item\ Error in copying VLBI files in {\tt FLGIT}.  1999-01-20.
\item\ Revised documentation for calibration transfer.  1999-03-30.
\end{enumerate}

\section{Progress on a world-coordinates standard}

At the ADASS meeting held in Boston in the Fall of 1992 it was decided
that a standard for conveying coordinate information within the FITS
format needed to be developed.  Eric Greisen was, in his absence,
volunteered for the effort.  Versions of possible standards authored
by Greisen and Mark Calabretta (of the ATNF in Australia) appeared in
1993 (June AAS meeting in Berkeley) and in 1994 (September ADASS
meeting in Baltimore).  Other revisions through about 1996 were
available off the World-Wide Web.  The subject has languished for a
while since then, but has now become serious due to agreements reached
in principle at the November 1998 ADASS meeting in Champaign-Urbana.
The paper is now divided into three parts: a general paper, a
celestial-coordinates paper, and a spectral-coordinates paper.  All
three of these are available via the WWW and we encourage you to fetch
and read them.  When these are adopted --- and something very much
like them will become part of the FITS standard --- they will affect
the ways in which we think about astronomical data.  For that reason
alone, they are important and we solicit your comments ({\tt
egreisen@nrao.edu} and {\tt mcalabre@atnf.csiro.au}).  The papers
are:
\renewcommand{\labelenumi}{\Roman{enumi}.}
\begin{enumerate}
\item\  Representations of world coordinates in FITS, by Greisen and
  Calabretta\\
  ({\tt ftp://ftp.cv.nrao.edu/NRAO-staff/egreisen/wcs.ps.gz})
\item\ Representations of celestial coordinates in FITS, by Calabretta
  and Greisen\\
  ({\tt ftp://ftp.cv.nrao.edu/NRAO-staff/egreisen/ccs.ps.gz})
\item\ Representations of spectral coordinates in FITS, by Greisen\\
  ({\tt ftp://ftp.cv.nrao.edu/NRAO-staff/egreisen/scs.ps.gz})
\end{enumerate}
\renewcommand{\labelenumi}{\arabic{enumi}.}

\section{\AIPS\ on CDrom}

Starting with {\tt 15APR98}, we have made \AIPS\ available on CDrom.
The initial tests using recordable CD's were very successful, and
resulted in a CD with source code, two binary versions (Linux and
Solaris), all {\tt DDT} files, and a GNU-zipped version of the
documentation ({\tt TEXT}) area.  It is possible to either perform a
full installation on disk (\ie\ copying the binaries from CD to local
disk), or to run from the \hbox{CD}.  In the latter case, the
``footprint'' on the local disk is under 10 Megabytes!  (This figure
does not include user data, obviously.)  Furthermore, the setup script
was given the ability to switch between a ``run from CD'' installation
and a ``full'' installation.  The fact that 71 copies of the CDrom
were distributed suggests that this functionality, and the
availability of \AIPS\ on this new medium, are of considerable use to
the Astronomical Community.

\section{\AIPS\ Distribution}

A total of 263 copies of the {\tt 15OCT98} release were distributed to
239 non-NRAO sites.  Of these, 114 were in source code form and 149
were distributed as binary executables.  This is about the same as
that of {\tt 15APR98} (278 copies) and rather more than those of
{\tt 15OCT97} (107 copies), {\tt 15OCT96} (222 copies), and {\tt
15APR97} (148 copies), perhaps reflecting the lower rate of
developments in previous releases and the new capabilities of the
1998 releases.. The figures on computers using \AIPS\ are affected by
the percentage of \AIPS\ users that register with \hbox{NRAO}.  Of 239
non-NRAO sites receiving {\tt 15OCT98} only 82 (34\%) have registered.
We remind serious \AIPS\ users that registration is required in order
to receive user support.  The first table below shows the breakdown of
how the copies of {\tt 15OCT98} were distributed and includes both
source-code distributions and binary distributions.  The second table
below is based on registered installations of {\tt 15OCT98}.  It lists
total numbers of computers and indicates that the distribution over
operating systems was heavily weighted toward Solaris with Linux as a
distant second.  However, when asked about ``primary'' architecture,
45\%\ of our users answered Solaris and 41\%\ answered Linux.  This
indicates how far Linux has penetrated as the system used on the more
powerful computers used by astronomers today.  The third table gives
information about the geographic distribution of the systems shipped.

\begin{center}
\begin{tabular}{|r|r|r|r|r|r|} \hline\hline
{ftp} & {CDrom} &{8mm} & {4mm} & {ZIP} & {Floppy} \\ \hline
184   &      71 &   7  &    1  &    0  &       0  \\ \hline\hline
\end{tabular}
\end{center}

\begin{center}
\begin{tabular}{|l|r|r|r|r|r|r|} \hline\hline
{Operating System} & {No.} & \texttt{15OCT98}
                           & \texttt{15APR98}  & \texttt{15OCT97}
                           & \texttt{15APR97}  & \texttt{15OCT96} \\
                &          & {\%} & {\%} & {\%} & {\%} & {\%} \\
\hline
Solaris/SunOS 5 &    243   & 63 & 66 & 50 & 66 & 46  \\
PC Linux        &    112   & 25 & 19 & 23 & 16 & 19  \\
HP-UX           &     21   &  5 &  2 &  3 &  6 &  4  \\
Dec Alpha       &     14   &  3 &  7 &  9 &  6 & 10  \\
IBM /AIX        &     10   &  2 &  1 &  0 &  0 &  4  \\
SunOS 4         &      3   &  1 &  4 & 14 &  5 & 13  \\
SGI             &      3   &  1 &  3 &  1 &  1 &  5  \\
Alpha Linux     &      1   &  0 &    &    &    &     \\
Total           &    449   &    &    &    &    &     \\
\hline\hline
\end{tabular}
\end{center}

\begin{center}
\begin{tabular}{|llr|lr|} \hline\hline
\multicolumn{3}{|c|}{ftp sites}&\multicolumn{2}{c|}{physical media sites} \\
Domain & Location &                     Number & Location &           Number  \\
\hline
at  & Austria (Republic of)         &  1 & Argentina      &  5  \\
au  & Australia                     &  4 & Brazil         &  3  \\
be  & Belgium (Kingdom of)          &  2 &                &     \\
br  & Brazil  (Federative Republic of) &  2 & Bulgaria       &  2  \\
ca  & Canada                        &  8 & Chile          &  1  \\
com & U.S.A. (commercial)           & 11 & China          &  3  \\
de  & Germany (Federal Republic of) &  8 & Finland        &  2  \\
edu & U.S.A. (education)            & 52 & France         &  1  \\
es  & Spain (Kingdom of)            &  4 & Germany        &  2  \\
fi  & Finland (Republic of)         &  4 & Hungary        &  1  \\
fr  & France (French Republic)      &  4 & India          &  3  \\
gov & U.S.A. (government)           &  4 & Israel         &  1  \\
in  & India (Republic of)           &  1 & Italy          &  1  \\
it  & Italy (Italian Republic)      &  5 & Japan          &  1  \\
jp  & Japan                         & 20 & Netherlands    &  2  \\
kr  & Korea (Republic of)           &  1 &                &     \\
mil & U.S.A. (military)             &  2 & Poland         &  1  \\
mx  & Mexico (United Mexican States)&  7 & Spain          &  3  \\
net & Network (largely U.S.A.)      &  3 & Taiwan         &  1  \\
nl  & Netherlands                   &  6 & United Kingdom &  6  \\
nz  & New Zealand                   &  1 & U.S.A.         & 21  \\
org & Organization (largely U.S.A.) &  3 & Denmark        &  1  \\
ru  & Russia (Russian Federation)   &  4 & Russia         &  2  \\
se  & Sweden (Kingdom of)           &  4 &                &     \\
tw  & Taiwan                        &  3 &                &     \\
uk  & United Kingdom (Great Britain)& 12 &                &     \\
\hline
    &                              & 176 &                & 63  \\
\multicolumn{3}{|c|}{Totals: USA=90, foreign=149}& &  \\
\hline\hline
\end{tabular}
\end{center}

\vfill
\eject

 \cleardoublepage\pagestyle{empty}
 \centerline{\hss\psfig{figure=FIG/AIPSORDER.PS,height=23.3cm}\hss}
 \vfill\eject
 \vbox to 4.4in{
 \vfill
% \centerline{\hss\psfig{figure=FIG/Mandrill.eps,height=2.6in}\hss}
 \vfill}
 \phantom{...}
 \centerline{\hss\psfig{figure=FIG/AIPSLETM.PS,width=\linewidth}\hss}

\end{document}
