********************************************************************************
RELEASE NOTES FOR HEASOFT 6.25
October 22, 2018
********************************************************************************
The HEASoft 6.25 release is primarily driven by the new MAXI software
package and updates to the NICER data analysis software, but includes
other enhancements and fixes as well.
As before, configuration-related changes thoughout the package mean that
users who already have HEASoft 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.
********************************************************************************
CFITSIO
********************************************************************************
Version 3.46 - October 2018
- Added wildcard deletion syntax for columns, i.e. -COLNAM* will delete
the first matching column as always; -COLNAM*+ will delete all matching
columns (or none); exact symmetry with the keyword deletion syntax.
- Improved the algorithm for ensuring no tile dimensions are smaller
than 4 pixels for HCOMPRESS compression.
- Added new functions intended to assist in diagnosing (primarily
https) download issues: fits_show_download_progress,
fits_get_timeout, fits_set_timeout.
- Added the '-O <file>' option to fpack, which previously existed only
for funpack. Also added fpack/funpack auto-removal of .bz2 suffix
equivalent to what existed for .gz.
- For the fpack '-table' cases, warning message is now sent to stderr
instead of stdout. This is to allow users to pipe the results from
stdout in valid FITS format. (The warning message is otherwise placed
at the start of the FITS file and therefore corrupts it.)
- Fix made to the '-P' file prefix option in funpack.
Version 3.45 - May 2018
- New support for reading and writing unsigned long long datatypes.
This includes 'implicit datatype conversion' between the unsigned long
long datatype and all the other datatypes.
- Increased the hardcoded NMAXFILES setting for maximum number of
open files from 1000 to 10000.
- Fixed a parsing bug for image subsection and column binning range
specifiers that was introduced in v3.44.
********************************************************************************
CCFITS
********************************************************************************
- Enabled support of long string keywords (which use the CONTINUE key)
- Replaced all uses of std::auto_ptr with std::unique_ptr. This is made
in tandem with configuration changes which add a C++11 compiler flag
when necessary.
- Added capability for user to specify keyword categories to read/copy.
Removed TYP_WCS_KEY,TYP_CMPRS_KEY from s_iKeywordCategories, as they
are file-specific keywords.
- Bug fix to writeHistory and writeComment functions: when copying via
the get/write functions, mult-line input was not properly formatted
upon output.
********************************************************************************
ATTITUDE
********************************************************************************
- prefilter: Avoid invalid memory access
********************************************************************************
CALTOOLS
********************************************************************************
- quzcif: Added https support with retrieve=yes. Added optional download
progress bar display when retrieve=yes and chatter > 10
********************************************************************************
FIMAGE
********************************************************************************
- chimgtyp: Reworked prompt for output datatype parameter; this prevents an
infinite loop which occurred when the datatype was invalid or incorrectly
entered.
********************************************************************************
HEAGEN
********************************************************************************
- Replaced some tasks with wrappers to their new counterparts in the
heasptools component:
old heagen task: wraps to heasptools task:
flx2tab ftflx2tab
flx2xsp ftflx2xsp
mkfiltrsp ftmkfiltrsp
rgsrmfsmooth ftrgsrmfsmooth
rsp2rmfarf ftrsp2rmfarf
sdss2xsp ftsdss2xsp
sprbnarf ftrbnarf
- barycorr: Fixed bug in handling GTI extensions that are not exactly
named 'GTI'; allow orbitfiles=GEOCENTER for geocenter-to-barycenter
only correction
- ftadjustgti [NEW]: Perform filtering and normalization of good time
interval (GTI)
- xrtraytrace: Fixed bug that failed to detect an input energy value mismatch
with all energies in the array of multilayer reflectivity file energies
when the input energy list contained a valid energy immediately following
an invalid energy. The effect of the bug was to calculate the wrong
reflectivity value for all the input energy values that did not have a
counterpart in the reflectivity file.
- xrtreftable: Corrected some sign errors in relectivity and transmission
calculations. The use of the function cxpower for the square root of a
complex number was replaced by the intrinsic C++ square root function.
These corrections have no net effect on the reflectivity or transmission
because they exactly cancel each other out.
********************************************************************************
HEASARC
********************************************************************************
- extractor: Speed up in the case of a very large number of gti bins by
fixing calcbinsize so that it does not have to start at the first gti
every time.
********************************************************************************
HEASP
********************************************************************************
HEASP is updated to v2 which involves significant internal changes:
- All internal class members are now private and are accessed using
get and set routines. For example in pha the member m_FirstChannel is
set using setFirstChannel(value) and got using getFirstChannel().
For members which are vectors individual elements can be got and
set using for example getPhaElement(i) and setPhaElement(i,value).
- The Python module now uses numpy arrays for C++ vector
quantities. For example the Pha vector in pha can be set using
setPha(array([0.1,0.2,0.3,0.4,0.5]))
- Modified all methods for consistent use of const on input variables
and made methods themselves const if the object is not modified.
- Added more load methods and constructors.
- Removed members which store OGIP version numbers since it made no
sense to store these in classes.
- Added writeChecksum() functions when writing extensions
- Modified table::getValues to report to the SP error stack if a
requested parameter value is outside the tabulated values
- Removed copying of other keywords and extensions since these are not
operations from classes as these are not operations on the class.
- Improved error reporting on methods which call checkCompatibility().
- Added copying of COMMENT and HISTORY keywords to SPcopyKeys.
- Trapped possible seg fault and fixed error setting m_FirstElement
in rmf::update and fixed error in rmf::interpolateAndMultiply.
Corrected error in rmf::convertUnits when converting from wavelength
units. Fixed potential seg fault in rmf::estimatedFWHM when the
response maximum is in the first or last channel.
- Fixed bug in arf::rebin which was causing the arf to be summed
instead of averaged in the rebinning process.
********************************************************************************
HEASIM
********************************************************************************
- skyback: Fixed subscript order in maps; fixed bugs in using degree-pixel
sky maps. Updated FITS headers with full description in comments.
********************************************************************************
HEASPTOOLS
********************************************************************************
- ftaddarf: Fixed bug which caused a zero length arf to be written
- ftdmprmf: Fixed so that it doesn't also write to the terminal when
an output file is set
- ftflx2tab: Fixed bug which caused REDSHIFT keyword to always be set to F
- ftflx2xsp: Fixed memory error on channel vector and incorrect setting of detchans.
- ftgenrsp: Fixed typo causing seg fault when reading a resolution file;
Improved reading of input files and fixed error in calculating response
when setting the norm vector; Fixed bug in setting channel and energy
bins when using their respective break parameters
- ftrbnarf: Fixed prompting for binfact parameter
- ftrbnpha: Corrected errors in reading parameters and in calculating
binning factors for the FAINT2BRIGHT and BRIGHT2LINEAR methods
- ftrbnrmf: Minor efficiency improvement trapping cases when channel or
energy binning is linear with unit binning factor
********************************************************************************
HEATOOLS
********************************************************************************
- ftcalc: Added 'coldesc' parameter to allow specifying description of a
new column; default value coldesc=INDEF will preserve existing function.
- ftleapsec [NEW]: Calculate number of leap seconds at requested epoch
- ftlist: Fixed bug for case of reading 0-length variable-width bit
columns (type -TBIT). Fixed bug for case of variable-length string
columns (-TSTRING) in which the number of elements was incorrectly
calculated (can only be 0 or 1).
- ftsort: Allow sorting of 0-row input (produces 0-row output).
- ftsort + ftmergesort: Fixed compatibility with tables with variable-
length columns: ftsort and ftmergesort cannot copy a subset of a table
with variable-length columns (i.e. they can only copy the entire table).
********************************************************************************
TIME
********************************************************************************
- maketime:
Added parameters 'premax' and 'postmax' to allow finer control over how
files with large gaps are dealt with; premax=-1, postmax=-1 is the default
and recovers previous behavior for backwards compatibility
Added parameters 'mingti' and 'emptygti' to allow more fine-grained
control over GTI creation; defaults maintain existing expected behavior;
output can now be piped to STDOUT
Added parameter 'extname', which defaults to STDGTI for compatibility
with previous versions; added descriptions to START and STOP columns
********************************************************************************
XIMAGE
********************************************************************************
- Fixed random aborts when setting log file option on the command line
- Addressed Tcl "::unknown " messages in batch (.xco) processing
- skyview: Fixed to handle https addressing
********************************************************************************
XSPEC
********************************************************************************
HEASoft 6.25 includes Xspec 12.10.1.
- New models:
- zbknpower
- zlogpar
- agnsed
- qsosed
- (v)cph (note this included change to calcCoolingFlow function)
- relline, relline_lp, relline_lp_ext
- relconv, relconv_lp, relconv_lp_ext
- Modifications to models:
- Added an xset LINECRITLEVEL option for crtLevel for
gaussian/lorentzian/voigt lines. If set this overrides
the coded values.
- Modified diskline, rdblur, kdblur, kdblur2, laor, laor2, kerrconv,
kerrdisk for high resolution spectroscopy.
- Added tabint C/Fortran wrapper for tableInterpolate.
- Added statistic cstatbN option.
- PyXspec:
- It is now possible to call XSPEC's model functions directly from
PyXspec using the new function xspec.callModelFunction(). This
utility is particularly useful for users who wish to access
particular XSPEC model functions within their own local model
Python code.
- Some XSPEC model parameter names contained parentheses, which
were incompatible when used in PyXspec. Therefore parentheses
have been replaced with a single underscore.
See also:
https://heasarc.gsfc.nasa.gov/lheasoft/xanadu/xspec/issues/issues.html
********************************************************************************
XSTAR
********************************************************************************
Xstar v2.53:
Changes since 2.5:
- Implementation of lpri=-1 for very streamlined output; change to
xstinitable.par to allow for larger model grids
- Minor changes to print switches and more accurate criterion for
determining which lines are included in spectrum synthesis.
- Numerous Fortran syntactical changes
- Improved precision tests for which lines to include in emission
spectral calculation (binemis)
- Added emissivities to quantities output to file xo01_detal4.fits
********************************************************************************
EXOSAT
********************************************************************************
- exovig: Fixed "exovigrun: command not found" error
********************************************************************************
MAXI
********************************************************************************
- New package of analysis tasks for the MAXI mission:
mxextract - Extract source event from multiple HEALPix event files.
mxgrmfgen - Generate the response matrix file for GSC instrument.
mxgscandat - Calculate the time to when a source is in each of the
GSC FOV detectors.
mxgtiwmap - Calculate a weighted spatial distribution of events on
the detector.
mxlscan - Calculate a source lightcurve.
mxproduct - Generate the high level products (images lightcurves spectra
and response) for both instruments.
mxscancur - Determine the source position relative to the GSC or SSC
instrument.
mxsrmfgen - Generate the response matrix file for SSC instrument.
mxsscandat - Calculate the time to when a source is in SSC instrument FOV.
mxdownload_wget - Search and retrieve the archived MAXI data for a given
sky position and time interval
mxversion - Print the MAXI software package version
********************************************************************************
NICER
********************************************************************************
NICERDAS Version 5.0:
- nicerl2, nicercal, nicertimecal, nimpucal: Added leapinit option to
calculate leap seconds
- nicertimecal: Allow 0-row input files; Fixed bug when running non-
CALDB (wasn't querying leap seconds properly)
- nicertimeconv [NEW]: Basic time conversion for NICER time values
- nicerpi: Allow 0-row input files; Added new functions for NICER gain
calibration; added energycol output to get ENERGY column in output
if desired; allow PHA input to be float instead of int; change trend
stuff to MV_TREND instead of FT_TREND
- nimaketime: Updated maketime call to handle new {pre,post}max and
emptygti options
- nimpucal: Improved memory efficiency when calculating PI_RATIO
- niprefilter: Added column defaults when an APID file is missing;
added robofile support
- niextract-events: Fixed timefile=@name.lis bug; added history
task parameter
********************************************************************************
NUSTAR
********************************************************************************
- Improved handling of remote CALDB and file i/o diagnostic output.
********************************************************************************
SUZAKU
********************************************************************************
- xisrmfgen: Change to model the Si-K edge when calculating the response
function. The software includes new parameters (xi[0/1/2/3]_jmp_loene,
xi[0/1/2/3]_jmp_hiene, jnct_hiene, s1_factor) used in the model. This
software change requires the new CALDB version 20181010.
********************************************************************************
SWIFT
********************************************************************************
- uvotmaghist: Allow ignoring uvotsource errors; this sounds odd but is
allowed for the case where some UVOT images do not include the regions
of interest. Activate by setting the UVOTMAGHIST_IGNORE_UVOTSOURCE_ERRORS
environment variable to 1.
- XRTDAS: Improved handling of remote CALDB and file i/o diagnostic output.
********************************************************************************
MISC
********************************************************************************
- PGPLOT: Added Jonathan Irwin's SVG driver
- READLINE: Updated to v7.0 + current patches
- WCSLIB: Updated to v5.19.1