source: trunk/docs/outputs.tex @ 364

Last change on this file since 364 was 364, checked in by MatthewWhiting, 17 years ago

Updated User Guide to account for the recent changes.

File size: 16.8 KB
Line 
1% -----------------------------------------------------------------------
2% outputs.tex: Section detailing the different forms of text- and
3%              plot-based output.
4% -----------------------------------------------------------------------
5% Copyright (C) 2006, Matthew Whiting, ATNF
6%
7% This program is free software; you can redistribute it and/or modify it
8% under the terms of the GNU General Public License as published by the
9% Free Software Foundation; either version 2 of the License, or (at your
10% option) any later version.
11%
12% Duchamp is distributed in the hope that it will be useful, but WITHOUT
13% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14% FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15% for more details.
16%
17% You should have received a copy of the GNU General Public License
18% along with Duchamp; if not, write to the Free Software Foundation,
19% Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
20%
21% Correspondence concerning Duchamp may be directed to:
22%    Internet email: Matthew.Whiting [at] atnf.csiro.au
23%    Postal address: Dr. Matthew Whiting
24%                    Australia Telescope National Facility, CSIRO
25%                    PO Box 76
26%                    Epping NSW 1710
27%                    AUSTRALIA
28% -----------------------------------------------------------------------
29\secA{Outputs}
30\label{sec-output}
31
32\secB{During execution}
33
34\duchamp provides the user with feedback whilst it is running, to
35keep the user informed on the progress of the analysis. Most of this
36consists of self-explanatory messages about the particular stage the
37program is up to. The relevant parameters are printed to the screen at
38the start (once the file has been successfully read in), so the user
39is able to make a quick check that the setup is correct (see
40Appendix~{app-input} for an example).
41
42If the cube is being trimmed (\S\ref{sec-modify}), the resulting
43dimensions are printed to indicate how much has been trimmed. If a
44reconstruction is being done, a continually updating message shows
45either the current iteration and scale, compared to the maximum scale
46(when \texttt{reconDim = 3}), or a progress bar showing the amount of
47the cube that has been reconstructed (for smaller values of
48\texttt{reconDim}).
49
50During the searching algorithms, the progress through the search is
51shown. When completed, the number of objects found is reported (this
52is the total number found, before any merging is done).
53
54In the merging process (where multiple detections of the same object
55are combined -- see \S\ref{sec-merger}), two stages of output
56occur. The first is when each object in the list is compared with all
57others. The output shows two numbers: the first being how far through
58the list the current object is, and the second being the length of the
59list. As the algorithm proceeds, the first number should increase and
60the second should decrease (as objects are combined). When the numbers
61meet, the whole list has been compared. If the objects are being
62grown, a similar output is shown, indicating the progress through the
63list. In the rejection stage, in which objects not meeting the minimum
64pixels/channels requirements are removed, the total number of objects
65remaining in the list is shown, which should steadily decrease with
66each rejection until all have been examined. Note that these steps can
67be very quick for small numbers of detections.
68
69Since this continual printing to screen has some overhead of time and
70CPU involved, the user can elect to not print this information by
71setting the parameter \texttt{verbose = false}. In this case, the user
72is still informed as to the steps being undertaken, but the details of
73the progress are not shown.
74
75There may also be Warning or Error messages printed to screen. The
76Warning messages occur when something happens that is unexpected (for
77instance, a desired keyword is not present in the FITS header), but
78not detrimental to the execution. An Error message is something more
79serious, and indicates some part of the program was not able to
80complete its task. The message will also indicate which function or
81subroutine generated it -- this is primarily a tool for debugging, but
82can be useful in determining what went wrong.
83
84\secB{Text-based output files}
85
86\secC{Table of results}
87\label{sec-results}
88
89Finally, we get to the results -- the reason for running \duchamp in
90the first place. Once the detection list is finalised, it is sorted by
91the mean velocity of the detections (or, if there is no good WCS
92associated with the cube, by the mean $z$-pixel position). The results
93are then printed to the screen and to the output file, given by the
94\texttt{OutFile} parameter.
95
96The output consists of two sections. First, a list of the parameters
97are printed to the output file, for future reference. Next, the
98detection threshold that was used is given, so comparison can be made
99with other searches. The noise level and its spread are also
100reported. Thirdly, the number of detections are reported.
101
102All this information, known as the ``header'', can either be written
103to the start of the output file (denoted by the parameter
104\texttt{OutFile}), or written to a separate file from the list of
105detections. This second option is activated by the parameter
106\texttt{flagSeparateHeader}, and the information is written to the
107file given by \texttt{HeaderFile}.
108
109The most interesting part, however, is the list of detected
110objects. This list, an example of which can be seen in
111Appendix~\ref{app-output}, contains the following columns (note that
112the title of the columns depending on WCS information will depend on
113the details of the WCS projection: they are shown below for the
114Equatorial and Galactic projection cases).
115
116\begin{Lentry}
117\item[{Obj\#}] The ID number of the detection (simply the
118  sequential count for the list, which is ordered by increasing
119  velocity, or channel number, if the WCS is not good enough to find
120  the velocity).
121\item[{Name}] The ``IAU''-format name of the detection (derived from the
122  WCS position -- see below for a description of the format).
123\item[{X,Y,Z}] The ``centre'' pixel position, determined by the input
124  parameter \texttt{pixelCentre}.
125\item[{RA/GLON}] The Right Ascension or Galactic Longitude of the centre
126  of the object.
127\item[{DEC/GLAT}] The Declination or Galactic Latitude of the centre of
128  the object.
129\item[{VEL}] The mean velocity of the object [units given by the
130  \texttt{spectralUnits} parameter].
131\item[{w\_RA/w\_GLON}] The width of the object in Right Ascension or
132  Galactic Longitude (depending on FITS coordinates) [arcmin].
133\item[{w\_DEC/w\_GLAT}] The width of the object in Declination Galactic
134  Latitude [arcmin].
135\item[{w\_VEL}] The full velocity width of the detection (max channel
136  $-$ min channel, in velocity units [see note below]).
137\item[{F\_int}] The integrated flux over the object, in the units of
138  flux times velocity, corrected for the beam if necessary.
139\item[{F\_tot}] The sum of the flux values of all detected voxels.
140\item[{F\_peak}] The peak flux over the object, in the units of flux.
141\item[{S/Nmax}] The signal-to-noise ratio at the peak pixel.
142\item[{X1, X2}] The minimum and maximum X-pixel coordinates.
143\item[{Y1, Y2}] The minimum and maximum Y-pixel coordinates.
144\item[{Z1, Z2}] The minimum and maximum Z-pixel coordinates.
145\item[{Npix}] The number of voxels (\ie distinct $(x,y,z)$ coordinates)
146  in the detection.
147\item[{Flag}] Whether the detection has any warning flags (see below).
148\end{Lentry}
149
150Note that the \texttt{X, Y, Z} columns depend on the \texttt{pixelCentre}
151parameter. This is because there are three alternative ways of
152expressing the centre of a detection, which are all listed in the list
153of detections written to the output file. These alternatives are:
154\begin{Lentry}
155\item[{X\_av, Y\_av, Z\_av}] The average pixel value in each
156  axis direction \ie X\_av is the average of the $x$-values of all
157  pixels in the detection.
158\item[{X\_cent, Y\_cent, Z\_cent}] The centroid position, being
159  the flux-weighted average of the pixels.
160\item[{X\_peak, Y\_peak, Z\_peak}] The location of the pixel
161  containing the peak flux value.
162\end{Lentry}
163These are also written to the table in the output file, although not
164to the screen (as it would make the width of the table
165unwieldy). Similarly, the \texttt{F\_tot} column is only written to the output
166file, and not at run-time.
167
168The \texttt{Name} is derived from the WCS position. For instance, a
169source that is centred on the RA,Dec position 12$^h$53$^m$45$^s$,
170-36$^\circ$24$'$12$''$ will be given the name J125345$-$362412, if the
171epoch is J2000, or the name B125345$-$362412 if it is B1950. An
172alternative form is used for Galactic coordinates: a source centred on
173the position ($l$,$b$) = (323.1245, 5.4567) will be called
174G323.124$+$05.457. If the WCS is not valid (\ie is not present or does
175not have all the necessary information), the \texttt{Name, RA, DEC,
176VEL} and related columns are not printed, but the pixel coordinates
177are still provided.
178
179The velocity units can be specified by the user, using the parameter
180\texttt{spectralUnits} (enter it as a single string with no
181spaces). The default value is km/s, which should be suitable for most
182users. These units are also used to give the units of integrated
183flux. Note that if there is no rest frequency specified in the FITS
184header, the \duchamp output will instead default to using Frequency,
185with units of MHz.
186
187If the WCS is absent or not sufficiently specified, then all columns
188from \texttt{RA/GLON} to \texttt{w\_VEL} will be left blank. Also,
189\texttt{F\_int} will be replaced with the more simple \texttt{F\_tot}.
190
191The \texttt{Flag} column contains any warning flags, such as:
192\begin{itemize}
193\item \textbf{E} -- The detection is next to the spatial edge of the image,
194meaning either the limit of the pixels, or the limit of the non-BLANK
195pixel region.
196\item \textbf{S} -- The detection lies at the edge of the spectral region.
197\item \textbf{N} -- The total flux, summed over all the (non-BLANK)
198pixels in the smallest box that completely encloses the detection, is
199negative. Note that this sum is likely to include non-detected
200pixels. It is of use in pointing out detections that lie next to
201strongly negative pixels, such as might arise due to interference --
202the detected pixels might then also be due to the interference, so
203caution is advised.
204\end{itemize}
205
206\secC{Other results lists}
207
208Two additional results files can also be requested. One option is a
209VOTable-format XML file, containing just the RA, Dec, Velocity and the
210corresponding widths of the detections, as well as the fluxes. The
211user should set \texttt{flagVOT = true}, and put the desired filename
212in the parameter \texttt{votFile} -- note that the default is for it
213not to be produced. This file should be compatible with all Virtual
214Observatory tools (such as Aladin%
215\footnote{%Aladin can be found on the web at
216\href{http://aladin.u-strasbg.fr/}{http://aladin.u-strasbg.fr/}}
217or TOPCAT\footnote{%Tool for OPerations on Catalogues And Tables:
218\href{http://www.star.bristol.ac.uk/~mbt/topcat/}%
219{http://www.star.bristol.ac.uk/~mbt/topcat/}}). The second option is
220an annotation file for use with the Karma toolkit of visualisation
221tools (in particular, with \texttt{kvis}). This will draw a circle at
222the position of each detection, scaled by the spatial size of the
223detection, and number it according to the Obj\# given above. To make
224use of this option, the user should set
225\texttt{flagKarma = true}, and put the desired filename in the parameter
226\texttt{karmaFile} -- again, the default is for it not to be produced.
227
228As the program is running, it also (optionally) records the detections
229made in each individual spectrum or channel (see \S\ref{sec-detection}
230for details on this process). This is recorded in the file given by
231the parameter \texttt{LogFile}. This file does not include the columns
232\texttt{Name, RA, DEC, w\_RA, w\_DEC, VEL, w\_VEL}. This file is
233designed primarily for diagnostic purposes: \eg to see if a given set
234of pixels is detected in, say, one channel image, but does not survive
235the merging process. The list of pixels (and their fluxes) in the
236final detection list are also printed to this file, again for
237diagnostic purposes. The file also records the execution time, as well
238as the command-line statement used to run \duchamp. The creation of
239this log file can be prevented by setting \texttt{flagLog = false}
240(which is the default).
241
242\secB{Graphical output}
243\secC{Spectral plots}
244
245As well as the output data file, a postscript file is created that
246shows the spectrum for each detection, together with a small cutout
247image (the 0th moment) and basic information about the detection (note
248that any flags are printed after the name of the detection, in the
249format \texttt{[E]}). If the cube was reconstructed, the spectrum from
250the reconstruction is shown in red, over the top of the original
251spectrum. The spectral extent of the detected object is indicated by
252two dashed blue lines, and the region covered by the ``Milky Way''
253channels is shown by a green hashed box. An example detection can be
254seen below in Fig.~\ref{fig-spect}.
255
256\begin{figure}[t]
257\begin{center}
258\includegraphics[width=\textwidth]{example_spectrum}
259\end{center}
260\caption{\footnotesize An example of the spectral output. Note several
261  of the features discussed in the text: the red lines indicating the
262  reconstructed spectrum; the blue dashed lines indicating the
263  spectral extent of the detection; the green hashed area indicating
264  the Milky Way channels that are ignored by the searching algorithm;
265  the blue border showing its spatial extent on the 0th moment map;
266  and the 15~arcmin-long scale bar.}
267\label{fig-spect}
268\end{figure}
269
270The spectrum that is plotted is governed by the
271\texttt{spectralMethod} parameter. It can be either \texttt{peak} (the
272default), where the spectrum is from the spatial pixel containing the
273detection's peak flux; or \texttt{sum}, where the spectrum is summed
274over all spatial pixels, and then corrected for the beam size.  The
275spectral extent of the detection is indicated with blue lines, and a
276zoom is shown in a separate window.
277
278The cutout image can optionally include a border around the spatial
279pixels that are in the detection (turned on and off by the
280\texttt{drawBorders} parameter -- the default is \texttt{true}). It
281includes a scale bar in the bottom left corner to indicate size -- its
282length is indicated next to it (the choice of length depends on the
283size of the image).
284
285There may also be one or two extra lines on the image. A yellow line
286shows the limits of the cube's spatial region: when this is shown, the
287detected object will lie close to the edge, and the image box will
288extend outside the region covered by the data. A purple line, however,
289shows the dividing line between BLANK and non-BLANK pixels. The BLANK
290pixels will always be shown in black. The first type of line is always
291drawn, while the second is governed by the parameter
292\texttt{drawBlankEdges} (whose default is \texttt{true}), and
293obviously whether there are any BLANK pixel present.
294
295\secC{Spatial maps}
296
297\begin{figure}[!t]
298\begin{center}
299\includegraphics[width=\textwidth]{example_moment_map}
300\end{center}
301\caption{\footnotesize An example of the moment map created by
302  \duchamp. The full extent of the cube is covered, and the 0th moment
303  of each object is shown (integrated individually over all the
304  detected channels). The purple line indicates the limit of the
305  non-BLANK pixels.}
306\label{fig-moment}
307\end{figure}
308
309Finally, a couple of images are optionally produced: a 0th moment map
310of the cube, combining just the detected channels in each object,
311showing the integrated flux in grey-scale; and a ``detection image'',
312a grey-scale image where the pixel values are the number of channels
313that spatial pixel is detected in. In both cases, if
314\texttt{drawBorders = true}, a border is drawn around the spatial
315extent of each detection, and if \texttt{drawBlankEdges = true}, the
316purple line dividing BLANK and non-BLANK pixels (as described above)
317is drawn. An example moment map is shown in Fig.~\ref{fig-moment}.
318The production or otherwise of these images is governed by the
319\texttt{flagMaps} parameter.
320
321The moment map is also displayed in a PGPlot XWindow (with the
322\texttt{/xs} display option). This feature can be turned off by
323setting \texttt{flagXOutput = false} -- this might be useful if
324running \duchamp on a terminal with no window display capability, or
325if you have set up a script to run it in a batch mode.
326
327The purpose of these images are to provide a visual guide to where the
328detections have been made, and, particularly in the case of the moment
329map, to provide an indication of the strength of the source. In both
330cases, the detections are numbered (in the same sense as the output
331list and as the spectral plots), and the spatial borders are marked
332out as for the cutout images in the spectra file. Both these images
333are saved as postscript files (given by the parameters
334\texttt{momentMap} and \texttt{detectionMap} respectively), with the
335latter also displayed in a \textsc{pgplot} window (regardless of the
336state of \texttt{flagMaps}).
Note: See TracBrowser for help on using the repository browser.