Previous: The AXAF Ground Aspect Determination System Pipeline
Up: AXAF
Table of Contents - Index - PS reprint - PDF reprint
Astronomical Data Analysis Software and Systems VI
ASP Conference Series, Vol. 125, 1997
Editors: Gareth Hunt and H. E. Payne
S. Doe, A. Siemiginowska, W. Joye, and J. McDowell
Smithsonian Astrophysical Observatory, 60 Garden Street, MS 81,
Cambridge, MA 02138
Abstract:
As part of the AXAF Science Center (ASC) Data Analysis Environment, we
will provide to the astronomical community a Fitting Application. We
present a design of the application in this paper. Our design goal is
to give the user the flexibility to use a variety of optimization
techniques (Levenberg-Marquardt, maximum entropy, Monte Carlo, Powell,
downhill simplex, CERN-Minuit, and simulated annealing) and fit
statistics (, Cash, variance, and maximum likelihood); our
modular design allows the user easily to add their own optimization
techniques and/or fit statistics. We also present a comparison of the
optimization techniques to be provided by the Application. The high
spatial and spectral resolutions that will be obtained with AXAF
instruments require a sophisticated data modeling capability.
We will provide not only a suite of astronomical spatial and spectral
source models, but also the capability of combining these models into
source models of up to four data dimensions (i.e., into source
functions ). We will also provide tools to create instrument
response models appropriate for each observation.
Fitting models to data is a vital part of the analysis of astronomical
data. As part of the ASC Data Analysis Environment, we have designed
a Fitting Application. Although other fitting packages (e.g.,
XSPEC; see Arnaud 1996) exist, the high resolution and sensitivity of
AXAF data present new challenges to the modeling and fitting of data;
fitting models of the form is a requirement for our
software, and so we have been compelled to design our own Fitting
Application. This paper presents a design of the flight version
(Release 3) of our Fitting Application. We also discuss a preliminary
test of the performance of the X-Ray Calibration Facility (XRCF),
Release 1 version of our fitting software (Doe, Conroy, & McDowell 1996).
The design of our Fitting Application is shown in Figure 1.
Figure: The Fitting Application.
Original PostScript figure (11kB).
The Application
is controlled through a GUI, the Fit Monitor/Navigator. (The modules
and tools discussed below may also be run from outside, without invoking the
Navigator.) As a Monitor,
it monitors the progress of the Fitting Engine through parameter space,
and can halt the engine when necessary. As a
Navigator, it allows the user to invoke the following utilities:
- Fitting Engine. This is the main component, responsible
for searching parameter space.
Given data, a
parameterized model, and some convergence criteria, the Engine
calculates predicted data values, compares them to the observed data,
and searches parameter space for the parameters that yield a ``best
fit.'' The history of the search is recorded in a history file; the
``best predicted data'' are also calculated with the best-fit
parameters. The Engine supports a variety of fit optimization
algorithms, fit statistics, and convergence criteria.
- Model Generator and Predictor. The Model Generator has two functions. The Generator
allows the user to define a model, by combining simpler models
according to the rules imposed by the modeling language, and by
setting the parameters of the model. The Generator also allows the
user to build a model, by parsing the modeling language
expression and storing the result in a format used by the Predictor.
The Predictor may then take a model built by the Model Generator, and
calculate predicted data over some data (sub)space. This may
involve calls to pre-defined functions (e.g., a Gaussian or a
power-law), or the execution of a series of external programs, which
have been defined in a profile built with the Profile Editor.
- Profile Editor. With the Profile Editor, a profile, listing a number of
programs, and their order of execution, may be built.
Once such a profile has been built, it may be sent directly to the
Predictor, which will execute the programs listed in the profile and
store the results in a file. Data from that file may then be sent to
Fitting Engine.
- Characterization Tools. These tools may be used to
characterize a fit after a fit has been performed. Characterizing a
fit may include calculating a ``goodness-of-fit,'' performing
statistical tests, calculating residuals, or determining some
confidence ranges associated with the best-fit parameters.
- Visualization. Finally, the user may examine the results and plot
the observed data, the ``best-fit'' predicted data, the residuals,
and results from other statistical tests, in up to three dimensions.
Since the search
through
parameter space is saved in the history file, it is also possible to
plot regions of parameter space.
The Fitting Application is required to support the following modeling features:
- Empirical Models. These models are analytical, empirical functions (e.g., polynomial, Gaussian,
Lorentzian, power-law, etc.), which are not folded through instrument
response models.
- Astronomical Source Models. These models include a variety of spatial, spectral, and
temporal models of
astronomical X-ray sources. Spectral models from
the XSPEC package will also be available. However, the user may
combine spatial, spectral, and temporal models into models capable of
modeling a data space of up to four dimensions (e.g., ).
- AXAF Instrument Response Models. Astronomical source
models may be folded through AXAF instrument and mirror
response models. From the instrument responses provided, a response
model appropriate for a given AXAF observation may be
generated. Response models appropriate for other missions (e.g.,
Einstein, ROSAT) may also be used.
- Modeling Language. Due to the high spatial and spectral resolutions of the AXAF
instruments, it is highly desirable to be able to, e.g., combine models in
``joint'' spatial-spectral modes, which requires a modeling language
sophisticated enough to permit users to build such ``joint'' models.
We have implemented a Release 1 (XRCF) version of the Fitting Engine;
this implementation includes the optimization algorithms listed in
the table below. The implementation of the Levenberg-Marquardt
algorithm is that contained in Numerical Recipes (1992); for the other
algorithms, we have used the OPTIM library (Birkinshaw 1995).
In this table, we present the execution time of the
Engine, relative to the execution time of the Engine when the simplex
algorithm has been selected.
(At present, we are exploring ways to optimize the implementation of
these algorithms, particularly the Powell and Levenberg-Marquardt routines.)
In each run of the Engine, a 2-D Gaussian was fit to an array of 900
data points. We also present the number of lines of code for the
implementation of each algorithm.
Acknowledgments:
This project is supported by NASA contract NAS8-39073 (ASC). We would
like to thank Mark Birkinshaw for making his OPTIM library
available at the ASC; we also thank Michael Wise and Antonella
Fruscione for many fruitful discussions.
References:
Arnaud, K. A. 1996, in Astronomical Data Analysis Software and Systems V, ASP Conf. Ser., Vol. 101, eds. G. H. Jacoby and J. Barnes (San Francisco, ASP), 17
Birkinshaw, M. 1995, CfA internal memo
Doe, S., Conroy, M., & McDowell, J. 1996, in Astronomical Data Analysis Software and Systems V, ASP Conf. Ser., Vol. 101, eds. G. H. Jacoby and J. Barnes (San Francisco, ASP), 155
Press, W. H., Teukolsky, S. A., Vetterling, W. T., &
Flannery, B. P. 1992, Numerical Recipes, 2nd ed. (Cambridge, Cambridge
University Press), 387
© Copyright 1997
Astronomical Society of the Pacific,
390 Ashton Avenue, San Francisco, California 94112, USA
Previous: The AXAF Ground Aspect Determination System Pipeline
Up: AXAF
Table of Contents - Index - PS reprint - PDF reprint
payne@stsci.edu