Next: The OPUS Pipeline Applications
Previous: Overview of the Ftools Software Development Philosophy
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

Design and Implementation of CIA, the ISOCAM Interactive Analysis System

S. Ott,1 A. Abergel,2 B. Altieri,1 J-L. Augueres,3 H. Aussel,3 J-P. Bernard,2 A. Biviano,1,4 J. Blommaert,1 O. Boulade,3 F. Boulanger,2 C. Cesarsky,5 D. A. Cesarsky,2 A. Claret,3 C. Delattre,3 M. Delaney,1,6 T. Deschamps,3 F-X. Desert,2 P. Didelon,3 D. Elbaz,3 P. Gallais,1,3 R. Gastaud,3 S. Guest,1,7 G. Helou,8 M. Kong,8 F. Lacombe,9 J. Li,8 D. Landriu,3 L. Metcalfe,1 K. Okumura,1 M. Perault,2 A. M. T. Pollock,1 D. Rouan,9 J. Sam-Lone,3 M. Sauvage,3 R. Siebenmorgen,1 J-L. Starck,3 D. Tran,3 D. Van Buren,7 L. Vigroux,3 and F. Vivares2

1ISO Science Operations Centre, Astrophysics Division of ESA, Villafranca del Castillo, Spain

2IAS, CNRS, University of Paris Sud, Orsay, France

3CEA, DSM/DAPNIA, CE-Saclay, Gif-sur-Yvette, France

4Istituto TESRE, CNR, Bologna, Italy

5CEA, DSM, CE-Saclay, Gif-sur-Yvette, France

6UCD, Belfield, Dublin, Ireland

7RAL, Chilton, Didcot, Oxon, England

8IPAC, JPL and Caltech, Pasadena, CA, USA

9DESPA, Observatoire de Paris, Meudon, France



This paper presents an overview of the Interactive Analysis System for ISOCAM (CIA).gif With this system ISOCAM data can be analysed for calibration and engineering purposes, the ISOCAM pipeline software validated and refined, and astronomical data processing can be performed. The system is mainly IDL-based but contains FORTRAN, C, and C++ parts for special tasks. It represents an effort of 15 man-years and is comprised of over 1000 IDL and 200 FORTRAN, C, and C++ modules.


1. Introduction

ESA's Infrared Space Observatory ( ISO) was successfully launched on November 17th, 1995.gif ISO is a three-axis-stabilised satellite with a 60-cm diameter primary mirror (Kessler et al. 1996; Maldari et al. 1996). Its four instruments (a camera, ISOCAM, an imaging photo-polarimeter, and two spectrometers) operate at wavelengths 2.5-240µm at temperatures of 2-8K.

ISOCAM takes images of the sky in the wavelength range 2.5-18µm (Cesarsky et al. 1996). It features two independent 32×32 pixel detectors: the short-wavelength channel (2.5-5.5µm), and the long-wavelength channel (4-18µm). A multitude of filters and lenses enable the observer to perform measurements at different wavelengths, with different fields of view or polarizers.

2. Requirements and Constraints

The requirements on CIA were, in decreasing order of importance:

  1. to calibrate ISOCAM,

  2. to perform fast data reduction to assess the ISOCAM performance during the Performance Verification phase of ISO,

  3. to monitor the health of ISOCAM,

  4. to provide the means to perform any sort of investigation requested for problem diagnostics,

  5. to assess the quality of ISOCAM pipeline data products,

  6. to debug, validate and refine the ISOCAM pipeline, and

  7. to perform astronomical data-processing of ISOCAM data.

External constraints were the extremely tight schedule (see § 4) and the operating system. For historical reasons, VAX/VMS was chosen as operating system for the pipeline. It was also decided that data files within the processing environment be in a VAX-specific variant of FITS. Therefore, in order to stay as close as possible to the ISOCAM pipeline, the operational CIA version had to run under VMS. To achieve sufficient performance, it was decided to opt for VMS/Alpha instead of a classical VAX operating system, and accept the minor porting efforts required.

3. Design and Evolution

Given the time constraints and the team-structure, it was decided to re-use the existing IDL experience and code as much as possible. Therefore IDL (V3.6) and high level languages (C, C++) for special IA applications and FORTRAN (programming language for the pipeline) were chosen.

In order to be able to meet the schedule, it was decided to break the development down into three steps: a mimimum system, covering requirements 1-4; an operational system, covering requirements 1-6; and the final astronomical data-processing system, covering all requirements listed in the previous section. The core system was intended for expert users, having only a very limited use of graphical user interfaces for display purposes.

Standardized module headers were designed to provide help to the users. Their contents feed into

For the full astronomical data-processing system, a UNIX version tuned to the needs of astronomers was introduced, together with more user-friendly, widget-based applications.

4. Schedule and Cost


The development of CIA began in June 1994 and followed standard software engineering practice (ESA PSS-05). User requirements were consolidated in September 1994 and the first version of the architectural design document agreed in November 1994. The minimum system was completed to meet the target date for IA readiness in April 1995, and the operational system in November 1995 prior to the launch of ISO. Since then, work has continued for the astronomical data-processing system, the next version is expected to be released in December 1996.

Currently, the system is comprised of over 1000 IDL modules totalling over 210,000 lines, around 200 FORTRAN files taken from the pipeline processing system, and around 10 FORTRAN, C, and C++ files for specialized (mainly cpu-intensive) applications.

Around 15 man-years have been spent in the development of the IA core system, excluding the time for algorithmic research. For comparison, 30 man-years went into the calibration of ISOCAM and 5 man-years into ISOCAM related pipeline processing. This amounts to around 3% of the overall cost of ISO Science operations or 0.4% of the total ISO cost to completion.

5. Architecture and Design

A quasi-object-oriented approach was taken, with functions communicating via standardized data structures. The same data structures are used by the pipeline, calibration procedures, and astronomical data analysis. This commonality improves considerably the speed of algorithmic development within CIA.

Figure: Data Flow and Architecture. Original PostScript figure (5kB).

(Science CAM Data) are self-contained entities, holding all data of an ISOCAM state.gif They are generic, i.e., independent from the observation mode and can be re-arranged to suit all needs.

(Calibration Data Set) are self-contained entities, holding the calibration results. They are used directly within CIA, or transformed into calibration files, accessed by the pipeline.

(Science Analysed Data) are similar to SCDs, but hold the results either from Auto Analysis (AAR), or following an analysis by Interactive Analysis.

SCDs, CDSs and SADs are implemented as complex IDL data structures using pointers and therefore need dedicated access functions.

(Prepared Data Structures) are self-contained entities, holding the data currently recognized as relevant for data reduction and their result for an ISOCAM observation. Their flavour depends on their purpose, determined by the ISOCAM observation mode. PDSs are implemented as IDL structures.


Cesarsky, C., et al. 1996, A&A, 315, 32

Delaney, M. ed., ISOCAM Interactive Analysis User's Manual, ESA Document

ESA Software Engineering Standards, ESA Document, Reference PSS-05

Kessler, M., et al. 1996, A&A, 315, 27

Maldari, P., Riedinger, J., & Estaria, P. 1996, ESA Bulletin, number 86

Siebenmorgen, R., et al. ISOCAM Data User's Manual, ESA Document, Reference SAI/95-221/DC

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

Next: The OPUS Pipeline Applications
Previous: Overview of the Ftools Software Development Philosophy
Up: Software Systems
Table of Contents - Index - PS reprint