SPEX and OSPEX
Written: Richard.Schwartz@gsfc.nasa.gov, 13 Aug. 1997
Updated: email@example.com, 26-Mar-2004
OSPEX is the new object-oriented, next generation SPEX. Please read about
OSPEX in the html document in this directory - ospex_explanation.htm. OSPEX was
released in March, 2004.
SPEX and OSPEX are both distributed under SSW packages spex. They share the same doc directory, and the same setup file (i.e. the $SSW/packages/spex/setup/setup.spex_env sets environment variables for both SPEX and OSPEX). The routines for the two versions are kept separate though - the original spex modules are in the directory $SSW/packages/spex/idl/original_spex, and the new ospex modules are in the directory $SSW/packages/spex/idl/object_spex.
The SPEX package provides a uniform interface suitable for the X-ray spectral analysis of a number of solar (or other) instruments in the X and Gamma Ray energy ranges. The package is suitable for any data stream, which can be placed in the form of response vs interval, where the response is usually a counting rate (spectrum) and the interval is normally an accumulation over time. Together with an algorithm, which can be used to relate a model input spectrum to the observed response, generally a response matrix, the data set is amenable to analysis with this package. Currently the data from a number of instruments and missions have file readers, database algorithms, and matrix reader/generators that are included within the SPEX package. These are from SMM, HXRBS, GRS Gamma, GRS X1, GRS X2, from Yohkoh, HXT, HXS, GRS, SXT, from CGRO, BATSE SPEC, BATSE LAD, from WIND, TGRS, the HIREX balloon borne Ge detector, the PIN on NEAR, HESSI, and HXRS. The author welcomes contributions from other users for incorporation into the SPEX package but cannot guarantee future compatibility with the current implementation. There are aspects of the proceduresí argument passing that are not elegant and many aspects of this and the variables inspex_commons.pro can be expected to change over the next few years. However, you can expect that the functionality of a routine like spex_current(), which extracts variables from the common block, will be preserved even if the variables are extracted from something else. The author provides this package as is without any guarantees but in the hope that it can provide a basic interface into many solar x-ray spectrometer data sets from the past and far into the future.
To analyze a data set for a particular instrument, you must include that instrument in yourSolarSoftWare (SSW) installation. SPEX itself has no setup.env file. You must also include the Xray package in your installation, all of the fitting functions known to SPEX are found there.
More documentation for SPEX is located in the $SSW/packages/spex/doc directory. There are several .txt files. The series spex_manual*.txt documents the widget version of the interface in 1995, it was written to help users analyze BATSE data. Even if the widget interface is not to be used, these descriptions provide a valuable overview of and insight into the procedures. Of more immediate use is the file,spex_help_19980210.txt, which comments an interactive session at the command line, as well as documents the user commands and parameters.