Function

XSPEC11

XSPEC12

Comments

Data

Support for SF, Einstein FITS, OGIP Type I and partial support for OGIP Type II files

Dynamically (runtime) extensible for new spectral data formats. Full support for OGIP Type I & II. Module supporting analysis of INTEGRAL/SPI data.

New data (response, background, etc) formats and functions may be added for future missions by developers.

Response

Single response (RMF/ARF) pairs in 1:1 correspondence with spectral data.

Support for linear combinations of RMFs forming a response (INTEGRAL).
Referencecounted RMF arrays permitting data sharing for greater speed INTEGRAL and timeseries problems

XSPEC12 allows one RMF (large) to be used by multiple ARFs
Responses are not reread after when channels are noticed after an ignore command, or when restoring detector response after using a dummy

Model Definition

One model with multiple components convolved through a single detector response.
Both XSPEC 9 and XSPEC10 model entry (algebraic notation). Single nesting level definitions

Multiple separate models can be convolved through simultaneously through distinct response matrices
Switchable named models
XSPEC10 syntax only supported.
Models with indefinite nesting depth supported.

Internal structure facilitates adding new models at runtime (see local models description)
Initial release may not yet support the "switchability"

Parameters

Model fitting parameters with linear relationship links between two parameters

New parameter types added for convenience to user.
Polynomialvalued links allowed between multiple parameters

Can be extended to algebraic/transcendental value links.

Fit Methods

Levenberg Marquadt
Annealing
Genetic
Minuit

Dynamically extensible list of fitting methods.
Initial release implements Levenberg Marquadt and Minuit/Migrad only.

New methods/statistics can be added by runtime loading of module packages.

Statistics

ChiSquare
Cash (C) Statistic

Dynamically extensible list of statistics.
Initial release implements ChiSquare, Cash (C) Statistic, and L Statistic

Efficiency

Single precision computations in optimized fortran 77

Double precision calculations in optimized C++
One convolution operation less per numerical derivative calculated.

XSPEC12 should perform about as well as XSPEC11 in general and should be faster in specific cases

Local Models

Local models supported in single precision fortran77, enabled in fixed directory determined by user environment

Local models supported in fortran77 (single and double precision), C, and C++. Location of models can be overriden by user at command prompt.

Model development can be performed from within xspec12 by iteratively reloading models and plotting.

Plot Capabilities

PLT/PGPLOT graphics library bound tightly to modeling code

Plottingpackageindependent layer insulates problem domain code from details of the graphics package, allowing future options for graphical "front end"
Initial release implements PLT/PGPLOT for full backward compatibility. Minor extensions in the set of plots available.

New driver for PGPLOT using PS rather than vector drawn fonts is at late stages of development (when completed can work with either package).

User Interface

tcl with gnu readline capabilities bound to problem domain code. tclout command gives access to problem domain variables from tcl

tcl with gnu readline independent of problem domain code (tclout command similar to XSPEC11).
switchable from command line to GUI mode.

GUI in early stages of development.
May be able to support alternate scripting interfaces in future.

Docs

Separate documentation in ASCII text for a) VMS style help system and b) LaTeX used to generate HTML version

Single documentation in Microsoft Word using MathType equation editor.
Manual and online help in PDF format supporting both versions from the same master document.

