Next: The SRON-HeaD Data Analysis System
Previous: The XMM Survey Science Centre
Up: Software Systems
Table of Contents - Index - PS reprint

Astronomical Data Analysis Software and Systems VI
ASP Conference Series, Vol. 125, 1997
Editors: Gareth Hunt and H. E. Payne

The DRAO Export Software Package

L. A. Higgs, A. P. Hoffmann and A. G. Willis
Dominion Radio Astrophysical Observatory, National Research Council of Canada, Penticton, B.C., Canada



Over the years, the computing staff at the Dominion Radio Astrophysical Observatory (DRAO) have developed an extensive package of software for the analysis of radio-astronomical data. Recently, the Observatory, in conjunction with a number of Canadian and foreign institutions, has embarked upon an extensive survey of radio emission from the Galactic Plane. This has required the conversion of the DRAO software environment for visibility and image processing into an exportable form that is relatively easily installed at foreign sites. This package is now freely available to the general astronomical community by anonymous ftp. Although the visibility-analysis portions of the package are of little use outside of DRAO, other portions are of general interest. The general philosophy behind the software and its scope are outlined.


1. Introduction

The DRAO export software package came into being not by deliberate plan, but as a result of users' needs-precipitated by the funding of the Galactic Plane Survey project. It therefore suffers somewhat from not being engineered from the beginning as exportable code!

Also, it differs somewhat from well-known radio-astronomy packages such as AIPS, GIPSY, MIDAS, or MIRIAD, in that it is not a self-contained, well-defined package. Rather, it is a suite of observatory application programs bound together by an underlying software environment. This environment is defined mainly by the way in which ``header information'' is ascribed to datasets.

The end result is a collection of application programs that operate on a wide variety of datasets, and that all have a similar ``feel'' to the user.

2. The DRAO Concept of a ``Dataset''

In the DRAO convention, a ``dataset'' is any one, two, or three-dimensional collection of data that is uniformly sampled, and that is contained in homogeneous binary files. The binary files can be 16-bit integer, 32-bit integer, or 32-bit floating point. By convention, one and two-dimensional data are contained in single files, and three-dimensional data are contained in an ensemble of files where each file corresponds to a given Z coordinate. Therefore, any data that are stored in this format can be accessed directly by the DRAO software without any format conversion.

The parameters that are usually associated with a dataset are stored independently of the data, in a master-directory file known as a ``file-definition file.'' Entries in this file can easily be created, modified, etc., by the DRAO software. Linkage between an entry in this file and a dataset is by file name(s). A separate file-definition file exists in each directory used by a user.

An example of a dataset definition (commonly known as a file definition) is shown in Figure 1. Here, astronomical parameters have been provided to describe a dataset with the file name ``CYGNUSX.74CM''.

Figure: A typical file definition for a 2-D dataset. Original PostScript figure (728kB).

3. The ``File Header'' System-The Binding Glue

The underlying ``glue'' that binds the DRAO software system together is the ``file header'' system-a library of routines that define, modify, or delete header information that is contained in ``file definitions.'' These routines also allow applications programmers to specify what types of auxiliary information are required for particular applications, and to set defaults and limiting checks on these items of information. If a user runs an application program without sufficient specification of data parameters, the application will request the missing information from the user.

Accompanying the file-header library is a standard library of common subroutines used by all applications. Their use ensures that all applications have a similar ``feel'' to the end-user.

Most subroutines and applications programs are written in a FORTRAN-like preprocessor language, developed at DRAO by Geoff Croes many years ago. Known as FORCE, this language produces FORTRAN as output. The basic structure of the DRAO file-header and standard libraries was also developed by Geoff Croes, although there has been evolution over the years.

4. Two Basic Applications: MADR and PLOT

4.1. MADR

Although many application programs exist within the export package, two are of very general use. The madr program (``manipulation and data review'') is a general-purpose program for quick-look analysis of data and simple data presentation. It references a very minimal set of data descriptive parameters and its use is therefore not restricted to astronomical data. Datasets can be manipulated by using only their file-definition numbers, and this allows a modest amount of array arithmetic, for example. Datasets can be ``subsetted'' for various operations, and data elements can easily be edited. The parameters that specify data display operations in madr are also stored in ``definition files,'' so that operations can be recalled later to be used again.

Some of the data manipulation operations that can be done using madr are: data subsetting, data listing and editing, transposition, Fourier transforms, array arithmetic, collapsing along a principal axis, derivation of statistical parameters, contour and shaded displays, and ruled-surface and ``strip chart'' displays.

The madr program is very useful for the creation of datasets for testing purposes. For example, if dataset #1 is defined to be a 128×128 array, the following commands to the dataset manipulator in madr will create a test Gaussian of width 10 pixels, centered at (65,65):

f1 = (X-65)(X-65)+(Y-65)(Y-65)
f1m = EXP(-2.7726( f1/100))
(The two-step procedure is a result of limited internal buffering in madr). Similarly, one dataset, say with definition number 5, can be multiplied by another, say with definition number 6, by the command:
f5m = f5f6
The datasets can be 1-D, 2-D, or 3-D.

4.2. PLOT

A second program for dataset presentation is plot. Somewhat similar to madr, this program is designed to produce publication-quality diagrams. Like madr, it uses a modified PGPLOT as its graphics backbone. Diagrams are represented as the superposition of objects, each of which can be defined and the definition stored in definition files for future usage. Some of the basic objects that can be defined are: display boxes; astronomical grids; text boxes; contour, shading (both continuous and stepped), ruled-surface, vector and X/Y plot displays; wedge and pie graphs; plots of object positions; histograms; ellipses, arrows and lines; and polygons. Examples of plot displays can be found in Higgs et al. (1994), for example, where all the graphical figures were produced using this program.

5. Suite of Applications Programs

The DRAO export package includes some 80 application programs. These include programs for:

  1. image generation from DRAO visibility data,
  2. coordinate transformations,
  3. display and analysis of continuum (2-D) images,
  4. display and analysis of spectral data cubes (3-D),
  5. display and analysis of 1-D spectra,
  6. modeling of data,
  7. input and output of data, and
  8. several miscellaneous programs.

Most application programs are designed with two stages in their execution: an interactive definition stage in which program parameters are established, and an execution stage which may be spawned as a batch task. Many of the applications programs would be of general utility in most radio observatories, although those few that deal with DRAO visibility data would be of limited interest.

6. Visualization

Included in the DRAO export package are a few visualization tools that have been implemented in IDL. If a remote site does not have an IDL licence, these tools will not be available, but there will be no difficulties in installing the rest of the DRAO package. These tools include imview for 2-D images, newcube for 3-D datacubes, and specview for collections of 1-D spectra.

7. Distribution of Software

The export package is available by anonymous ftp, from, in the file pub/nwexpsoft.tar.gz. Installation instructions are given in the file pub/drao_install_proc. Installation is supported for IBM AIX, Sun OS, and SGI IRIX systems, and has been carried out on Sun Solaris and DEC Alpha systems. The current status of bug fixes, etc., is documented under Status of DRAO Export Software on the DRAO home page. The exported tar file is about 2MB, and the full, compiled DRAO system requires about 200MB.


Higgs, L. A., Wendker, H. J., & Landecker, T. L. 1994, A&A, 291, 295

© Copyright 1997 Astronomical Society of the Pacific, 390 Ashton Avenue, San Francisco, California 94112, USA

Next: The SRON-HeaD Data Analysis System
Previous: The XMM Survey Science Centre
Up: Software Systems
Table of Contents - Index - PS reprint