XSPEC12: Object Oriented X-Ray Data Analysis Software
Design Problem Scripting Compatibility

Since its inception in 1983 XSPEC has continued to be a mission independent general purpose analysis environment for X-Ray spectra. The decision was made in 1998 to re-engineer it using methods of modern computer science in order for it to be able to continue fulfilling that role. The program's internal design, layout, and data structures have largely been rewritten in ANSI C++ using object oriented design techniques, generic programming techniques, and design patterns.

The new program offers greatly enhanced maintainability and flexibility, new science capabilities, and a superset of the XSPEC11  syntax (with the exception of features that were declared to be deprecated in XSPEC10 or before).

At the same time, the core of XSPEC's calculations have been retained. The models library,written almost exclusively in fortran77, has been incorporated intact as has the default numerical fitting algorithm (an implementation of Levenberg-Marquadt).

This site explains some of the design details, exhibits the new static internal structure of the code (class diagrams), the new science capabilites and describes the new extensibility. We also point to the possibilities for future development.

Please send comments, questions, and bug reports to xspec12@legacy.gsfc.nasa.gov

Site Developed & Maintained by Ben Dorman and Craig Gordon

HEASARC Software Development, Laboratory For High Energy Astrophysics,

Code 660.1, NASA/GSFC, Greenbelt MD 20771

[Redesign Home]
[Design]
[Problem]
[Scripting]
[Compatibility]

Xspec Xspec Home Page


HEASARC Home | Observatories | Archive | Calibration | Software | Tools | Students/Teachers/Public

Last modified: Wednesday, 02-Mar-2011 11:07:19 EST