Next: Some Astrophysical and Instrumental Applications of AIPS++
Up: Software Systems and Tools
Previous: Enhancements by Mapping with the ISOPHOT Interactive Analysis (PIA)
Table of Contents - Subject Index - Author Index - Search - PS reprint - PDF reprint

Garwood, R. W. & McMullin, J. P. 1999, in ASP Conf. Ser., Vol. 172, Astronomical Data Analysis Software and Systems VIII, eds. D. M. Mehringer, R. L. Plante, & D. A. Roberts (San Francisco: ASP), 462

DISH: The Single Dish Environment in AIPS++

Robert W. Garwood, Joseph P. McMullin
NRAO1, 520 Edgemont Road, Charlottesville VA 22903

Abstract:

We present a short description of the single dish analysis environment in AIPS++, or DISH. DISH is available in the recent third AIPS++ beta release. DISH and AIPS++ will be the primary analysis tools for data from the Green Bank Telescope. Snapshots of DISH in use are presented. The initial focus of DISH has been on traditional single dish spectral line data analysis. Plans for additions to DISH both in tools for 1-D data analysis as well as single dish imaging are described.

1. Introduction

AIPS++ is a system for astronomical data processing which is now in its third beta release. The first full release is expected in 1999. The heart of AIPS++ is a powerful command line interpreter called glish (Paxson & Saltmarsh 1993; Schiebel & Paxson 1998).

DISH is a collection of glish scripts and clients which provides an environment within AIPS++ intended to be used for single dish radioastronomy data analysis. Its initial aim is to be a worthy replacement for traditional single dish analysis programs such as UniPOPS. Eventually it will provide access to more advanced data calibration and imaging utilities which will share the same basic design as the synthesis calibration and imaging utilities in AIPS++. The primary design goal has been to provide a graphical user interface that is intuitive, unsurprising, and responsive. Users should feel that results go to obvious places and, whenever possible, are displayed as they occur. Some uses of the single dish aspects of AIPS++ are reported by McMullin, Garwood, & Minter (1999).

2. The DISH Graphical User Interface

Figure 1: DISH: Showing the Results Manager and one Operation.
\begin{figure}
\epsscale{0.75}
\plotone{garwoodrw1.eps}
\end{figure}

Figure 1 shows the major components of the DISH GUI. The Results Manager is the core of DISH. All glish variables which DISH creates in response to user actions are stored in the Results Manager and listed in the Variable window. These variables are all available at the glish command line so the user can interact with them. DISH immediately plots the currently selected variable if it can be plotted. A description is associated with each variable. The user can change the description or the name of a variable in the Results Manager. Certain variables can also be browsed.

The Results Manager recognizes three different types of variables. Individual scans are two-dimensional data arrays plus any associated information (including analysis history information). The first dimension of the data array can be anything but is typically a frequency or velocity axis while the second dimension is a Stokes axis. This type of data is called an SDRECORD. These can be displayed as line graphs and the associated information can be browsed. The second type of variable is a collection of SDRECORDS. These can also be browsed, but not displayed. The selection operation in DISH applies user defined selection criteria to such a collection, producing a new collection. The third type of variable is everything else. The Results Manager does little more than keep track of this data for the user. Users can store any variable in the Results Manager from the glish prompt. Other types of special purpose data types may be added in the future.

The Menu bar at the top of the DISH GUI provides access to the File, Operation, Help and other features of DISH. New data files are created and existing data files are opened through the File menu. The GUI panels for each available operation are enabled and dismissed through the Operations menu. Multiple operation panels may be present at any time although screen size limitations are generally such that only a few will typically be displayed at one time. When enabled, each operation panel appears at the bottom of the DISH window. The operation shown here is for fitting baselines to the currently displayed spectra. The most recent status message is shown in the text immediately below the Results Manager. Messages displayed here are also echoed to the AIPS++ logger.

Operations within DISH may operate on collections of scans or they may operate on individual scans. All operations place their results in the Results Manager. If the result can be displayed, it is. Operations on individual scans always operate on the most recently displayed scan so that, hopefully, the user is not confused as to what is being operated on.

Each time DISH is exited, its current state is saved to disk. This state includes all of the contents of the Results Manager as well as the parameter values for the operations and user interface preferences. DISH is restored to this state when it is restarted.

3. The DISH Command Line Interface

Underlying each GUI operation are glish commands which are available to the user. Users who wish to do complex tasks not available through the DISH Graphical User Interface or who want to capture existing operations into a glish script will need to use this command line interface to DISH. The trace tool, when active, shows these underlying glish commands as each GUI operation occurs. These can be used to simply learn how the GUI works or the text from that window can be copied to an editor and used as the basis for a glish script.

All of the values in the Results Manager can be manipulated at the glish command line. These results can then be returned to the Results Manager. A simple example which illustrates this is given below.


rawdata.setlocation(1)                       # 1
on := rawdata.get()                          # 2
rawdata.setlocation(3)                       # 3
off := rawdata.get()                         # 4
result := on                                 # 5
result.data.arr :=                           # 6
   (on.data.arr - off.data.arr)/
   off.data.arr
dish.rm().add('result'                       # 7
              'Difference of rows 1 and 3',
              result,
              'SDRECORD')

The goal in this example is to reduce an on-off total power scan pair by extracting the ``on'' and the ``off'' source scans from an already opened data set, constructing the difference scan, and inserting the result in the Results Manager. In this example, rawdata is a previously opened collection of SDRECORDs available in the Results Manager. In rawdata, an on-source scan is located at the first record and an off-source scan is located at the third record. Line 1 makes sure that rawdata points at the first record. The data are then retrieved from that record and assigned to on. This is repeated for the off-source data which are assigned to off. The result is initialized by simply making result a copy of on. This sets the data structure and header words appropriate for these data. The difference of the two data arrays divided by the off data array is calculated in line 6. Finally, in line 7, result is added to the Results Manager. The final argument identifies this result as an SDRECORD. It is then available to be plotted automatically when the user selects it.

4. Future Plans

The first public release of DISH in AIPS++ occurred in the most recent AIPS++ beta release. We are now responding to user feedback. For the first full release of AIPS++, operations such as multi-component fitting and FFTs will be added to DISH. The current underlying data format used by DISH is a simple AIPS++ table created by direct conversion of single dish FITS data. By the first release of AIPS++, DISH will be able to interact with an AIPS++ MeasurementSet, the AIPS++ table structure used to hold astronomical data. The command line interface needs to be cleaned up so that users can more easily insert their own specialized operations into DISH.

The long range plan for single dish calibration and imaging in AIPS++ is to follow the same model used for synthesis data within AIPS++ as discussed by A. Kemball at this conference. An initial test of single dish calibration is expected in early 1999. An on-the-fly single dish imaging tool is planned for later in 1999.

References

McMullin, J. P., Garwood, R. W., & Minter, A. H. 1999, this volume, 466

Paxson, V. & Saltmarsh, C. 1993, Proc. of the 1993 Winter USENIX Technical Conference (Berkeley: USENIX Assoc.), 141

Schiebel, D. & Paxson, V. 1998, ``The Glish 2.7 User Manual'', National Astronomy Radio Observatory,
http://aips2.nrao.edu/aips++/docs/reference/Glish/Glish.html



Footnotes

...NRAO1
The National Radio Astronomy Observatory is a facility of the National Science Foundation operated under cooperative agreement by Associated Universities, Inc.

© Copyright 1999 Astronomical Society of the Pacific, 390 Ashton Avenue, San Francisco, California 94112, USA
Next: Some Astrophysical and Instrumental Applications of AIPS++
Up: Software Systems and Tools
Previous: Enhancements by Mapping with the ISOPHOT Interactive Analysis (PIA)
Table of Contents - Subject Index - Author Index - Search - PS reprint - PDF reprint

adass@ncsa.uiuc.edu