Section 2 presents the capabilities of dish by showing complete data reduction session for a simple GBT spectral line observation, where an astronomical measurement is completed in a small number of simple steps. Section 3 shows the lower level functions for examining individual integrations of an observing scan. Section 4 shows the flagging capabilities, including the graphical user interface. Section 6 describes in detail the calibration equations used Section 7 describes the data analysis functions for averaging and fitting models to the data. Section 8 presents the mapping capabilities of dish . Section 9 summarizes all of the dish capabilities in a handy reference. Section 10 presents the dish capabilities for an observer familiar with UNIPOPS. Appendix A describes the GBT data structure.
The best way to learn is by doing. The web site: http://aips2.aoc.nrao.edu/docs/recipes/Recipes/index.html has simple, step by step, guides for standard data reduction scenarios. Also data are provided!
The AIPS++ dish package is started under Unix by first setting up the environment, by "source-ing" some shell scripts. It is also strongly recommended that the user work in an empty sub-directory, as many files will be created.
In the first example, OH mega-maser data will be reduced, and the working directory is assigned name OH. Also note that dish will run more efficiently if the working directory is mounted locally on the machine running dish .
% mdkir OH # Create an empty work directory % cd OH # Go to it % gbdish # script to setup environment
After starting dish (via gbdish), a number of messages are printed in the window. Three new Graphical User Interfaces appear; 1) message log, 2) PG plotter and 3) dish record browser. The AIPS++ prompt is the ``-'' and the AIPS++ comment symbol is #. After each command execution, AIPS++ returns true, T, if the command is successful. The prompts and Ts are dropped in the listing below.
The data used in this section are from an OH mega maser survey run by Jim Braatz of NRAO (Braatz@nrao.edu) as a background program at the GBT. The survey selects sources found in both the IRAS 100 micron catalog and the NRAO NVSS 1.4 GHz VLA survey as candidates for OH mega-maser sources.
The survey uses the GBT 1-2 GHz receiver and the full IF electronics chain to connect to the Spectral Processor located in the Equipment room (See http://www.gb.nrao.edu/GBT for a complete description of the GBT electronics). The OH survey uses the Spectral processor configured for dual polarization to produce 5 MHz bandwidth spectra having 1023 channels. The Spectral processor controlled turning on and off a calibration noise diode continually during the observation. The laboratory measurements of the noise diode values are used to calibrate the astronomical observation.
The goal of this recipe is to determine whether redshifted OH maser emission is present in the 1665.4018 and 1667.359 MHz lines. The only the AIPS++ plotter window is used in this recipe.
The process of dish analysis is importing the data into a Measurement Set (MS), calibrating individual scans and accumulating them into a single globalscan. This globalscan may be saved for later analysis. The dish program assumes the observations are organized into scans. A scan may contain any number of integrations. An integration is a set of intensities or spectra for each of the back-end inputs (such as dual polarizations and/or multiple beams).
The user inputs for data calibration are shown below. The steps include loading the data into AIPS++, plotting the raw data (Figure 1 left), calibrating and plotting the calibrated data (Figure 1 right).
# Load survey scans 17, 18, 19, 20
d.import('/home/archive/early-data/tape-1/OHsurvey',,,17,20)
d.lscans() # List the scans
# AIPS++ output == [17,18,19,20]
d.gms() # Show scan relationships
d.plotr(17,1) # Plot raw reference scan 17
# Cal-On Spectra for 2 pol. (figure 2)
d.calib(18) # Sig-Ref/Ref calibrate the Signal Scan
d.plotc(18) # Plot the calibrated data,
# also prepares data for averaging
d.accum() # Transfer for averaging with other scan
d.calib(20) # Sig-Ref/Ref calibrate the Signal Scan
d.plotc(20) # Show the spectra and
# Transfer data for averaging
d.accum() # Add the scan to the accumulation
d.ave() # Average all accumulated scans
d.show() # Look at the Average
After analysis of a single pair of OFFON scans, another pair is calibrated and averaged. Next a baseline is fit to the two polarization spectra (Figure 2 left) and subtracted to show the detected OH emission (Figure 2 right).
# Fit, remove a spectral baseline
d.nfit(3) # Set third order polynomial
d.nregion(80,270,650,960) # Select channels 80-270 and 650-960
d.bshape() # Fit and show the baseline shape
d.baseline() # Subtract the baseline
d.show() # Show the baseline subtracted
# There is the 1667 OH line!
d.fileout('averageSpectra') # Name the output file
d.keep() # Save visible spectra; given number 18
exit # We're done!
Now we re-open the previously imported measurement set and restore the saved average spectra. In this step the spectra are fit with two Gaussian components, and displayed twice. One display shows a Intensity versus Frequency display (Figure 3, left) and the other display shows Intensity versus Velocity (Figure 3, right).
d.open('OHsurvey_SP') # Re-open imported data
d.open('averageSpectra') # Re-open the previously averaged data
firstScan := d.lscans() # Get the number of the ave scan
aveSD := d.getscan(firstScan) # Create SD rec with ave scan
d.plotscan( aveSD) # plot the average scan
d.hanning() # Hanning smooth the spectra
d.show() # View the smoothed data
d.gauss(2) # Fit 2 gaussians; X axis in GHz
#Gauss: 1 AIPS++ output (see figure 4)
#Center: 1.47757e+00 Height: 2.01256e-02 Width: 8.06329e-04
#Cerr: 3.12915e-05 Herr: 1.59137e-03 Werr: 7.41239e-05
#Gauss: 2 AIPS++ output
#Center: 1.47605e+00 Height: 8.07131e-03 Width: 6.44905e-04
#Cerr: 6.65425e-05 Herr: 1.82314e-03 Werr: 1.57421e-04
C := 2.99792E5 # Velocity of light in km/sec
ohFreqB := 1665.400; ohFreqC := 1667.358 # Set OH constants
C * (ohFreqB - 1476.05) / ohFreqB # Calculate velocities
34085.2739 # AIPS++ output in km/sec
C * (ohFreqC - 1477.57) / ohFreqC # Calculate velocities
34123.9998 # AIPS++ output in km/sec
The OH survey observations towards IRAS09539+0857 were made to confirm the
observing setup for weak sources. These GBT observations show
a peak of emission at 1.47757 GHz. The Arecibo survey of
Darling and Giovanelli (2001, AJ, 121: 1278)
had previously detected IRAS09539+0857 and measured
a velocity of 38,673 km/sec (optical heliocentric),
consistent with the observations presented here.
(Note that
= 38,673 km/sec [optical definition] corresponds
to
= 34,270 km/sec [radio
definition]).
# Use PG Plotter GUI; Set X
# to Barycentric Radio km/sec
d.gauss(2) # Fit 2 gaussians; X axis in km/sec
#Gauss: 1 # AIPS++ output (see figure 4)
#Center: 3.41247e+04 Height: 2.01256e-02 Width: 1.44979e+02
#Cerr: 5.62624e+00 Herr: 1.59137e-03 Werr: 1.33275e+01
#Gauss: 2 # AIPS++ output
#Center: 3.43974e+04 Height: 8.07131e-03 Width: 1.15954e+02
#Cerr: 1.19644e+01 Herr: 1.82314e-03 Werr: 2.83044e+01
exit # We've got the velocity!