About Chandra Archive Proposer Instruments & Calibration Newsletters Data Analysis HelpDesk Calibration Database NASA Archives & Centers Chandra Science Links

Skip the navigation links
Last modified: 26 September 2006

URL: http://cxc.harvard.edu/ciao3.4/slang/functions/modules.html
Hardcopy (PDF): A4 | Letter

Modules for Scientific Analysis


The primary motivation for embedding an interpreter such as S-Lang into CIAO is to provide the user with the means to extend the software in ways that were not anticipated by the designers. Modules extend this capability to libraries by providing access to libraries via the scripting language. A module is a shared object that is dynamically linked into a S-Lang application during runtime via the import statement.

There are a number of S-Lang modules that are distributed with the CIAO software package and are essential to its operation. Other modules not distributed with CIAO, but can run from within it as well as standalone. A list of available modules is provided in the following table; there is an explanation of the different columns located at the end of the table.

Module Description Bundled with CIAO? Depends On
caldb The interface between the S-Lang interpreter and the CXC caldb library. The caldb library functions are used in CIAO in the acis_fef_lookup tool, which is written in S-lang. Yes CIAO
cfitsio Generic FITS input/output functions. Yes CFITSIO
chips The plotting package of CIAO which can be used to create plots from S-Lang. The S-Lang programming language can also be used to manipulate or create data for plotting. Yes CIAO
group The interface between the S-Lang interpreter and the CXC group library, which bins histogram data based on various user-selected rules. Yes CIAO
GUIDE GUIDE can be used to store and retrieve models and model parameters. One of it's more advanced applications is in identifying spectral lines to derive physical conditions and differential emission measures. Yes CIAO
histogram Allows for the creation and manipulation of one- and two-dimensional histograms. No (none)
isis ISIS is a fully programmable spectral analysis system designed to facilitate the interpretation and analysis of high resolution X-ray spectra. ISIS also supports analysis of CCD resolution spectra and a number of other applications. Yes CFITSIO, PGPLOT
paramio The interface between the S-Lang interpreter and the CXC parameter library. Yes CIAO
pixlib The interface between the S-Lang interpreter and the CXC pixlib library. Yes CIAO
pvm PVM (Parallel Virtual Machine) is a software package which permits a heterogeneous collection computers connected by a network to be used as a single large parallel computer. The S-Lang pvm module provides a S-Lang interface to PVM. No PVM
region The interface between the S-Lang interpreter and the CXC region library. Yes CIAO
Sherpa Sherpa provides a loadable module, which can be imported into other S-Lang applications at run-time (e.g., ChIPS, slsh). The module has many functions that provide access to datasets and invoke Sherpa functions. See the documentation on sherpa-module for a list of Sherpa/S-Lang module functions. Yes CIAO
SLglade Used in conjunction with SLgtk, it allows you to design your GUIs using Glade (a GTK+ user interface builder), save them in Glade's XML format, and then generate your S-Lang script's graphical interface directly from the XML at runtime. No Glade
SLgsl The GNU Scientific Library, or GSL, is a well-written and well-supported C library that contains a vast number of numerical routines. The GSL module makes many of those functions available to any application that makes use of the S-Lang interpreter's ability to dynamically load interpreter modules. No GSL
SLgtk Binds the GIMP Toolkit, also known as GTK, to the S-Lang scripting language. It provides an importable module which makes most of GTK and its constituent libraries callable directly from S-Lang scripts. No GTK
SLxpa SLxpa binds the XPA library to the S-Lang language. The SLxpa package adds significant enhancements to the original bindings of the CIAO xpa module. No XPA
stackio The interface between the S-Lang interpreter and the CXC stack library. Yes CIAO
varmm The Varmm library (Variable, Math and Macro) provides a number of functions for reading data from files (both ASCII and FITS formats), and assigning them to variables. In addition to Varmm, there are many I/O functions within S-Lang itself which can also be used. Yes CIAO
xpa The interface between the S-Lang interpreter and the XPA library. Yes CIAO
xspec An ISIS-specific module which provides an interface to all the xspec spectral models including additive and multiplicative models, convolution models, and table models. This interface is primarily intended to support using the ISIS fitting engine to fit data with xspec spectral models. No HEAsoft

Explanation of Table Columns

Module
The name of the module. It is linked to a help file or webpage which provides further information, when available.

Description
A brief description of the module.

Bundled with CIAO?
"Yes" if the module comes with the CIAO package; "No" if it needs to be downloaded separately. The Module column is linked to documentation that explain how to obtain the module.

Depends On
If the module depends on the CIAO installation, e.g. because it needs CIAO libraries, "CIAO" is noted in this column. Otherwise, any necessary external libraries are listed.

Hardcopy (PDF): A4 | Letter
Last modified: 26 September 2006


The Chandra X-Ray Center (CXC) is operated for NASA by the Smithsonian Astrophysical Observatory.
60 Garden Street, Cambridge, MA 02138 USA.    Email: cxcweb@head.cfa.harvard.edu
Smithsonian Institution, Copyright © 1998-2004. All rights reserved.