Skip to main content

Come analyze HEASARC, IRSA, and MAST data in the cloud! The Fornax Initiative is now welcoming all interested beta users.

Xspec Home Page

New in v12.13.1

New features

  • Parallelization
    • Added parallel processing to leven when usechainrule is no. Added xset usechainrule option to switch between fast and slow second derivatives so this can be done without changing Xspec.init and restarting xspec.
    • In the various models which use the apec code added option of multithreading over the temperatures for the calculation of lines in the spectrum. Multithreading here is turned on and off using xset APECMULTITHREAD. The default is off. For the basic apec model multithreading does not provide a speed advantage. However, if line broadening is selected (eg using bapec) then multithreading will speed up the calculation. Also, for models which combine multiple temperatures such as cooling flow or NEI models multithreading can provide a significant speed increase.

  • Spectropolarimetry plotting
    • Changed the polangle plot so that the angles all lie between the mean angle $\pm$90 degrees. This avoids plots where values jump between the top and bottom of the plot as the angle wraps around.
    • The polangle and polfrac plots now take account of any plot grouping set. If any spectrum in a data group is in the same plot group as a spectrum in another data group then all the spectra in the second data group are added to the plot group for the purposes of these plots only.
    • If any of the polfrac values or errors are calculated as NaNs then these are replaced by the PLT NO value and will not be plotted.

  • Mdefine
    • Fixed mdefine to handle the case when the user is mdefining a convolution model which consists only of an xspec convolution model.
    • Added support for table models using atable, mtable, or etable in mdefine expressions.
    • Added 2nd to 5th order Legendre polynomials to mdefine built-in functions.

  • Updated Models:
    • bwcyc: Tightened the boundaries of parameters; now treats NaN as positive infinity
    • cevmkl, cemekl: Increased lower limits of Tmax parameter
    • gabs: Fixed units for Strength parameter
    • tbnew: Reduced stderr logging of non-error announcements

  • Miscellaneous:
    • The syst command to set model systematic errors can now apply systematics to individual models (default or named) instead of to all models.
    • The precision of parameter values from tclout(r) has been increased to 10 figures.
    • The error command diagnostic output is now controlled by the chatter level.

Bug fixes

The following patches for 12.13.0 have been included:

  • 12.13.0a. When the X axis is in energies or wavelengths, plot delchi and plot fitstat (or plot chisq) are not being scaled properly. When the X axis is in wavelengths and perhz is on, plot counts is unable to construct its Y axis label.
  • 12.13.0b. If a model defined using mdefine calls another xspec model which requires a separate model calculation for each spectrum, that information is lost.
  • 12.13.0c. plot delchi and plot fitstat/chisq are not being properly scaled when spectra have multiple models assigned to them. This also restores the insertion of systematic model error into plot delchi and plot fitstat/chisq, and adds it to other plots that were previously ignoring it.
  • 12.13.0d. Fix to mdefine so that it can now include built-in Xspec convolution models as part of its expressions for additive and multiplicative mdefine components.
  • 12.13.0e. Added chain proposal uniform deltas [factor] and chain proposal uniform limits options. For backwards compatibility, chain proposal uniform defaults to chain proposal uniform limits.
  • 12.13.0f. The zkerrbb model undercalculates the flux (and luminosity) by a factor of (1+z)$^2$.
  • 12.13.0g. The Voigt line model can have a small sub-bin offset and incorrect shape.

In addition the following bugs have been fixed:

  • When the 'energies' command is in use for table models, a crash may occur if all data sets are cleared.
  • The 'tabint' function (for external programs using Xspec's table interpolation code) is not properly handling the case when default LOELIMIT and HIELIMIT are in use.