Skip to main content

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

********************************************************************************
                         RELEASE NOTES FOR HEASOFT 6.23
                                 March 7, 2018
********************************************************************************

The HEASoft 6.23 release is primarily driven by updates to the NICER
data analysis software, a new version of XSPEC, and bug fixes in the
CFITSIO library, but also includes new spectral analysis tasks and
other enhancements and fixes.

As before, configuration-related changes thoughout the package mean that
users who already have HEASoft v6.x.x installed will need to completely
replace their software installation; there is no clean way to simply
overlay this new release or to update an existing installation.

Important note for Ubuntu / Debian users:

* Another HEASoft release that supports the default compilers under Ubuntu
  18.04 LTS (as well as the interim Ubuntu releases since 16.04 LTS plus
  Debian 9 and newer) is forthcoming prior to the release of the 18.04 LTS
  operating system in April 2018.  Until that time, users are advised to
  do one of the following:

  - Delay updating beyond Ubuntu 16.04.x (or Debian 8.x)

  - Use the pre-compiled HEASoft binaries for Ubuntu (built in 16.04)

    or

  - Build HEASoft 6.23 using the compilers from the "gcc-4.8" package,
    i.e. prior to running configure, set up your environment as follows:

    $ sudo apt-get -y install gcc-4.8
    $ setenv CC gcc-4.8
    $ setenv CXX g++-4.8
    $ setenv FC gfortran-4.8


********************************************************************************
                                    CFITSIO
********************************************************************************

Version 3.43:

======

The NASA security team requires the following warning to all users of CFITSIO:

  The CFITSIO open source software project contains vulnerabilities that
  could allow a remote, unauthenticated attacker to take control of a
  server running the CFITSIO software.  These vulnerabilities affect all
  servers and products running the CFITSIO software.

  The CFITSIO team has released software updates to address these
  vulnerabilities.  There are no workarounds to address these
  vulnerabilities.  In all cases, the CFITSIO team is recommending
  an immediate update to resolve the issues.

======

- Fixed security vulnerabilities.

- Calls to https driver functions in cfileio.c need to be macro-
  protected by the HAVE_NET_SERVICES variable (as are the http and
  ftp driver function calls).  Otherwise CMake builds on native
  Windows will fail since drvrnet.o is left empty.

- Bug fix to ffmvec function.  Should be resetting a local colptr
  variable after making a call to ffiblk (which can reallocate Ftpr->
  tableptr).

- Ignore any attempted request to not quantize an image before
  compressing it if the image has integer datatype pixels.

********************************************************************************
                                    CCFITS
********************************************************************************

- Major update to remove FITSBase class, whose functionality is now
  implemented in the FITS class.

********************************************************************************
                                      FV
********************************************************************************

- Fixed crash occurring when selecting rows from an expression.

- Fixed vector column plotting for cases with e.g. X=TIME, Y=VECTOR_COLUMN[1],
  i.e. to plot only the first element of the vector column.

********************************************************************************
                                     HEASP
********************************************************************************

- General

  - Fixed some cases where vectors were being passed to methods by
    value, not by address.

  - Modified Makefile to remove dependencies on heautils, heaio and
    ape libraries, which are no longer required.

- pha, phaII

  - Add getGrouping method to return the content of the grouping
    array to a grouping object.

- rmf

  - Modified RandomChannels so that vectors of random numbers are
    passed in rather than generated internally.

- table

  - Fixed an error when reading which caused the last two entries
    in the Energies vector to have the same value.

- grouping

  - Added loadOptimal method for Kaastra & Bleeker optimal binning
    scheme.

  - Added loadFromVector method to make a grouping object from
    quality and grouping vectors.

********************************************************************************
                                   ATTITUDE
********************************************************************************

- coordinator: Increased input filename length to 512 instead of 128.

- prefilter: Fixed crash when computing COR_SAX.

- tristarid: The term reducing scores based on size of correction was
  causing high quality corrections to be discarded.  In HierTriMesh.pm,
  fixed epoch passed to listgsc.

********************************************************************************
                                   CALTOOLS
********************************************************************************

- udcif: Added filename to output error string when ciftmp cannot be written.

********************************************************************************
                                    HEASARC
********************************************************************************

- extractor: Fixed bug in case when the TIME column number exceeds 9.

- rbnpha et al.: Updates to allow file/path names with spaces.

********************************************************************************
                                    HEASIM
********************************************************************************

- Change: Calling sequence of the Raymond-Smith xspec model has changed;
          heasim has been modified accordingly

- Bug fix: Initialize variable that reports discarded background photons

- Bug fix: Poissonian noise was not applied to energy bin with few counts.
           Now applied to all energy bins

********************************************************************************
                                   HEASPTOOLS
********************************************************************************

Beta release of new suite of spectral analysis tools, based on the heasp
library and improving upon many of the older FTOOLS (see cross-index below):

 * ftaddarf - Add input ARF files with specified weights

 * ftaddrmf - Add input RMF files with specified weights

 * ftchkpha - Checks the validity of a FITS pha file

 * ftchkrmf - Checks the validity of a FITS response file

 * ftcmparf - Converts a type 2 ARF file to a type 1 ARF file

 * ftcmppha - Converts a type 2 pha file to a type 1 pha file

 * ftcmprmf - Compress RMF by removing response below a threshold

 * ftconvoldrsp - Converts old-style SF format response matrices to FITS

 * ftdmprmf - Displays OGIP standard Response FITS file

 * ftflx2tab - Read an input text file with one or more model spectra
   and convert to an XSPEC table model file

 * ftflx2xsp - Creates spectra and response files from an input text file
   of fluxes and errors

 * ftgcorpha - Remaps PHA channels from SPECTRUM extension

 * ftgcorrmf - Remaps a detector redistribution matrix in channel or
   energy space

 * ftgenrsp - Generic spectral response generator

 * ftgrouppha - Modifies the GROUPING column in a pha file using a number
   of possible criteria

 * ftmarfrmf - Multiplies/divides a detector redistribution matrix by an
   ancillary response dataset or a scalar

 * ftmkfiltrsp - Read an input text with a filter response to make a
   single channel response matrix

 * ftmkpha - Converts the text version of the old pha format and converts
   to standard FITS format.

 * ftmkrsp - Converts the text version of the old rsp format and converts
   to standard FITS format.

 * ftrbnarf - Rebins an ARF

 * ftrbnpha - Physically compresses (rebins) a PHA dataset in channel-space

 * ftrbnrmf - Physically compresses (rebins) an RMF dataset in channel-space
   and/or energy space

 * ftrgsrmfsmooth - Smooths an XMM RGS response matrix for an extended source

 * ftrsp2rmfarf - Splits an RSP file into an RMF and an ARF

 * ftsdss2xsp - Creates spectra and response files for XSPEC from an
   SDSS spectral file

 * ftstripnegchan - Removes negative channel numbers from a response
   matrix file

 * ftVOtable2xsp - Creates spectra and response files for XSPEC from
   VOtable spectrum

Cross index between heasptools and older FTools:

   FTOOLS           HEASPTOOLS

   addarf        -> ftaddarf
   addrmf        -> ftaddrmf
   arf2arf1      -> ftcmparf
   chkpha        -> ftchkpha
   chkrmf        -> ftchkrmf
   cmppha        -> ftcmppha
   cmprmf        -> ftcmprmf
   dmprmf        -> ftdmprmf
   flx2tab       -> ftflx2tab
   flx2xsp       -> ftflx2xsp
   gcorpha       -> ftgcorpha
   gcorrmf       -> ftgcorrmf
   genrsp        -> ftgenrsp
   grppha        -> ftgrouppha
   marfrmf       -> ftmarfrmf
   mkfiltrsp     -> ftmkfiltrsp
   rbnpha        -> ftrbnpha
   rbnrmf        -> ftrbnrmf
   rgsrmfsmooth  -> ftrgsrmfsmooth
   rsp2rmf       -> ftconvoldrsp
   rsp2rmfarf    -> ftrsp2rmfarf
   sdss2xsp      -> ftsdss2xsp
   sprbnarf      -> ftrbnarf
   VOtable2xsp   -> ftVOtable2xsp

********************************************************************************
                                   HEATOOLS
********************************************************************************

- ftmgtime: Fixed some xselect/extractor warning messages.  Only copy keywords
  to output if they do not already exist.

********************************************************************************
                                    XSELECT
********************************************************************************

- Modifications to allow directory paths containing spaces.

- xselect.mdb: Add NICER:trunc_spec_lo 0 to prevent TLMINn=-10 from
  confusing XSPEC.

********************************************************************************
                                     XSPEC
********************************************************************************

Xspec v12.10:

Models
------

The mdefine command now allows functions to be defined including xspec
model functions. Among the capabilities this enables is to redefine
model parameters. For instance, suppose we want to use the pexrav
model but have one parameter be the inclination instead of the cosine
of the inclination as defined in the  model. Then we define a new
model:
  mdefine mypex pexrav(g,f,refl,z,A,FeA,cos(Incl))

New models added are:
brnei, bvrnei, bvvrnei   - rnei models with line broadening
grbcomp                  - GRB prompt emission model
jet                      - Leptonic relativistic jet model
ssa                      - Strangeon star atmosphere model

The default AtomDB version number is now 3.0.9.
The xset APECMINFLUX option for apec models now includes the 1e14
normalization factor and the time dilation correction.
A new xset option APECBROADPSEUDO switches on line broadening of the
pseudo-continuum (this contains low emissivity lines which are not
individually tabulated in the AtomDB lines file.

Most of the model data files have been converted to FITS with in a
number of cases multiple files merged into a single file with multiple
extensions. This should make no difference to any results.

Uniform wrappers are now available for all model functions based on
the model name. C++ wrappers are CXX_modelname, C wrappers are
C_modelname, and Fortran wrappers are f_modelname.

The newpar command can now handle multiple ranges specified on the
command line.

Markov Chain Monte Carlo
------------------------

MCMC chains now work with response parameters.

Geweke's convergence diagnostic and the Deviance Information
Criterion have been added to the available output.

When plotting multiple chains each is now placed in its own
plot group (and hence plotted in a different color) instead of
being concatenated.

Added plots for running means and autocorrelations.

Added margin fraction option to tclout to return the fraction column
from the last margin command

Fixes
-----

All bug fixes to v12.9.1 released as patches are included in v12.10.0
In addition the following problems have been corrected:

The Pexrav model crashes with a negative or zero incomplete gamma value.

Steppar was mishandling parameters belonging to named models starting
with an 'l' or an 'n'.  It was mixing this up with the 'log' and 'nolog'
options.

The error command now handles the 'unnamed' specifier on the command
line.

Mdefine commands are now properly handled in save.xcm files.

XSPEC now properly handles extended file syntax such as "filename[n]"
and "filename+n" for cases where multiple HDUs share the same EXTNAME
and aren't differentiated by EXTVER.

Fix to editmod parsing error for certain cases of table model filenames
which include a hyphen.

The goodness command when run in parallel processing mode was breaking
if it had to prompt for continuation of a fit.

Memory leak fix and diagnostic message improvement made to
"tclout idline".

The "chain best" and "chain info" output should not rely on the
currently variable parameters but only the loaded chain files (which
aren't always the same).

Other
-----

Added CUSUM test statistic.

Fixed tclout filename for type II pha files

Added option to set background spectrum exposure time to multifake.tcl

Added options to plot goodness for the number of bins and the binning
type.

********************************************************************************
                                    PYXSPEC
********************************************************************************

New Features
++++++++++++

  - New methods for AllChains: margin() and marginResults(), best()
    and dic(), providing access to equivalent MCMC functionality in
    standard XSPEC.

  - The Chain class attribute: rescale.

  - Additions to Spectrum class: xflt and responsesUsed attributes,
    fileinfo() method.

  - AllModels.identify() method, wrapping standard XSPEC's 'identify'
    and 'tclout idline' functionality.

  - Fit.nullhyp attribute now wraps 'tclout nullhyp'.*

  - The Xset.parallel object now has additional attributes: steppar,
    walkers, and goodness, and a new show() method.*

Fixes
+++++

  - The Model.energies() function had been returning values as a list
    of strings.  This has been changed to a more convenient list of floats.

  - The Xset.restore() function was not properly handling 'cd' commands,
    nor gain fit parameters.*

(*) = previously available as XSPEC patches

********************************************************************************
                                    HITOMI
********************************************************************************

- Minor changes to improve support for various compilers.

********************************************************************************
                                     NICER
********************************************************************************

NICER DAS Version 3.0:

- New gain calibration methods including RATIONAL2 method

- nicercal: outdir parameter is now hidden.

- nicerl2 (NEW): Performs nicercal+nimaketime+nicermergeclean in one step

- nicerpi: Improved to handle new NICER energy scale calibration

- nicertimecal (NEW): Performs time calibration (nimpucal and nicercal
  perform time calibration)

- Changes to the nicercal/nimpucal/nicerpi chain to allow global time offset
  for HK timestamp interpolation (defaults to -0.5 sec to accomodate NICER
  timestamping and rounding to next highest second).

********************************************************************************
                                    SUZAKU
********************************************************************************

- Bug fix: Portability problem with random number generation on recent
  Mac OS.  This change affects multiple tasks, including xissimarfgen.

********************************************************************************
                                     SWIFT
********************************************************************************

UVOT:

- uvotdetect: Reworked pre/post-processing for SExtractor. Remove old
  detection modes. Treat old ALPHA and BETA modes as DEFAULT.

- uvotevtlc: Handle timebinalg=g (GTI) with external GTI file.  More
  robust handling of user-specified gtifile.

XRT (XRTDAS 3.4.1):

- xrtfilter: Added the handling of quick look sequences (*991) for the
  extrapolation of the values of the STAST_LOSSFCN/SAC_MODESTAT columns
  of the filter file.

********************************************************************************
                                      XTE
********************************************************************************

- pcadeadcalc2: Handle case where 'breakfile' is not specified.

********************************************************************************
                                      MISC
********************************************************************************

- New configure option: --enable-xs-models-only

  Replaces the previous ad hoc procedure for assembling the Xspec
  models-only package.

- New configure option: '--disable-x'

  Turns off X11 dependencies (by default, X11 dependencies are on).  When
  this option is used, all X-based PGPLOT drivers and the tasks fv, ximage,
  xseltk, xdf (XTE) and xsut (XTE) are disabled.