******************************************************************************** RELEASE NOTES FOR HEASOFT 6.30 March 14, 2022 ******************************************************************************** The HEASoft 6.30 release is driven by new data analysis software for IXPE and updates to other mission-specific packages (NICER, Swift), but as always includes other enhancements and fixes. Configuration-related changes throughout 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 ******************************************************************************** CFITSIO v4.1.0: - Calls to the zlib inflate() function in zcompress.c now handle the Z_BUF_ERROR return value rather than exiting. - The SUBTRACTIVE_DITHER_2 option has been removed when using the HCOMPRESS algorithm. - Updated fits_get_version function to return a float calculated from 3 version fields. - Added handling of SBYTE_IMG and ULONGLONG_IMG types to the fits_resize_img function. - Updates made to C/Fortran interfacing in cfortran.h and f77_wrap.h specifically driven by new Mac/ARM architecture. - Fix to the fits_insert_col functions to handle columns with TULONGLONG data. ******************************************************************************** HEASP ******************************************************************************** grouping: - Added inBin method to return whether an input element is in any output bin. - Trapped a possible segfault if the first channel of a group is set to bad quality but the other channels are good. pha: - Fixed rebinChannels for seg fault if the grouping starts by not including channels. - Added getMinSNOptimalGrouping to do optimal binning with an additional S/N criterion. rmf: - improved handling of the case of the FCHAN and/or NCHAN arrays being longer than the number of groups specified in N_GRP. table: - Fixed getValues error in calculating spectrum numbers for interpolation when there are XFLT keys set. - Fixed copy to add copying the filter expression map. - Fixed a possible seg fault when reading large table model files with additional parameters. ******************************************************************************** CALTOOLS ******************************************************************************** - quzcif: Added support for specifying a caldb version using the "caldbver" parameter; miscellaneous minor improvements - udcif: Will now add CALDBVER to 1st extension header in the CIF if it doesn't exist - Added support for HDUVERS=1.2.1 ******************************************************************************** FUTILS ******************************************************************************** - fselect: Replaced with a wrapper to ftselect (HEATools) - Removed obsolete task "ofverify" from the build. ******************************************************************************** HEAGEN ******************************************************************************** - barycorr: Added support for IXPE ******************************************************************************** HEASARC ******************************************************************************** - extractor: Added support for polarimetric data. The new parameter 'polwcol' should be set to the polarization weighting column (eg W_MOM for IXPE). If it is not "NONE" then sets of spectra and/or lightcurves are made for the I,Q,U Stokes parameters instead of a single spectrum and/or lightcurve. If the output spectrum is given as eg test.pha then the files written are testI.pha, testQ.pha, and testU.pha. Fixed bug when writing an output event file. The TIMEZERO keyword was written out as 0.0 instead of being copied from the input event file. Since event data are copied directly from the input to output event file no time correction is made so TIMEZERO must be left unchanged. This bug appears to date back to at least 1996 which is as far back as our logs go. Fixed a rare bug when a GTI is smaller than TIMEDEL. Trapped possible seg fault for event files with no image coordinates. - chkpha, chkrmf: Replaced with wrappers to the heasptools ftchkpha and ftchkrmf, respectively. ******************************************************************************** HEASPTOOLS ******************************************************************************** - ftgrouppha: Added "optsnmin" grouping option to combine optimal binning with a minimum S/N. ******************************************************************************** HEATOOLS ******************************************************************************** - ftcreate: Added support for 'K' data type, and improved handling of the 'M' type - ftlist: Fixed crash affecting 1-3A columns containing NULLs. ******************************************************************************** XIMAGE ******************************************************************************** - Updated for gfortran 12.x: Fixed "rank mismatch" compilation errors - Updated mkcolor and mkhratio tools to use Fortran 90 memory allocation ******************************************************************************** XSELECT ******************************************************************************** Added IXPE entries to xselect.mdb. Saves sets of spectra and/or lightcurves for the Stokes I,Q,U parameters. The plot spectrum and plot curve commands only plot the Stokes I parameter data. ******************************************************************************** XSPEC ******************************************************************************** Xspec 12.12.1: Changes to models - New spectropolarimetry models: polconst, polpow, pollin. Renamed mixpol to polmix for consistent naming scheme. - Replaced fixed size internal array in compbb with one which is allocatable. This fixes a potential problem with large numbers of energy bins. - Much simplified code for ismabs model which fixes offset by one bin problem when using the tabulated data. Converted ismabs, ismdust, and olivineabs to double precision fortran models (eg F_ismabs in model.dat). Rationalized variable names and removed copies of subroutines. - Added new math operators atan2, sinh, sinhd, cosh, coshd, tanh, tanhd, sign, heaviside, boxcar, atan, asinh, acosh, atanh, erf, erfc, gamma for use in mdefine and newpar. - mdefine can now recursively call other mdefine components. Changes to plots - Added option to appropriate plots to specify the plot group numbers to use in the plot. eg plot 1 data resid makes the data and residuals plots for plot group 1 only. - Added plot polangle and plot polfrac options. These plot polarization angle and fraction. One set of data points and errors are produced for each data group. Each data group must have complete sets of I,Q,U spectra. Changes to output - tclout stat now allows contributions to the fit statistic from individual spectra to be retrieved. Changes to internal functions - Made a version of tableInterpolate which passes a map of XFLT values instead of a spectrum number. This allows other users of the library to run their code without a spectrum loaded. - Changed variables and comments in LinearInterp to improve clarity. Added C and Fortran wrappers in XSFunctions/Utilities for the LinearInterp routines. Fixed error in linInterpInteg in first bin(s) if target binning is much finer than current. Added double precision versions of LinearInterp wrappers. Bug fixes not already released as patches - Batch mode scripts which did not exit were leaving command echoing in a disabled state. - When entering a Tcl control structure from the Xspec prompt, the new prompt string wrongly contained the "puts -nonewline" command. - When calling "setplot" with an abbreviated option name, quotes and escape characters were not handled properly. - Restored the ability for users to include header files from XSFunctions and XSFunction/Utilities in their local models, without having to also specify the path. - Fix to "mdefine" expression parsing when using MIN or MAX in combination with xspec model functions. PyXspec: Version 2.1.0 Feb 2022 [XSPEC 12.12.1] ----------------------------------------------- New Features ++++++++++++ - Parameter links may now be assigned directly to other parameter objects rather just to a string listing index numbers. For example it is now possible to do something like 'm2.gaussian.LineE.link = m1.gaussian.LineE'. - A new function 'xspec.callTableMod' gives local models written in Python access to Xspec's table model functionality. - A single spectrum's contribution to the overall fit statistic can now be accessed through the 'Spectrum.statistic' attribute. - PyXspec has been reorganized internally such that the portion that is compatible with the Xspec models-library-only distribution is now separated into it's own module, named 'mxspec'. The original 'xspec' module includes this, so the change should only be noticeable to those using a models-library-only distribution. See also: https://heasarc.gsfc.nasa.gov/lheasoft/xanadu/xspec/issues/issues.html ******************************************************************************** XSTAR ******************************************************************************** XSTAR v2.58e: Changes since version 2.57: - Trapped pointers out of bounds in fstepxx, rstepxx - Made floats output to fits tables e13.5 instead of e11.3 - Put back charge transfer which was erroneously removed in v2.56. - Put back He-like fine structure in database which was erroneously removed in v2.57. - Included a switch to take the absolute value of line wavelengths. In the database, lines with theoretical wavelengths are given negative wavelengths. These were not included in the synthetic spectrum calculation in previous versions. With the switch, called llinabs, set in the main xstar subroutine, this can be controlled. If llinabs=1 then the lines with negative wavelengths are included in the synthetic spectrum. - Fixed a bug that allowed an uninitialized variable to be used in the function interpol_huntd. This was very rare. ******************************************************************************** IXPE ******************************************************************************** New software for IXPE: ixpeadjmod - Remove spurious modulation of IXPE event files ixpecalcstokes - Calculate the Stokes parameters of IXPE event files ixpeevtrecon - Reconstruct events of IXPE event files ixpegaincorrpkmap - Calculate PI column values of IXPE event files ixpegaincorrtemp - Calculate PHA_T column values of IXPE event files ixpeweights - Calculate event-by-event weights of IXPE event files ixpeversion - Report IXPE software version Python Tasks: ixpeaspcorr - Correct for residual aspect errors ixpecalcfov - Calculate a map of the nominal sky FOV for each detector ixpechrgcorr - Apply the charging correction for IXPE event files ixpedet2j2000 - Transform event positions and Stokes parameters from detector to sky coordinates ixpeexpmap - Create an exposure map from aspect solution data ixpepolarization - Calculate Stokes parameters for a user-defined region ******************************************************************************** NICER ******************************************************************************** - nicerl2: * bug fix handling detlist parameter (detector events remain in event file even though detector is marked "deselected") * properly handle cases where ufdir/ufafile are non-standard * optimization to unzip large gzipped event files once rather than multiple times * keyword SOFTVER is written to outputs to indentify / update software revision * honor cleanup parameter when calling subtasks - nicerarf: * add warning messages for common failure conditions - niprefilter2: * major rewrite for performance and speed * bug fix for rarely housekeeping parameters (FPM_SLOW_LLD, HV_ON, FPM_NOISE25_COUNT, MPU_NOISE25_COUNT, MPU_NOISE25_PI_{AVG,ERR}) which is visible as truncated data in long data sets ******************************************************************************** NUSTAR ******************************************************************************** NuSTARDAS 2.1.2: - numkarf, numkrmf: Added 'CALDBVER' keyword to output ARF and RMF files. ******************************************************************************** SWIFT ******************************************************************************** UVOT: UVOT tools have been updated for small scale sensitivity (SSS) correction. At this time the SSS in CALDB distinguishes good and bad pixels. There may be cases when the user wants to override or ignore the new small scale sensitivity flagging. There are two ways to do this: a) using the parameter sssfile=NONE; b) using the parameter forcephot=true. - uvotsource: * Added QUALFLAG and PHOTFLAG columns to output table which capture quality flags and issues with photometry respectively. * Added parameter sssfile for small scale sensitivity flagging. The SSS raw position is adjusted by the best shift-and-add if known. * Display version banner and support parameter history. - uvotdetect: * Add SExtractor KRON_RADIUS column to output table. * Use platform independent drand for deterministic behavior. - uvotevtlc: * Corrected bounding of regions to ensure subimage passed to uvotsource fully contains the source and background regions. - uvotexpmap: * Added parameter maskminf to support masking by fractional exposure. * Added parameter sssfile which can be used to treat pixels with bad small scale sensitivity as a type of bad pixel. - uvotlc: * (NEW TASK) Create level III light curve from Level II UVOT data; includes small scale sensitivity correction parameter - uvotmaghist: * Added parameter sssfile for small scale sensitivity correction. - uvotpipeline: * Added parameter sssfile for small scale sensitivity (SSS) correction. * Added parameter expmapusesss to enable SSS flagging in exposure maps. * Added parameter lssmaps to control creation of LSS maps. - uvotproduct: * Added parameter sssfile for small scale sensitivity correction. - uvotrawevtimg: * Limit number of progress messages to prevent spamming the console when processing large event files. - uvotskylss: * Update output to use EXTNAME instead of HDUNAME keyword. * Honor history parameter. XRT (XRTDAS 3.7.0): - xrtmkarf: Fixed 1 pixel shift between source position and coordinates grid of exposure map and extraction region in WT mode data - xrtproducts: Fixed bug when input parameter 'phafile' is set to 'NONE' - xrtpipeline: Improved handling of case where 'stemoutputs' is not set to 'DEFAULT' ******************************************************************************** XTE ******************************************************************************** - fcollect: (v6.0) Fixed string overflow when checking for vector columns; general cleanup of FITS keyword parsing ******************************************************************************** HEASoftPy: ******************************************************************************** - New refactored version requires Python v3.7 (or newer). - All tasks are run through a class called HSPTask. - Native heasoft tools are available under: heasoftpy.task_name. - Support for pure-python tasks (see template in heasoftpy/packages/template). - Includes IXPE python tools (depend on: numpy, scipy and astropy). - Support for terminal and file logging. ******************************************************************************** MISC. ******************************************************************************** - Improved support for newer Apple clang; remains unsupported for MAXI, Suzaku, and XIMAGE. - Updated lynx package used by fhelp to version 2.9.0dev.9 to address configuration issues under macOS - Updated HEASoft copies of WCSLIB (7.7), FFTW (3.3.10), GSL (2.7), FGSL (1.5), TCL/TK (8.6.11), XPA (2.1.20) - PGPLOT GIF driver: Fixed valgrind error that was likely causing phantom problems with qdp HEASoft / FTOOLS Help Desk If FTOOLS has been useful in your research, please reference this site (https://heasarc.gsfc.nasa.gov/ftools) and use the ASCL reference for HEASoft [ascl:1408.004] or the ASCL reference for the original FTOOLs paper [ascl:9912.002]: Blackburn, J. K. 1995, in ASP Conf. Ser., Vol. 77, Astronomical Data Analysis Software and Systems IV, ed. R. A. Shaw, H. E. Payne, and J. J. E. Hayes (San Francisco: ASP), 367. Web page maintained by: Bryan K. Irby HEASARC Home | Observatories | Archive | Calibration | Software | Tools | Students/Teachers/Public Last modified: Monday, 28-Mar-2022 19:32:14 EDT HEASARC Staff Scientist Position - Applications are now being accepted for a Staff Scientist with significant experience and interest in the technical aspects of astrophysics research, to work in the High Energy Astrophysics Science Archive Research Center (HEASARC) at NASA Goddard Space Flight Center (GSFC) in Greenbelt, MD. Refer to the AAS Job register for full details. |