Known issues and patches
Home Downloads Manual Issues/Patches Additional Models Xspec In Python
    (updated 08/30/11) (updated 01/18/12)    

New issues from Xspec 12.7.0

When working with apec and bapec models, AtomDB v2.0 should not be used. This has been corrected for in all XSPEC distributions downloaded after 6/28/11, which now use AtomDB v2.0.1 by default. For ealier source-code downloads, applying patch 12.7.0e below will also fix the problem.

Frequently Asked Questions

List of currently outstanding issues.


Patches:

latest update 12.7.0u Jan 18, 2012

Requires patch installer v4.0 or later

To apply patches, you'll need to have downloaded and already built the source code distribution of XSPEC. For details about the patch installer including options available with the latest v4.1, click here. Otherwise, just follow the instructions below.


(Note: This assumes you have already set your HEADAS environment variables with the headas-init script, as you would if you were running XSPEC.)

To make sure your XSPEC installation is up to date with ALL listed patches:

1.    If you don't already have the patch installer tcl script (v4.1), download and place it in the XSPEC src directory. This directory should be at heasoft-[ver]/Xspec/src from the source code distribution.

2.    Download the latest patchfile into the same directory. There is no need to unzip/untar the patchfile since the installer will do that.

3.    At the command line, launch the script by typing 'tclsh patch_install_[ver].tcl', and that's all.

*If you are on a Mac and the script exits with the following error:

     while executing
"exec $untarCmd $untarFlgs [file tail $patchFile]"
     (file "patch_install_4.0.tcl" line 400)
The solution is to upgrade to the latest version (v4.1) of the patch installer and try again.


The script should detect which patches you've installed previously, copy the new code files to the necessary directories, determine whether complete or only partial rebuilds are necessary, and finally perform the rebuilds. Numbers listed in red indicate that the patch modifies the interface to one or more of XSPEC's libraries. These patches will generally cause longer rebuilds. If you have a local model library, it is recommended (though not always necessary) that you rebuild it with initpackage after applying red patches.


12.7.0a This is an enhancement to the PyXspec library which adds the bayes, goodness, improve, and initpackage commands to the Python interface. They are accessed through the following class methods and attributes:
  bayes:Fit.bayes, Parameter.prior
  goodness:Fit.goodness()
  improve:Fit.improve()
  initpackage:AllModels.initpackage()

Report added on Jun 9, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSFit/Fit/ StatManager.h, src/XSUser/Handler/ xsBayes.cxx, xsGoodness.cxx, src/XSUser/Python/xspec/ fit.py, model.py, PyFit.cxx, .h, PyModel.cxx, .h, and pyXspecmodule.cxx

12.7.0b Improvement needed for the handling of NaN output when fitting with cstat and its variants. Otherwise a crash can occur in this situation for builds using g77 as the Fortran compiler. Our thanks to Giacomo Vianello for pointing this out. Report added on Jun 23, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSFit/StatMethod/Cstat/ Cstat.h

12.7.0c Bug fix to the lrt command script. Each iteration of simulated data must be based on the originally loaded data sets, or else the fits will diverge and eventually fail for large numbers of iterations. Our thanks to Junfeng Wang for pointing this out. Report added on Jun 23, 2011.

This patch modifies heasoft-6.11/Xspec/src/scripts/ lrt.tcl

12.7.0d This adds a new option for the tclout command: tclout nullhyp. When all spectra are using the chi-square fit statistic, this will retrieve the reported null hypothesis probability. Our thanks to Karen Williamson for this suggestion. Report added on Jun 23, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Handler/ xsTclout.cxx

12.7.0e This adds the updated AtomDB v2.0.1 files and sets the apec and bapec models to use these by default. The previous v2.0 files contain a serious error and should never be used. Report added on Jun 27, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSFunctions/ ldaped.cxx, src/spectral/modelData/ Makefile, and adds src/spectral/modelData/ apec_v2.0.1_coco.fits and apec_v2.0.1_line.fits

12.7.0f New features for PyXspec: This adds a setPars method to the Model class, and also the ability to initialize multiple parameters from the Model class constructor. These enhancements can make your Python code run significantly faster when changing multiple parameter values, as the model recalculation will be performed just once rather than for each individual parameter change. For more details, please see the Setting Multiple Parameters section of the PyXspec Quick Tutorial. Our thanks to Adam Mantz for this suggestion. Report added on Jul 21, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Python/xspec/ PyModel.cxx, .h, pyXspecmodule.cxx and model.py

12.7.0g Minor fix for when retrieving plot arrays (using tclout plot in standard XSPEC, or Plot.x() and Plot.y() in PyXspec). This removes the trailing zeros that padded the arrays when plot points were removed with the ignore or setplot rebin commands. Our thanks to Alexander Gewering-Peine for pointing this out. Report added on Aug 12, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSPlot/Plot/ PlotDirector.cxx

12.7.0h Fix for PyXspec only. Earlier patch 12.7.0f introduced a bug which occurs when a non-norm parameter is modified and set to a parameter link. In this case it does not perform the necessary automatic model recalculation. Our thanks to Adam Mantz for pointing this out. Report added on Aug 25, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Python/xspec/ PyModel.cxx

12.7.0i This fixes an obscure case where erroneous usage of "?" for command summary display is causing a crash. Our thanks to Sebastien Guillot for pointing this out. Report added on Sep 07, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/UserInterface/ unknow.cxx

12.7.0j Fix needed to allow gain fit parameters to be used along with custom energy arrays supplied by the energies command. (This includes the energies extend option.) Our thanks to Dominic Walton for pointing this out. Report added on Sep 07, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSModel/Data/Detector/ MultiResponse.cxx, RealResponse.cxx, src/XSModel/Model/ Model.cxx, .h and ModelBase.cxx

12.7.0k For PyXspec only. This improves the output of the Model.folded() class method for the case where there are ignored channels. Previously, bins in the folded model array were set to zero when they corresponded to ignored channels. Now they are removed from the array altogether. This ensures that the length of the folded model array always matches the number of noticed channels. Our thanks to Nakisa Nooraee for pointing this out. Report added on Sep 08, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Python/xspec/ PyModel.cxx

12.7.0l A crash can occur when trying to plot data while using a dummy response with no channel array. Our thanks to Randall Smith for pointing this out. Report added on Oct 05, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSPlot/Plot/ CreateBinnedPlotGroups.cxx

12.7.0m An enhancement for PyXspec. This adds the new function AllModels.simpars(), which provides the same functionality as standard XSPEC's tclout simpars command. The simulated parameter values are returned as a tuple of floats. Our thanks to Martin Sparre for this suggestion. Report added on Oct 05, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Python/xspec/ model.py

12.7.0n A fix for PyXspec. When a Parameter object's frozen attribute is toggled (to either freeze or thaw the parameter), the fit statistic's degrees-of-freedom doesn't get updated until a new fit is performed. It ought to be updated immediately. Our thanks to Sebastien Guillot for pointing this out. Report added on Oct 05, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Python/xspec/ PyModel.cxx

12.7.0o An enhancement for PyXspec. This adds the new attribute Fit.covariance, which holds (in a tuple) the covariance matrix values from the most recent fit. Our thanks to Sebastien Guillot for this suggestion. Report added on Oct 11, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Python/xspec/ fit.py

12.7.0p Fix for the obscure case of a model containing both 1) frozen norm parameters AND 2) an unfrozen norm for an additive component to the left of a multiplicative component. When these conditions exist the renorm operation may break, causing a fit to go astray. Our thanks to Hauke Worpel for pointing this out. Report added on Oct 28, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSModel/Model/Component/ MulComponent.cxx and SumComponent.cxx

12.7.0q Enhancements for PyXspec. This adds the object attribute Model.expression which stores the model expression string. It also adds AllModels.sources to the global AllModels container. This is a dictionary object containing the current source numbers with their assigned active models. Its key:value pairs are: [source number]:[model name]. Our thanks to Adam Mantz for these suggestions. Report added on Oct 28, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Python/xspec/ PyModel.cxx, .h, pyXspecmodule.cxx, and model.py

12.7.0r When using C-stat, if spectra with no backgrounds and different exposures and/or areascales are collected into the same data group, the renorming operation will miscalculate and can disrupt the fit. Our thanks to Jeremy Sanders for pointing this out. Report added on Dec 06, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSFit/StatMethod/Cstat/ Cstat.h

12.7.0s Fix for bug which caused errors in apec model when running v1.x of AtomDB and the wilm abundance option. Report added on Dec 08, 2011.

This patch modifies heasoft-6.11/Xspec/src/XSFunctions/ sumape.f

12.7.0t Fix for a crash which may occur when attempting to plot data for a spectrum which contains no noticed channels. Our thanks to Eduardo Ojero Pascual for pointing this out. Report added on Jan 03, 2012.

This patch modifies heasoft-6.11/Xspec/src/XSPlot/Plot/ PlotGroupCreator.cxx

12.7.0u This adds a new tclout option, tclout rerror, which is necessary for retrieving the results of an rerror command run on gain parameters. The syntax for this is:

   tclout rerror [< source number>:]< gain par number>

Our thanks to Matteo Guainazzi for bringing this to our attention. Report added on Jan 18, 2012.

This patch modifies heasoft-6.11/Xspec/src/XSUser/Handler/ xsTclout.cxx and src/XSUtil/Parse/ XSparse.cxx


Older Versions:

Final issues/patches pages:
    12.6.0
Links to v11 bugs pages:
       v11 Bugs       v11 Bug reporters

Xspec Xspec Home Page


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

Last modified: Thursday, 27-Dec-2012 14:28:00 EST