next up previous contents
Next: Chandra Images
Up: Chandra News
Previous: CXC Project Manager's Report

CIAO, at your service!

CIAO (Chandra Interactive Analysis of Observations) is the name for the suite of tools and applications developed at the CXC for the analysis of data from the Chandra X-Ray Observatory and other missions. For the linguists among us, the word ``ciao" comes from an old expression in the Venetian language, ``s'ciavo", that means ``I am your servant".

CIAO 1.0 was released for the first time publicly in October 1999 and the present release, CIAO 1.1, has been available since December 1999. We plan to have future major releases approximately on a yearly basis, with patches releases when needed (the current May 2000 patch is CIAO 1.1.3). The next release, CIAO 2.0, is planned for the fall 2000 and will highlight grating data analysis. CIAO is currently available for selected Solaris and Linux operating systems; CIAO 2.0 and above will also be available for the DecAlpha operating system.

Together with CIAO, a set of Analysis Reference Data (ARD) is also distributed: these are the calibration files necessary for the analysis of Chandra observations. As the calibration work progresses, new sets of calibration data will be available from the CIAO Data analysis page at:

There are several innovative aspects of CIAO. All axes are treated equally, with no built in assumptions toward space, time, spectrum or any other variable; the user has the choice of a command line or a graphics-oriented approach in most tools and applications; the syntax is uniform across the entire CIAO system; and, even more important, the use of the CXC ``Data Model" I/O layer results in:

(a) file-format independence: users have the ability of reading and writing files in FITS, QPOE, and IMH format;

(b) row and column filtering and binning can be applied to input files for *all* CIAO tools and applications avoiding the need to generate subsidiary data files on disk;

(c) all filters are recorded in the ``data subspace" of output files which is then recognized in the subsequent analysis.

CIAO, in its current release, includes tools which are instrument specific (for ACIS, HRC and grating analysis) and tools which are for generic data analysis (data manipulation, source detection, transforms & convolutions, and timing) an application for modelling and fitting (Sherpa), and GUI-based applications (Prism and Chips, plus Firstlook, ToolAgent and FilterWindow in beta version).

We will give here a brief description of each application and the sets of tools, referring the interested reader to the CIAO documentation available online:

or the ``Data Analysis" button from the top Chandra science page.

CIAO Tools

The CIAO 1.1 tools can be divided into five broad categories:

(1) instrument specific tools (e.g.acis_format_events, acis_process_events, hrc_process_events, tg_resolve_events, etc.).

These are some of the key tools used by the standard data processing (aka ``the pipeline") to produce the Chandra data products that populate the Chandra archive and are released to the users. One of the main interactive uses of these tools is for the correction of existing data products due to changes and improvements in the calibration files with respect to the original processing.

(2) data manipulation tools (e.g. dmcopy, dmlist, dmextract, dmmerge, dmregrid, dmstat, etc.).

These include tools that allow a variety of complex operations on event lists and images. Examples are: listing, filtering, binning, merging, calculating statistics, sorting, extracting pulse height spectra and lightcurves, constructing GTIs, etc. These tools represent the ``core" of the data analysis tools. Through the use of a common interface library called the CXC Data Model, they allow users to rapidly perform on-the-fly filtering and binning operations that previously required dedicated software packages. Details about the CXC Data Model can be found at:

(3) detect tools.

These include tools to run source detection using three different algorithms: classic sliding cell (celldetect), wavelet based source detection (wavdetect) and Voronoi tesselation and percolation source detection (vtpdetect). Each tool is optimized for different kinds of sources (point source and extended) and background regimes. A detailed descriptions of the tools interfaces and the algorithms can be found in the Detect Manual at:

(4) response tools.

These include the tools needed to generate basic calibration files such as ARF (mkarf and mkgarf) and RMF (mkrmf), PSF (mkpsf) and exposure maps (mkinstmap, mkexpmap) for imaging and grating observations.

(5) transform and convolution tools.

These include, at present, aconvolve to perform a convolution either in the map or Fourier plane, with functions like a box, a Gaussian, a tophat or a user supplied file, and csmooth, a set of smoothing algorithms which currently includes only asmooth, an adaptive smoothing code. This tool is popular for image display since it brings out extended source structure without blurring out point sources.


Sherpa is the generalized modelling and fitting engine of the CIAO software. It enables the user to fit models to a wide variety of multi-dimensional data and in particular to Chandra data. Sherpa may be used in the traditional X-ray astronomy fashion to fit pulse height spectra, to fit spatial images or to model simultaneously the spectral and timing or spatial dimensions of a source. Sherpa can also fit lines in the grating spectra. In fact any type of FITS, QPOE and ASCII data can be modeled within Sherpa including simultaneous fitting of optical and X-ray data.

In general Sherpa allows the user to fit:

$\bullet$ data in 1-D, 2-D or more;

$\bullet$ with arbitrary axes;

$\bullet$ with a number of built-in statistical tests;

$\bullet$ using a library of optimization methods.

Sherpa contains a library of built-in source models pertinent to CXO data (including the XSPEC source model library). Its model language allows the user to construct models from simple source definitions to complex structures with algebraically linked and nested parameters. A choice of optimization methods such as Powell, Levenberg-Marquardt, simplex, simulated annealing, Monte Carlo, grid and more allows for efficient search over a large parameter space. A default $\chi ^2$ statistic, its modification for low counts data as well as Poisson maximum likelihood statistics are included in Sherpa.

The current release allows for the instrument models to be included in the standard spectral analysis of X-ray data, e.g. default redistribution matrix file (RMF) and auxiliary file (ARF). It also allows for simple convolution with the 1D kernels, (Gaussian, Hat and Box functions) from the convolution library (part of CIAO). In the case of 2-D image analysis PSF information can be input as an image file and then the convolution (sliding kernel or FFT) with the source model and the PSF image is performed during the fitting process. In addition the convolution with the default 2D kernels included in the TCD library is possible. An example of a 2D fitting is illustrated in Fig 9.

Figure 9: This is an example of 2D analysis done with Sherpa and visualized with Chips. The upper panel shows a surface plot of Chandra 2D image data. The lower panel shows the model surface plot. The data were modeled in Sherpa with several 2D Gaussian functions representing sources and a polynomial function for the background.


ChIPS-Chandra Imaging and Plotting System

ChIPS offers an intuitive language interface for plotting operations commonly found within most visualization software. The ChIPS language utilizes a consistent and modern ``object-like" syntax, which simplifies many operations and provides several useful extensions like multi-level undo and redo, and sophisticated display area manipulations. Should the user prefer the original command language, however, a ``native" mode is supported wherein command input is passed directly through to the underlying engine, sans interpretation by the ChIPS parser.

The ChIPS language is utilized within all CIAO applications which need a visualization interface, for example Sherpa, Prism, FilterWindow, and of course the ChIPS application parser itself. Engine-specific interfaces currently exist for the SM plotting package, and for both the SAOtng and SAO/DS9 imagers (all three of which are bundled within CIAO).


Prism is a format-independent (Data Model based) file browser, which provides an attractive alternative to existing file viewers in terms of performance, footprint, ease of use, breadth of supported filetypes, and tool integration. Prism presents the most crucial information within one main window, subdivided into scrolling regions that display extensions, header keywords, and data, with hooks provided to generate quicklook ChIPS plots and images by simply selecting the desired column(s) and/or row(s) in the data matrix. Complex column structures are supported naturally, and in most cases the contents of arbitrarily large arrays can be expanded for viewing in only seconds. Full editing capability is currently being added. Examples of a spectrum, a Prism window and a quicklook ChIPS plot generated from it are illustrated in Figs. 10, 11 and 12.

Figure 10: A DS9 display of a level 2 Chandra event file. The figure shows a grating observation (ACIS-S + HETG) with the characteristic ``X-shaped" dispersed spectra. The overlay represents the spectral extraction region derived using the CIAO tool tg_create_mask.


Figure 11: A Prism window showing an insider view of an extracted grating spectrum. The columns highlighted (BIN_LO and COUNTS) are used to generate the quicklook plot in fig. 12


Figure 12: ChIPS plot generated from the Prism window


The following GUI-based applications were released in CIAO 1.1 in beta version and improvements are planned for future releases.


FirstLook is the starting point for observational analysis and it offers an intuitive and efficient means of inspecting the data products of Chandra observations. From the FirstLook window a couple of mouse clicks will generate an image, a spectrum, or lightcurve for each dataset without a detailed knowledge of the file format, file name, file structure etc. The data products relative to an observation can be displayed in hierarchical form, and prism (see above) may be launched to browse the files.

Filter Window

The filtwin application is designed to be a focal point of CIAO GUI analysis sessions. As data are manipulated via filtering, binning, region selection, plotting, and fitting, filtwin iteratively notes the various applied filters, in essence recording ``the state of your data". A typical thread might begin by generating an image in DS9 from firstlook, which in turn launches filtwin. Defining the source by laying down region markers, one click updates the filtwin display to reflect the marked regions, and the information could then be passed back to firstlook to generate a new source spectrum or lightcurve.

Additional information about CIAO, including download instructions, bugs and FAQs and examples of scientific threads can be found at

Questions about CIAO and bug reports should be addressed to the CXC Help Desk at -> HELP_DESK

- Antonella Fruscione and Aneta Siemiginowska on behalf of the CIAO development team.

next up previous contents
Next: Chandra Images
Up: Chandra News
Previous: CXC Project Manager's Report