This chapter demonstrates the use of XSPEC. The brief discussion of data and response files is followed by fully worked examples using real data that include all the screen input and output with a variety of plots. The topics covered are as follows: defining models, fitting data, determining errors, fitting more than one set of data simultaneously, simulating data, and producing plots.
Brief Discussion of XSPEC Files
At least two files are necessary for use with XSPEC: a data file and a response file. In some cases, a file containing background may also be used, and, in rare cases, a correction file is needed to adjust the background during fitting. If the response is split between an rmf and an arf then an ancillary response file is also required. However, most of the time the user need only specify the data file, as the names and locations of the correct response and background files should be written in the header of the data file by whatever program created the files.
Fitting Models to Data: An Example from EXOSAT
The 6s X-ray pulsar 1E1048.1–5937 was observed by EXOSAT in June 1985 for 20 ks. In this example, we'll conduct a general investigation of the spectrum from the Medium Energy (ME) instrument, i.e. follow the same sort of steps as the original investigators (Seward, Charles & Smale, 1986). The ME spectrum and corresponding response matrix were obtained from the HEASARC On-line service. Once installed, XSPEC is invoked by typing
%xspec
as in this example:
%xspec
XSPEC version: 12.2.1
Build Date/Time: Wed Nov 2 16:16:52 2005
XSPEC12>data s54405.pha
1 spectrum in use
Source File: s54405.pha
Net count rate (cts/s) for Spectrum:1 3.783 +/- 0.1367
Assigned to Data Group 1 and Plot Group 1
Using Response (RMF) File s54405.rsp
The data command tells the program to read the data as well as the response file that is named in the header of the data file. In general, XSPEC commands can be truncated, provided they remain unambiguous. Since the default extension of a data file is .pha, and the abbreviation of data to the first two letters is unambiguous, the above command can be abbreviated to da s54405, if desired. To obtain help on the data command, or on any other command, type help command followed by the name of the command.
One of the first things most users will want to do at this stage—even before fitting models—is to look at their data. The plotting device should be set first, with the command cpd (change plotting device). Here, we use the pgplot X-Window server, /xw.
XSPEC12> cpd /xw
There are more than 50 different things that can be plotted, all related in some way to the data, the model, the fit and the instrument. To see them, type:
XSPEC12> plot ?
plot data/models/fits etc
Syntax: primary plot commands:
chisq contour counts data delchi
emodel eemodel efficiency eufspec eeufspec
foldmodel icounts insensitivity delchi lcounts
model ratio residuals sensitivity sum
ufspec
secondary options (2-panel data plots - use with data, ldata, counts, lcounts, icounts):
chisq delchi ratio residuals
The most fundamental is the data plotted against instrument channel (data); next most fundamental, and more informative, is the data plotted against channel energy. To do this plot, use the XSPEC command setplot energy. Figure A shows the result of the commands:
XSPEC12> setplot energy
XSPEC12> plot data

Figure A: The result of the command plot data when the data file in question is the EXOSAT ME spectrum of the 6s X-ray pulsar 1E1048.1--5937 available from the HEASARC on-line service
People familiar with EXOSAT ME data will recognize the spectrum to be soft, absorbed and without an obvious bright iron emission line. We are now ready to fit the data with a model. Models in XSPEC are specified using the model command, followed by an algebraic expression of a combination of model components. There are two basic kinds of model components: additive, which represent X-Ray sources of different kinds. After being convolved with the instrument response, the components prescribe the number of counts per energy bin (e.g., a bremsstrahlung continuum); and multiplicative models components, which represent phenomena that modify the observed X-Radiation (e.g. reddening or an absorption edge). They apply an energy-dependent multiplicative factor to the source radiation before the result is convolved with the instrumental response.
More generally, XSPEC allows three types of modifying components: convolutions and mixing models in addition to the multiplicative type. Since there must be a source, there must be least one additive component in a model, but there is no restriction on the number of modifying components. To see what components are available, type model ?:
XSPEC12>model
Additive Models:
apec bbody bbodyrad bexrav bexriv bknpower
bmc bremss c6mekl c6pmekl c6vmekl cemekl
cevmkl cflow compLS compST compTT compbb
cutoffpl disk diskbb diskline diskm disko
diskpn equil gaussian gnei grad grbm
laor lorentz meka mekal mkcflow nei
npshock nteea pegpwrlw pexrav pexriv plcabs
posm powerlaw pshock raymond redge refsch
sedov srcut sresc step vapec vbremss
vequil vgnei vmcflow vmeka vmekal vnei
vnpshock vpshock vraymond vsedov zbbody zbremss
zgauss zpowerlw
Multiplicative Models:
SSS_ice TBabs TBgrain TBvarabs absori cabs
constant cyclabs dust edge expabs expfac
highecut hrefl notch pcfabs phabs plabs
redden smedge spline uvred varabs vphabs
wabs wndabs xion zTBabs zedge zhighect
zpcfabs zphabs zvarabs zvfeabs zvphabs zwabs
zwndabs
Convolution Models:
gsmooth lsmooth reflect
Pile-up Models:
pileup
Additive Models: 68
Multiplicative Models: 37
Convolution Models: 3
Pile-up Models: 1
Total Models: 109
For information about a specific component, type help model followed by the name of the component):
XSPEC12>help model raymond
Given the quality of our data, as shown by the plot, we'll choose an absorbed power law, specified as follows :
XSPEC12> model phabs(powerlaw)
Or, abbreviating unambiguously:
XSPEC12> mo pha(po)
The user is then prompted for the initial values of the parameters. Entering <return> or / in response to a prompt uses the default values. We could also have set all parameters to their default values by entering /* at the first prompt. As well as the parameter values themselves, users also may specify step sizes and ranges (<value>, <delta>, <min>, <bot>, <top>, and <max values>), but here, we'll enter the defaults:
XSPEC12>mo pha(po)
Model: phabs[1]( powerlaw[2] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 1 0.001 0 0 1E+05 1E+06
phabs:nH>/*
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 1.000 +/- 0.
2 2 2 powerlaw PhoIndex 1.000 +/- 0.
3 3 2 powerlaw norm 1.000 +/- 0.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 4.8645994E+08 using 125 PHA bins.
Reduced chi-squared = 3987376. for 122 degrees of freedom
Null hypothesis probability = 0.
Note that most of the other numerical values in this section
are have changed from those produced by earlier versions. This is because the
default photoelectric absorption cross-sections have changed since XSPEC V.10.
To recover identical results to earlier versions, use xsect obcm. bcmc is the default;
see help xsect
for details). The current statistic is
and is huge for the initial, default values—mostly
because the power law normalization is two orders of magnitude too large. This
is easily fixed using the renorm command.
XSPEC12> renorm
Chi-Squared = 852.1660 using 125 PHA bins.
Reduced chi-squared = 6.984967 for 122 degrees of freedom
Null hypothesis probability = 0.
We are not quite ready to fit the data (and obtain a better
), because not
all of the 125 PHA bins should be included in the fitting: some are below the
lower discriminator of the instrument and therefore do not contain valid data;
some have imperfect background subtraction at the margins of the pass band; and
some may not contain enough counts for
to be strictly meaningful. To find out which channels
to discard ( ignore in XSPEC terminology), users must consult
mission-specific documentation, which will inform them of discriminator
settings, background subtraction problems and other issues. For the mature
missions in the HEASARC archives, this information already has been encoded in
the headers of the spectral files as a list of “bad” channels. Simply issue the
command:
XSPEC12> ignore bad
Chi-Squared = 799.7109 using 85 PHA bins.
Reduced chi-squared = 9.752572 for 82 degrees of freedom
Null hypothesis probability = 0.
XSPEC12> setplot chan
XSPEC12> plot data

Figure B: The result of the command plot data after the command ignore bad on the EXOSAT ME spectrum 1E1048.1–5937
We can see that 40 channels are bad—but do we need to ignore any more? These channels are bad because of certain instrument properties: other channels still may need to be ignored because of the shape and brightness of the spectrum itself. Figure B shows the result of plotting the data in channels (using the commands setplot channel and plot data). We see that above about channel 33 the S/N becomes small. We also see, comparing Figure B with Figure A, which bad channels were ignored. Although visual inspection is not the most rigorous method for deciding which channels to ignore (more on this subject later), it's good enough for now, and will at least prevent us from getting grossly misleading results from the fitting. To ignore channels above 33:
XSPEC12> ignore 34-**
Chi-Squared = 677.6218 using 31 PHA bins.
Reduced chi-squared = 24.20078 for 28 degrees of freedom
Null hypothesis probability = 0.
The same result can be achieved with the command ignore 34–125. The inverse of ignore is notice, which has the same syntax.
We are now ready to fit the data. Fitting is initiated by
the command fit. As the fit proceeds, the screen displays the status of
the fit for each iteration until either the fit converges to the minimum
, or the user
is asked whether the fit is to go through another set of iterations to find the
minimum. The default number of iterations is ten.
XSPEC12>fit
Chi-Squared Lvl Fit param # 1 2 3
204.136 -3 7.9869E-02 1.564 4.4539E-03
84.5658 -4 0.3331 2.234 1.0977E-02
30.2511 -5 0.4422 2.174 1.1965E-02
30.1202 -6 0.4648 2.196 1.2264E-02
30.1189 -7 0.4624 2.195 1.2244E-02
---------------------------------------------------------------------------
Variances and Principal axes :
1 2 3
4.14E-08 | 0.00 -0.01 1.00
8.70E-02 | -0.91 -0.41 -0.01
2.32E-03 | -0.41 0.91 0.01
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0.4624 +/- 0.2698
2 2 2 powerlaw PhoIndex 2.195 +/- 0.1288
3 3 2 powerlaw norm 1.2244E-02 +/- 0.2415E-02
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 30.11890 using 31 PHA bins.
Reduced chi-squared = 1.075675 for 28 degrees of freedom
Null hypothesis probability = 0.358
The fit is good: reduced
is 1.075 for 31 – 3 = 28 degrees of freedom. The null
hypothesis probability is the probability of getting a value of
as large or
larger than observed if the model is correct. If this probability is small then
the model is not a good fit. The matrix of principal axes printed out at the
end of a fit provides an indication of whether parameters are correlated (at
least local to the best fit). In this example the powerlaw norm is not
correlated with any other parameter while the column and powerlaw index are
slightly correlated. To see the fit and the residuals, we use the command
XSPEC12>plot data resid
The result is shown in Figure C.

Figure C: The result of the command plot data with: the ME data file from 1E1048.1—5937; “bad” and negative channels ignored; the best-fitting absorbed power-law model; the residuals of the fit.
The screen output shows the best-fitting parameter values, as well as approximations to their errors. These errors should be regarded as indications of the uncertainties in the parameters and should not be quoted in publications. The true errors, i.e. the confidence ranges, are obtained using the error command:
XSPEC12>error 1 2 3
Parameter Confidence Range ( 2.706)
1 3.254765E-02 0.932778
2 1.99397 2.40950
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
*WARNING*:RENORM: No variable model to allow renormalization
8.942987E-03 1.711637E-02
Here, the numbers 1, 2, 3 refer to the parameter numbers in
the Model par
column of the screen output. For the first parameter, the column of absorbing
hydrogen atoms, the 90% confidence range is
. This corresponds to an excursion
in
of 2.706. The
reason these “better” errors are not given automatically as part of the fit
output is that they entail further fitting. When the model is simple, this does
not require much CPU, but for complicated models the extra time can be
considerable. The warning message is generated because there are no free
normalizations in the model while the error is being calculated on the
normalization itself. In this case, the warning may safely be ignored.
What else can we do with the fit? One thing is to derive the flux of the model. The data by themselves only give the instrument-dependent count rate. The model, on the other hand, is an estimate of the true spectrum emitted. In XSPEC, the model is defined in physical units independent of the instrument. The command flux integrates the current model over the range specified by the user:
XSPEC12> flux 2 10
Model flux 3.5496E-03 photons ( 2.2492E-11 ergs)cm**-2 s**-1 ( 2.000- 10.000)
Here we have chosen the standard X-ray range of 2—10 keV and
find that the energy flux is
Note that flux will integrate
only within the energy range of the current response matrix. If the model flux
outside this range is desired—in effect, an extrapolation beyond the
data---then the command dummyrsp should be used. This command sets up a
dummy response that covers the range required. For example, if we want to know
the flux of our model in the ROSAT PSPC band of 0.2—2 keV, we enter:
XSPEC12>dummy 0.2 2.
Chi-Squared = 3583.779 using 31 PHA bins.
Reduced chi-squared = 127.9921 for 28 degrees of freedom
Null hypothesis probability = 0.
XSPEC12>flux 0.2 2.
Model flux 4.5306E-03 photons ( 9.1030E-12 ergs)cm**-2 s**-1 ( 0.200- 2.000)
The energy flux, at
is lower in this band but the photon
flux is higher. To get our original response matrix back we enter:
XSPEC12> response
Chi-Squared = 30.11890 using 31 PHA bins.
Reduced chi-squared = 1.075675 for 28 degrees of freedom
Null hypothesis probability = 0.358
The fit, as we've remarked, is good, and the parameters are constrained. But unless the purpose of our investigation is merely to measure a photon index, it's a good idea to check whether alternative models can fit the data just as well. We also should derive upper limits to components such as iron emission lines and additional continua, which, although not evident in the data nor required for a good fit, are nevertheless important to constrain. First, let's try an absorbed black body:
XSPEC12>mo pha(bb)
Model: phabs[1]( bbody[2] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 1 0.001 0 0 1E+05 1E+06
phabs:nH>/*
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( bbody[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 1.000 +/- 0.
2 2 2 bbody kT keV 3.000 +/- 0.
3 3 2 bbody norm 1.000 +/- 0.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 3.3142067E+09 using 31 PHA bins.
Reduced chi-squared = 1.1836453E+08 for 28 degrees of freedom
Null hypothesis probability = 0.
XSPEC12>fit
Chi-Squared Lvl Fit param # 1 2 3
1420.96 0 0.2116 2.987 7.7666E-04
1387.72 0 4.4419E-02 2.975 7.7003E-04
1376.39 0 4.3009E-03 2.963 7.6354E-04
1371.67 0 1.8192E-03 2.951 7.5730E-04
1367.04 0 5.8100E-04 2.939 7.5130E-04
1362.47 0 1.9059E-04 2.926 7.4548E-04
1357.84 0 6.1455E-05 2.913 7.3982E-04
1353.14 0 2.5356E-05 2.900 7.3429E-04
1348.36 0 6.7582E-06 2.887 7.2885E-04
1343.50 0 2.0479E-06 2.874 7.2350E-04
Number of trials exceeded - last iteration delta = 4.861
Continue fitting? (Y)y
...
113.954 0 0. 0.8907 2.7865E-04
113.954 -1 0. 0.8905 2.7859E-04
113.954 4 0. 0.8905 2.7859E-04
---------------------------------------------------------------------------
Variances and Principal axes :
2 3
2.88E-04 | -1.00 0.00
8.45E-11 | 0.00 -1.00
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( bbody[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0. +/- -1.000
2 2 2 bbody kT keV 0.8905 +/- 0.1696E-01
3 3 2 bbody norm 2.7859E-04 +/- 0.9268E-05
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 113.9542 using 31 PHA bins.
Reduced chi-squared = 4.069792 for 28 degrees of freedom
Null hypothesis probability = 2.481E-12
Note that when more than 10 iterations are required for convergence the user is asked whether or not to continue at the end of each set of 10. Saying no at these prompts is a good idea if the fit is not converging quickly. Conversely, to avoid having to keep answering the question, i.e., to increase the number of iterations before the prompting question appears, begin the fit with, say fit 100. This command will put the fit through 100 iterations before pausing.
Plotting the data and residuals again with
XSPEC12> plot data resid
we obtain Figure D:

Figure D: As for Figure C, but the model is the best-fitting absorbed black body. Note the wave-like shape of the residuals which indicates how poor the fit is, i.e. that the continuum is obviously not a black body.
The black body fit is obviously not a good one. Not only is
large, but the
best-fitting NH is rather low. Inspection of the residuals
confirms this: the pronounced wave-like shape is indicative of a bad choice of
overall continuum (see Figure D). Let's try thermal bremsstrahlung next:
XSPEC12>mo pha(br)
Model: phabs[1]( bremss[2] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 1 0.001 0 0 1E+05 1E+06
phabs:nH>/*
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( bremss[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 1.000 +/- 0.
2 2 2 bremss kT keV 7.000 +/- 0.
3 3 2 bremss norm 1.000 +/- 0.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 4.5311800E+07 using 31 PHA bins.
Reduced chi-squared = 1618279. for 28 degrees of freedom
Null hypothesis probability = 0.
XSPEC12>fit
Chi-Squared Lvl Fit param # 1 2 3
113.305 -3 0.2441 6.557 6.8962E-03
40.4519 -4 0.1173 5.816 7.7944E-03
36.0549 -5 4.4750E-02 5.880 7.7201E-03
33.4168 -6 1.8882E-02 5.868 7.7476E-03
32.6766 -7 7.8376E-03 5.864 7.7495E-03
32.3192 -8 2.7059E-03 5.862 7.7515E-03
32.1512 -9 2.3222E-04 5.861 7.7525E-03
32.1471 -10 1.0881E-04 5.861 7.7523E-03
---------------------------------------------------------------------------
Variances and Principal axes :
1 2 3
2.29E-08 | 0.00 0.00 1.00
3.18E-02 | 0.95 0.31 0.00
8.25E-01 | 0.31 -0.95 0.00
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( bremss[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 1.0881E-04 +/- 0.3290
2 2 2 bremss kT keV 5.861 +/- 0.8651
3 3 2 bremss norm 7.7523E-03 +/- 0.8122E-03
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 32.14705 using 31 PHA bins.
Reduced chi-squared = 1.148109 for 28 degrees of freedom
Null hypothesis probability = 0.269
Bremsstrahlung is a better fit than the black body—and is as good as the power law—although it shares the low NH. With two good fits, the power law and the bremsstrahlung, it's time to scrutinize their parameters in more detail.
First, we reset our fit to the powerlaw (output omitted):
XSPEC12>mo pha(po)
From the EXOSAT database on HEASARC, we know that the
target in question, 1E1048.1--5937, has a Galactic latitude of
, i.e., almost on
the plane of the Galaxy. In fact, the database also provides the value of the
Galactic NH based on 21-cm radio observations. At
, it is
higher than the 90 percent-confidence upper limit from the power-law fit.
Perhaps, then, the power-law fit is not so good after all. What we can do is
fix (freeze in XSPEC terminology) the value of NH at
the Galactic value and refit the power law. Although we won't get a good fit,
the shape of the residuals might give us a clue to what is missing. To freeze a
parameter in XSPEC, use the command freeze followed by the parameter
number, like this:
XSPEC12> freeze 1
Number of variable fit parameters = 2
The inverse of freeze is thaw:
XSPEC12> thaw 1
Number of variable fit parameters = 3
Alternatively, parameters can be frozen using the newpar
command, which allows all the quantities associated with a parameter to be
changed. The second quantity, delta,
is the step size used to calculate the derivative in the fitting, and, if set
to a negative number, will cause the parameter to be frozen. In our case, we
want NH frozen at
,
so we go back to the power law best fit and do the following :
XSPEC12>newpar 1
Current: 0.463 0.001 0 0 1E+05 1E+06
phabs:nH>4,0
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 4.000 frozen
2 2 2 powerlaw PhoIndex 2.195 +/- 0.1287
3 3 2 powerlaw norm 1.2247E-02 +/- 0.2412E-02
---------------------------------------------------------------------------
---------------------------------------------------------------------------
2 variable fit parameters
Chi-Squared = 829.3545 using 31 PHA bins.
Reduced chi-squared = 28.59843 for 29 degrees of freedom
Null hypothesis probability = 0.
Note the useful trick of giving a value of zero for delta in the newpar command. This has the effect of changing delta to the negative of its current value. If the parameter is free, it will be frozen, and if frozen, thawed. The same result can be obtained by putting everything onto the command line, i.e., newpar 1 4, 0, or by issuing the two commands, newpar 1 4 followed by freeze 1. Now, if we fit and plot again, we get the following model (Fig. E).
XSPEC12>fit
...
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 4.000 frozen
2 2 2 powerlaw PhoIndex 3.594 +/- 0.6867E-01
3 3 2 powerlaw norm 0.1161 +/- 0.9412E-02
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 125.5134 using 31 PHA bins.
Reduced chi-squared = 4.328048 for 29 degrees of freedom
Null hypothesis probability = 5.662E-14
XSPEC12>plot data resid

Figure E: As for Figure C & D, but the model is the best-fitting power law with the absorption fixed at the Galactic value. Under the assumptions that the absorption really is the same as the 21-cm value and that the continuum really is a power law, this plot provides some indication of what other components might be added to the model to improve the fit.
The fit is not good. In Figure E we can see why: there appears to be a surplus of softer photons, perhaps indicating a second continuum component. To investigate this possibility we can add a component to our model. The editmod command lets us do this without having to respecify the model from scratch. Here, we'll add a black body component.
XSPEC12>editmod pha(po+bb)
Model: phabs[1]( powerlaw[2] + bbody[3] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 3 0.01 0.0001 0.01 100 200
bbody:kT>2,0
Current: 1 0.01 0 0 1E+24 1E+24
bbody:norm>1.e-5
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] + bbody[3] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 4.000 frozen
2 2 2 powerlaw PhoIndex 3.594 +/- 0.6867E-01
3 3 2 powerlaw norm 0.1161 +/- 0.9412E-02
4 4 3 bbody kT keV 2.000 frozen
5 5 3 bbody norm 1.0000E-05 +/- 0.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 122.1538 using 31 PHA bins.
Reduced chi-squared = 4.362635 for 28 degrees of freedom
Null hypothesis probability = 9.963E-14
Notice that in specifying the initial values of the black body, we have frozen kT at 2 keV (the canonical temperature for nuclear burning on the surface of a neutron star in a low-mass X-ray binary) and started the normalization at zero. Without these measures, the fit might “lose its way”. Now, if we fit, we get (not showing all the iterations this time):
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] + bbody[3] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 4.000 frozen
2 2 2 powerlaw PhoIndex 4.932 +/- 0.1618
3 3 2 powerlaw norm 0.3761 +/- 0.5449E-01
4 4 3 bbody kT keV 2.000 frozen
5 5 3 bbody norm 2.3212E-04 +/- 0.3966E-04
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 55.63374 using 31 PHA bins.
Reduced chi-squared = 1.986919 for 28 degrees of freedom
Null hypothesis probability = 1.425E-03
The fit is better than the one with just a power law and the fixed Galactic column, but it is still not good. Thawing the black body temperature and fitting gives us:
XSPEC12>thaw 4
Number of variable fit parameters = 4
XSPEC12>fit
...
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] + bbody[3] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 4.000 frozen
2 2 2 powerlaw PhoIndex 6.401 +/- 0.3873
3 3 2 powerlaw norm 1.086 +/- 0.3032
4 4 3 bbody kT keV 1.199 +/- 0.8082E-01
5 5 3 bbody norm 2.6530E-04 +/- 0.3371E-04
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 37.21207 using 31 PHA bins.
Reduced chi-squared = 1.378225 for 27 degrees of freedom
Null hypothesis probability = 9.118E-02

Figure F: The result of the command plot model in the case of the ME data file from 1E1048.1—5937. Here, the model is the best-fitting combination of power law, black body and fixed Galactic absorption. The three lines show the two continuum components (absorbed to the same degree) and their sum.
This, of course, is a better fit, but the photon index of the power law has ended up extremely and implausibly steep. Looking at this odd model with the command
XSPEC12> plot model
we see, in Figure F, that the black body and the power law have changed places, in that the power law provides the soft photons required by the high absorption, while the black body provides the harder photons.
We could continue to search for a plausible, well-fitting model, but the data, with their limited signal-to-noise and energy resolution, probably don't warrant it (the original investigators published only the power law fit). There is, however, one final, useful thing to do with the data: derive an upper limit to the presence of a fluorescent iron emission line. First we delete the black body component using delcomp:
XSPEC12>delcomp 3
Model: phabs[1]( powerlaw[2] )
Chi-Squared = 1285.487 using 31 PHA bins.
Reduced chi-squared = 44.32712 for 29 degrees of freedom
Then we thaw NH and refit to recover our original, best fit:
XSPEC12>thaw 1
Number of variable fit parameters = 3
XSPEC12>fit
Chi-Squared Lvl Fit param # 1 2 3
924.178 -2 5.087 5.076 0.4056
305.507 -2 4.525 3.791 0.1249
140.460 -2 2.930 3.367 6.5553E-02
64.4275 -3 0.6068 2.244 1.4635E-02
30.3738 -4 0.4837 2.201 1.2279E-02
30.1189 -5 0.4641 2.195 1.2258E-02
30.1189 -6 0.4637 2.195 1.2255E-02
---------------------------------------------------------------------------
Variances and Principal axes :
1 2 3
4.13E-08 | 0.00 -0.01 1.00
8.69E-02 | -0.91 -0.41 -0.01
2.31E-03 | -0.41 0.91 0.01
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0.4637 +/- 0.2696
2 2 2 powerlaw PhoIndex 2.195 +/- 0.1287
3 3 2 powerlaw norm 1.2255E-02 +/- 0.2412E-02
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 30.11890 using 31 PHA bins.
Reduced chi-squared = 1.075675 for 28 degrees of freedom
Null hypothesis probability = 0.358
Now, we add a gaussian emission line of fixed energy and width:
XSPEC12>editmod pha(po+ga)
Model: phabs[1]( powerlaw[2] + gaussian[3] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 6.5 0.05 0 0 1E+06 1E+06
gaussian:LineE>6.4 0
Current: 0.1 0.05 0 0 10 20
gaussian:Sigma>0.1 0
Current: 1 0.01 0 0 1E+24 1E+24
gaussian:norm>1.e-4
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] + gaussian[3] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0.4637 +/- 0.2696
2 2 2 powerlaw PhoIndex 2.195 +/- 0.1287
3 3 2 powerlaw norm 1.2255E-02 +/- 0.2412E-02
4 4 3 gaussian LineE keV 6.400 frozen
5 5 3 gaussian Sigma keV 0.1000 frozen
6 6 3 gaussian norm 1.0000E-04 +/- 0.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 32.75002 using 31 PHA bins.
Reduced chi-squared = 1.212964 for 27 degrees of freedom
Null hypothesis probability = 0.205
XSPEC12>fit
...
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( powerlaw[2] + gaussian[3] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0.6562 +/- 0.3193
2 2 2 powerlaw PhoIndex 2.324 +/- 0.1700
3 3 2 powerlaw norm 1.4636E-02 +/- 0.3642E-02
4 4 3 gaussian LineE keV 6.400 frozen
5 5 3 gaussian Sigma keV 0.1000 frozen
6 6 3 gaussian norm 9.6462E-05 +/- 0.9542E-04
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 29.18509 using 31 PHA bins.
Reduced chi-squared = 1.080929 for 27 degrees of freedom
Null hypothesis probability = 0.352
The energy and width have to be frozen because, in the absence of an obvious line in the data, the fit would be completely unable to converge on meaningful values. Besides, our aim is to see how bright a line at 6.4 keV can be and still not ruin the fit. To do this, we fit first and then use the error command to derive the maximum allowable iron line normalization. We then set the normalization at this maximum value with newpar and, finally, derive the equivalent width using the eqwidth command. That is:
XSPEC12>err 6
Parameter Confidence Range ( 2.706)
Parameter pegged at hard limit 0.
with delta ftstat= 0.9338
6 0. 1.530722E-04
XSPEC12>new 6 1.530722E-04
4 variable fit parameters
Chi-Squared = 34.91923 using 31 PHA bins.
Reduced chi-squared = 1.293305 for 27 degrees of freedom
Null hypothesis probability = 0.141
XSPEC12>eqwidth 3
Additive group equiv width for model 3 (gaussian): 839. eV
Things to note:
The true minimum value of the gaussian normalization is less
than zero, but the error command stopped searching for a
of 2.706
when the minimum value hit zero, the “hard” lower limit of the parameter. Hard
limits can be adjusted with the newpar command, and they correspond to
the quantities min
and max
associated with the parameter values. In fact, according to the screen output,
the value of
corresponding
to zero normalization is 0.934.
The command eqwidth takes the component number as its argument.
The upper limit on the equivalent width of a 6.4 keV emission line is high (839 eV)!
Simultaneous Fitting: Examples from Einstein and Ginga
XSPEC has the very useful facility of allowing models to be fitted simultaneously to more than one data file. It is even possible to group files together and to fit different models simultaneously. Reasons for fitting in this manner include:
The same target is observed at several epochs but, although the source stays constant, the response matrix has changed. When this happens, the data files cannot be added together; they have to be fitted separately. Fitting the data files simultaneously yields tighter constraints.
The same target is observed with different instruments. The GIS and SIS on ASCA, for example, observe in the same direction simultaneously. As far as XSPEC is concerned, this is just like the previous case: two data files with two responses fitted simultaneously with the same model.
Different targets are observed, but the user wants to fit the same model to each data file with some parameters shared and some allowed to vary separately. For example, if you have a series of spectra from a variable AGN, you might want to fit them simultaneously with a model that has the same, common photon index but separately vary the normalization and absorption.
Other scenarios are possible---the important thing is to recognize the flexibility of XSPEC in this regard.
As an example of the first case, we'll fit two spectra derived from two separate Einstein Solid State Spectrometer (SSS) observations of the cooling-flow cluster Abell 496. Although the two observations were carried out on consecutive days (in August 1979), the response is different, due to the variable build-up of ice on the detector. This problem bedeviled analysis during the mission; however, it has now been calibrated successfully and is incorporated into the response matrices associated with the spectral files in the HEASARC archive. The SSS also provides an example of how background correction files are used in XSPEC.
To fit the same model with the same set of parameters to more than one data file, simply enter the names of the data files after the data command:
XSPEC12> data sa496b.pha sa496c.pha
Net count rate (cts/s) for file 1 0.7806 +/- 9.3808E+05( 86.9% total)
using response (RMF) file... sa496b.rsp
using background file... sa496b.bck
using correction file... sa496b.cor
Net count rate (cts/s) for file 2 0.8002 +/- 9.3808E+05( 86.7% total)
using response (RMF) file... sa496c.rsp
using background file... sa496c.bck
using correction file... sa496c.cor
Net correction flux for file 1= 8.4469E-04
Net correction flux for file 2= 8.7577E-04
2 data sets are in use
As the messages indicate, XSPEC also has read in the associated:
response files (sa496b.rsp & sa496c.rsp),
background files (sa496b.bck& sa496c.bck) and
correction files (sa496b.cor & sa496c.cor).
These files are all listed in the headers of the data files (sa496b.pha & sa496c.pha).
To ignore channels, the file number (1 & 2 in this example) precedes the range of channels to be ignored. Here, we wish to ignore, for both files, channels 1—15 and channels 100—128. This can be done by specifying the files one after the other with the range of ignored channels:
XSPEC12> ignore 1:1-15 1:100-128 2:1-15 2:100-128
Chi-Squared = 1933.559 using 168 PHA bins.
Reduced chi-squared = 11.79000 for 164 degrees of freedom
Null hypothesis probability = 0.
or by specifying the range of file number with the channel range:
XSPEC12> ignore 1-2:1-15 100-128
In this example, we'll fit a cooling-flow model under the reasonable assumption that the small SSS field of view sees mostly just the cool gas in the middle of the cluster. We'll freeze the values of the maximum temperature (the temperature from which the gas cools) and of the abundance to the values found by instruments such as the Ginga LAC and the EXOSAT ME, which observed the entire cluster. The minimum gas temperature is frozen at 0.1 keV; the “slope” is frozen at zero (isobaric cooling) and the normalization is given an initial value of 100 solar masses per year:
XSPEC12>mo pha(cflow)
Model: phabs[1]( cflow[2] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 1 0.001 0 0 1E+05 1E+06
phabs:nH>0.045
Current: 0 0.01 -5 -5 5 5
cflow:slope>0,0
Current: 0.1 0.001 0.0808 0.0808 79.9 79.9
cflow:lowT>0.1,0
Current: 4 0.001 0.0808 0.0808 79.9 79.9
cflow:highT>4,0
Current: 1 0.01 0 0 5 5
cflow:Abundanc>0.5,0
Current: 0 -0.1 0 0 100 100
cflow:Redshift>0.032
Current: 1 0.01 0 0 1E+24 1E+24
cflow:norm>100
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( cflow[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 4.5000E-02 +/- 0.
2 2 2 cflow slope 0. frozen
3 3 2 cflow lowT keV 0.1000 frozen
4 4 2 cflow highT keV 4.000 frozen
5 5 2 cflow Abundanc 0.5000 frozen
6 6 2 cflow Redshift 3.2000E-02 frozen
7 7 2 cflow norm 100.0 +/- 0.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 2740.606 using 168 PHA bins.
Reduced chi-squared = 16.50968 for 166 degrees of freedom
Null hypothesis probability = 0.
XSPEC12>fit
Chi-Squared Lvl Fit param # 1 2 3 4
5 6 7
414.248 -3 0.2050 0. 0.1000 4.000
0.5000 3.2000E-02 288.5
373.205 -4 0.2508 0. 0.1000 4.000
0.5000 3.2000E-02 321.9
372.649 -5 0.2566 0. 0.1000 4.000
0.5000 3.2000E-02 325.9
372.640 -6 0.2574 0. 0.1000 4.000
0.5000 3.2000E-02 326.3
---------------------------------------------------------------------------
Variances and Principal axes :
1 7
3.55E-05 | -1.00 0.00
3.52E+01 | 0.00 -1.00
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( cflow[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0.2574 +/- 0.9219E-02
2 2 2 cflow slope 0. frozen
3 3 2 cflow lowT keV 0.1000 frozen
4 4 2 cflow highT keV 4.000 frozen
5 5 2 cflow Abundanc 0.5000 frozen
6 6 2 cflow Redshift 3.2000E-02 frozen
7 7 2 cflow norm 326.3 +/- 5.929
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 372.6400 using 168 PHA bins.
Reduced chi-squared = 2.244819 for 166 degrees of freedom
Null hypothesis probability = 6.535E-18
As we can see,
is
not good, but the high statistic could be because we have yet to adjust the
correction file. Correction files in XSPEC take into account detector features
that cannot be completely prescribed ab initio and which must be fitted
at the same time as the model. Einstein SSS spectra, for example, have a
background feature the level of which varies unpredictably. Its spectral form
is contained in the correction file, but its normalization is determined by
fitting. This fitting is set in motion using the command recornrm (
reset the correction-file normalization):
XSPEC12>reco 1
File # Correction
1 0.4118 +/- 0.0673
After correction norm adjustment 0.412 +/- 0.067
Chi-Squared = 335.1577 using 168 PHA bins.
Reduced chi-squared = 2.019022 for 166 degrees of freedom
Null hypothesis probability = 1.650E-13
XSPEC12>reco 2
File # Correction
2 0.4864 +/- 0.0597
After correction norm adjustment 0.486 +/- 0.060
Chi-Squared = 268.8205 using 168 PHA bins.
Reduced chi-squared = 1.619400 for 166 degrees of freedom
Null hypothesis probability = 7.552E-07
This process is iterative, and, in order to work must be
used in tandem with fitting the model. Successive fits and recorrections are
applied until the fit is stable, i.e., until further improvement in
no longer
results. Of course, this procedure is only worthwhile when the model gives a
reasonably good account of the data. Eventually, we end up at:
XSPEC12>fit
Chi-Squared Lvl Fit param # 1 2 3 4
5 6 7
224.887 -3 0.2804 0. 0.1000 4.000
0.5000 3.2000E-02 313.0
224.792 -4 0.2835 0. 0.1000 4.000
0.5000 3.2000E-02 314.5
224.791 -5 0.2837 0. 0.1000 4.000
0.5000 3.2000E-02 314.6
---------------------------------------------------------------------------
Variances and Principal axes :
1 7
4.64E-05 | -1.00 0.00
3.78E+01 | 0.00 -1.00
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( cflow[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0.2837 +/- 0.1051E-01
2 2 2 cflow slope 0. frozen
3 3 2 cflow lowT keV 0.1000 frozen
4 4 2 cflow highT keV 4.000 frozen
5 5 2 cflow Abundanc 0.5000 frozen
6 6 2 cflow Redshift 3.2000E-02 frozen
7 7 2 cflow norm 314.6 +/- 6.147
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 224.7912 using 168 PHA bins.
Reduced chi-squared = 1.354164 for 166 degrees of freedom
Null hypothesis probability = 1.616E-03
The final value of
is much better than the original, but is not quite
acceptable. However, the current model has only two free parameters: further
explorations of parameter space would undoubtedly improve the fit.
We'll leave this example and move on to look at another kind of simultaneous fitting: one where the same model is fitted to two different data files. This time, not all the parameters will be identical. The massive X-ray binary Centaurus X-3 was observed with the LAC on Ginga in 1989. Its flux level before eclipse was much lower than the level after eclipse. Here, we'll use XSPEC to see whether spectra from these two phases can be fitted with the same model, which differs only in the amount of absorption. This kind of fitting relies on introducing an extra dimension, the group, to the indexing of the data files. The files in each group share the same model but not necessarily the same parameter values, which may be shared as common to all the groups or varied separately from group to group. Although each group may contain more than one file, there is only one file in each of the two groups in this example. Groups are specified with the data command, with the group number preceding the file number, like this:
XSPEC12> da 1:1 losum 2:2 hisum
Net count rate (cts/s) for file 1 140.1 +/- 0.3549
using response (RMF) file... ginga_lac.rsp
Net count rate (cts/s) for file 2 1371. +/- 3.123
using response (RMF) file... ginga_lac.rsp
2 data sets are in use
Here, the first group makes up the file losum.pha, which contains the spectrum of all the low, pre-eclipse emission. The second group makes up the second file, hisum.pha, which contains all the high, post-eclipse emission. Note that file number is “absolute” in the sense that it is independent of group number. Thus, if there were three files in each of the two groups (lo1.pha, lo2.pha, lo3.pha, hi1.pha, hi2.pha, and hi3.pha, say), rather than one, the six files would be specified as da 1:1 lo1 1:2 lo2 1:3 lo3 2:4 hi1 2:5 hi2 2:6 hi3. The ignore command works, as usual, on file number, and does not take group number into account. So, to ignore channels 1–3 and 37–48 of both files:
XSPEC12> ignore 1-2:1-3 37-48
The model we'll use at first to fit the two files is an absorbed power law with a high-energy cut-off:
XSPEC12> mo phabs * highecut (po)
After defining the model, the user is prompted for two sets of parameter values, one for the first group of data files (losum.pha), the other for the second group (hisum.pha). Here, we'll enter the absorption column of the first group as 1024 cm–2 and enter the default values for all the other parameters in the first group. Now, when it comes to the second group of parameters, we enter a column of 1022 cm–2 and then enter defaults for the other parameters. The rule being applied here is as follows: to tie parameters in the second group to their equivalents in the first group, take the default when entering the second-group parameters; to allow parameters in the second group to vary independently of their equivalents in the first group, enter different values explicitly:
XSPEC12>mo phabs*highecut(po)
Model: phabs[1]*highecut[2]( powerlaw[3] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 1 0.001 0 0 1E+05 1E+06
DataGroup 1:phabs:nH>100
Current: 10 0.01 0.0001 0.01 1E+06 1E+06
DataGroup 1:highecut:cutoffE>/
Current: 15 0.01 0.0001 0.01 1E+06 1E+06
DataGroup 1:highecut:foldE>/
Current: 1 0.01 -3 -2 9 10
DataGroup 1:powerlaw:PhoIndex>/
Current: 1 0.01 0 0 1E+24 1E+24
DataGroup 1:powerlaw:norm>/
Current: 100 0.001 0 0 1E+05 1E+06
DataGroup 2:phabs:nH>1
Current: 10 0.01 0.0001 0.01 1E+06 1E+06
DataGroup 2:highecut:cutoffE>/*
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]*highecut[2]( powerlaw[3] )
Model Fit Model Component Parameter Unit Value Data
par par comp group
1 1 1 phabs nH 10^22 100.0 +/- 0. 1
2 2 2 highecut cutoffE keV 10.00 +/- 0. 1
3 3 2 highecut foldE keV 15.00 +/- 0. 1
4 4 3 powerlaw PhoIndex 1.000 +/- 0. 1
5 5 3 powerlaw norm 1.000 +/- 0. 1
6 6 4 phabs nH 10^22 1.000 +/- 0. 2
7 2 5 highecut cutoffE keV 10.00 = par 2 2
8 3 5 highecut foldE keV 15.00 = par 3 2
9 4 6 powerlaw PhoIndex 1.000 = par 4 2
10 5 6 powerlaw norm 1.000 = par 5 2
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 2.0263934E+07 using 66 PHA bins.
Reduced chi-squared = 337732.2 for 60 degrees of freedom
Null hypothesis probability = 0.
Notice how the summary of the model, displayed immediately
above, is different now that we have two groups, as opposed to one (as in all
the previous examples). We can see that of the 10 model parameters, 6 are free
(i.e., 4 of the second group parameters are tied to their equivalents in the
first group). Fitting this model results in a huge
(not shown here), because our assumption that only a
change in absorption can account for the spectral variation before and after
eclipse is clearly wrong. Perhaps scattering also plays a role in reducing the
flux before eclipse. This could be modeled (simply at first) by allowing the
normalization of the power law to be smaller before eclipse than after eclipse.
To decouple tied parameters, we change the parameter value in the second group
to a value—any value—different from that in the first group (changing the value
in the first group has the effect of changing both without decoupling). As
usual, the newpar command is used:
XSPEC12>newpar 10 1
7 variable fit parameters
Chi-Squared = 2.0263934E+07 using 66 PHA bins.
Reduced chi-squared = 343456.5 for 59 degrees of freedom
Null hypothesis probability = 0.
XSPEC12>fit
...
---------------------------------------------------------------------------
Model: phabs[1]*highecut[2]( powerlaw[3] )
Model Fit Model Component Parameter Unit Value Data
par par comp group
1 1 1 phabs nH 10^22 20.23 +/- 0.1823 1
2 2 2 highecut cutoffE keV 14.68 +/- 0.5552E-01 1
3 3 2 highecut foldE keV 7.430 +/- 0.8945E-01 1
4 4 3 powerlaw PhoIndex 1.187 +/- 0.6505E-02 1
5 5 3 powerlaw norm 5.8958E-02 +/- 0.9334E-03 1
6 6 4 phabs nH 10^22 1.270 +/- 0.3762E-01 2
7 2 5 highecut cutoffE keV 14.68 = par 2 2
8 3 5 highecut foldE keV 7.430 = par 3 2
9 4 6 powerlaw PhoIndex 1.187 = par 4 2
10 7 6 powerlaw norm 0.3123 +/- 0.4513E-02 2
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Chi-Squared = 15424.73 using 66 PHA bins.
Reduced chi-squared = 261.4362 for 59 degrees of freedom
Null hypothesis probability = 0.
After fitting, this decoupling reduces
by a factor of
six to 15,478, but this is still too high. Indeed, this simple attempt to
account for the spectral variability in terms of “blanket” cold absorption and
scattering does not work. More sophisticated models, involving additional
components and partial absorption, should be investigated.
Using XSPEC to Simulate Data: an Example from ASCA
In several cases, analyzing simulated data is a powerful tool to demonstrate feasibility. For example:
To support an observing proposal. That is, to demonstrate what constraints a proposed observation would yield.
To support a hardware proposal. If a response matrix is generated, it can be used to demonstrate what kind of science could be done with a new instrument.
To support a theoretical paper. A theorist could write a paper describing a model, and then show how these model spectra would appear when observed. This, of course, is very like the first case.
Here, we'll use XSPEC to see how an ASCA observation of the elliptical galaxy NGC 4472 can constrain the condition of the hot gas. The first step is to define a model on which to base the simulation. The way XSPEC creates simulated data is to take the current model, convolve it with the current response matrix, while adding noise appropriate to the integration time specified. Once created, the simulated data can be analyzed in the same way as real data to derive confidence limits.
We begin by looking in the literature for the best estimate
of the NGC 4472 spectrum. BBXRT observed the galaxy in 1990 and the
results were published in Serlemitsos et al., (1993). They found a flux in the
0.5–4.5 keV range of
, a temperature range of 0.74 < kT
< 0.98, an abundance range (as a fraction of solar) of 0.09 < A < 0.46
and a column range of
. A Raymond-Smith spectral
model was found to give a good fit. We specify this model at first with the
median parameter values, except for the normalization of the Raymond-Smith,
which we leave at its default value of unity at first (but adjust later):
XSPEC12>mo pha(ray)
Model: phabs[1]( raymond[2] )
Input parameter value, delta, min, bot, top, and max values for ...
Current: 1 0.001 0 0 1E+05 1E+06
phabs:nH>0.21
Current: 1 0.01 0.008 0.008 64 64
raymond:kT>0.86
Current: 1 -0.001 0 0 5 5
raymond:Abundanc>0.27
Current: 0 -0.001 0 0 2 2
raymond:Redshift>/*
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Model: phabs[1]( raymond[2] )
Model Fit Model Component Parameter Unit Value
par par comp
1 1 1 phabs nH 10^22 0.2100 +/- 0.
2 2 2 raymond kT keV 0.8600 +/- 0.
3 3 2 raymond Abundanc 0.2700 frozen
4 4 2 raymond Redshift 0. frozen
5 5 2 raymond norm 1.000 +/- 0.
---------------------------------------------------------------------------
---------------------------------------------------------------------------