Chandra X-Ray Observatory
Skip to the navigation links
Last modified: 10 September 2018


CIAO 4.10 Release Notes

CIAO 4.10 is distributed for the following platforms:

  • Linux 64 bit (CentOS 6.9 / Red Hat Enterprise 6)
  • Linux 64 bit (Ubuntu 14.04)
  • Apple OS X 10.10 (Yosemite)
  • Apple OS X 10.11 (El Capitan)
  • Apple macOS 10.12 (Sierra) and 10.13 (High Sierra)

Users can install CIAO with either Python 2.7 or with Python 3.5 (default). Both Python 2.7 and Python 3.5 versions can be installed but must be installed into separate directories.

CIAO is no longer available for 32bit Linux operating systems or for older 64bit Linux systems (CentOS 5 era). CIAO is also no longer available for older versions of OSX: OSX Mavericks and earlier. CIAO 4.7 is still available for users who are unable to upgrade. More details on the Platform Support page.

Notable changes and improvements in CIAO 4.10:

  • CIAO pre-built binaries are now provided for a larger number of operating systems: Linux Fedora based systems (such as RedHat, CentOS, Scientific Linux), Linux Ubuntu based systems (such as LinuxMint), and individually for each Apple release: Yosemite, ElCapitan, and Sierra. The Sierra build is also used for High Sierra.
  • The default for CIAO 4.10 is to use Python 3.5. Users can separately install the Python 2.7 version if they cannot upgrade their local pacakges.

  • This is primarily a maintenance release: bug fixes, supporting new compilers and OTS upgrades.

  • CIAO includes version 7.6 of SAOImage ds9. Users are reminded that they now need to change the Edit mode setting in order to select or create regions in recent versions of ds9. Please see the watchout page for more information on this.

  • Sherpa updates include changes released in version 4.9.1. The XSPEC models have been updated to version 12.9.1n. As a reminder, Sherpa is also available as a stand alone system, accessible from the Sherpa GitHub repository or from the standalone Sherpa page.

  • The CXC Datamodel has been updated to support pixel mask based filtering to complement existing shape-based region filtering. See the Using Pixel Mask Filters thread for a introduction. Be sure to read the knowns bugs and caveats page prior to use.

  • Several tools have been updated including

    • A bug fix in dmimgpick affecting the closest method for pixels slightly outside the image boundaries.
    • The celldetect tool can now operate on larger images before it internally rebins them.
    • Reprojected datasets are now supported by the dither_region. Users need to specify the wcsfile parameter.
    • dmextract now allows weighting when computing radial profiles from event files.

  • The python region module has been updated to provide more access to individual region properties (without having to split and parse string representations).
  • There have been several scripts updates since the CIAO 4.9 release, including: blanksky_image, merge_obs, and search_csc.

How CALDB 4.8.0 Affects Your Analysis

CALDB 4.8.0 Release Notes (release 11 September 2018)

ACIS Imaging and Grating Data

  • Time-dependent ACIS Gain (T_GAIN) Files for -120 C Data

    The new, combined time-dependent ACIS Gain (T_GAIN) file for February-April 2018 (Epoch 73) and May-July 2018 (Epoch 74) are introduced. The combined Epochs 71+72 file has also been updated since CALDB 4.7.8. Therefore, the new T_GAIN affects observations taken since 2017 August 01. Other observations are unaffected by these new calibration files.

    Users working with ACIS data taken since 2017 August 01 may wish to run chandra_repro and reprocess the data to improve the T_GAIN calibration. The DATE-OBS header keyword records the observation start date.

    See the time-dependent ACIS T_GAIN why page for more information.

    The gain corrections are at the nominal and expected levels of less than 1% of the energy value and users interested in CCD spectroscopy may benefit in applying the new gain adjustment. Grating spectroscopy benefits as well, in the form of improved order sorting. It is unnecessary to apply this adjustment for only doing timing or imaging analysis, although doing so will not have a negative effect.

    Note that only spectra with several hundreds of counts and/or prominent features (in emission or absorption) will show changes from the T-gain refinement that exceed the uncertainties from the gain calibration.

  • Header for early Non-CTI Corrected T_GAIN Files

    This change affects only users trying to remove CTI corrections from data sets, setting CTI_APP = NNNNNNNNNN, and running acis_process_events. Technical details and the details about this update can be found in the CALDB 4.8.0 Release Notes.

How CALDB 4.7.9 Affects Your Analysis

CALDB 4.7.9 Release Notes (release 28 June 2018)

ACIS Imaging and Grating Data

  • ACIS QE Contamination Model vN0011

    The ACIS QE contamination model has been upgraded to N0011:


    This version of the file affects ACIS-I chips only. Ongoing calibration work has shown that the contamination layer on the optical blocking filter is thinner than anticipated, with a slower build up of the absorbing layer than was predicted in the prior N0010 contamination model. Relative to the prior model, there is a small (several percent) increase in the absorption from contamination extending from early in the mission (~2004), but decreases beginning in 2016, with the absorption being several percent less in mid-2018 than was predicted.

    The new contamination model provides considerably better model fits to calibration observations of Abell 1795 and E0102-72.3 taken since the beginning of 2018, while not significantly affecting modeling results for previous observations of those sources, although there is some change in the contamination modeling retroactive to earlier in the mission. (This is the usual case with adjustments to the CONTAM files, so it is nothing out of the ordinary.) Users analyzing the most recent data on ACIS-I will definitely benefit from the new model.

    Corrections for the contamination model on ACIS-S chips have been, hitherto, less successful but will be forthcoming, hopefully in the next CalDB release currently scheduled for late August-early September 2018.

    More information about the N0011 contamination model, and prior versions, can be found in the ACIS QE contamination model Why document. A detailed presentation of the derivation of the new model—and the resulting changes in the estimated time-dependent effective area of ACIS-I and ACIS-S—is in the technical details section of the CALDB 4.7.9 Release Notes.

    These CIAO response tools automatically apply the contamination file when creating ACIS response files:

    As well as the scripts which use them:

HRC Grating and Imaging Data

  • HRC-I Time-Dependent QE Files

    The HRC-I quantum efficiency QE has been decaying for some time, particularly since the year 2011, when a 5% to 10% per year reduction has been measured. To address this issue, the HRC-I Calibration Team has elected to release a series of 26 new QE files into CalDB to correct for this effect. These new QE files affects all HRC-I observations since the start of the mission. The HRC-I QE change affects the results from mkinstmap and fluximage.

  • HRC-S Time-Dependent QEU Files

    The HRC-S quantum efficiency Uniformity files have been modified to account for the time-varying quantum efficiency of the HRC-S. Recently it has been determined that the QE is decaying more rapidly than before, up to 10% per year rather than the consistent ~0.5% per year drop in the QE across the first-order LETG spectrum, and somewhat steeper drop in the zeroth-order, since the mission launch. The new set of N0009 QEU files are introduced, unevenly distributed in effective dates, while all prior versions of the HRC-S QEU files have been removed. This update affects every HRC-S observation since the start of the mission.

    These CIAO tools and scripts automatically apply the HRC-S QE and QEU files when creating response files:

How CALDB 4.7.8 Affects Your Analysis

CALDB 4.7.8 Release Notes (release 19 March 2018)

ACIS Imaging and Grating Data

  • Time-dependent ACIS Gain (T_GAIN) Files for -120 C Data

    The new, combined time-dependent ACIS Gain (T_GAIN) file for August-October 2017 (Epoch 71) and November 2017-January 2018 (Epoch 72) are introduced. The combined Epochs 69+70 file has also been updated since CALDB 4.7.6. Therefore, the new T_GAIN affects observations taken since 2017 May 02. Other observations are unaffected by these new calibration files.

    Users working with ACIS data taken since 2016 November 01 may wish to run chandra_repro and reprocess the data to improve the T_GAIN calibration. The DATE-OBS header keyword records the observation start date.

    See the time-dependent ACIS T_GAIN why page for more information.

    The gain corrections are at the nominal and expected levels of less than 1% of the energy value and users interested in CCD spectroscopy may benefit in applying the new gain adjustment. Grating spectroscopy benefits as well, in the form of improved order sorting. It is unnecessary to apply this adjustment for only doing timing or imaging analysis, although doing so will not have a negative effect.

    Note that only spectra with several hundreds of counts and/or prominent features (in emission or absorption) will show changes from the T-gain refinement that exceed the uncertainties from the gain calibration.

HRC-S Data

  • HRC-S GAPLOOKUP (degap) Upgrades

    The HRC-S calibration team has developed a correction to the existing GAPLOOKUP table for the degap solutions (previously released in CalDB 4.5.0), which introduced a small offset in the positions of photons near the aimpoint. This new version N0004 DEGAP file corrects the issue, by including a shift of +2.5 pixels (approximately 0.018 Å) to all degap corrections (in CRSV) near the aimpoint position.

    The new degap solution reduces a wavelength shift derived from HRC-S/LETG observations of Capella. A full explanation of the new degap correction is given on the HRC Calibration Web page at DEGAP Update for HRC-S2; a collection of degapping memos, reports, and presentations; and a general overview on HRC degapping can be found on the HRC Degap why page.

    It is recommended that all archival HRC-S data be reprocessed with the new GAPLOOKUP tables, including the more recent HRC-S data that have already been reprocessed with the previous GAPLOOKUP table.


Users should be aware of these installation items before installing CIAO 4.10. Additional problems which are seen less frequently are listed on the Installation & Smoke Tests bug page.

Supported Platforms

  • CIAO 4.10 is supported on:

    • Linux 64 bit (CentOS 6.8 / Red Hat Enterprise 6)
    • Linux 64 bit (Ubuntu 14.04)
    • Apple OS X 10.10 (Yosemite)
    • Apple OS X 10.11 (El Capitan)
    • Apple macOS 10.12 (Sierra) and macOS 10.13 (High Sierra)

    Users can install CIAO with either Python 2.7 or with Python 3.5 (default); however, you must not install both into the same directory.

Updates to the ciao-install Installation Script

  • CIAO 4.10 has switched to use Python 3.5 as the default. Users can separately install the Python 2.7 version using the --python2 flag

    $ bash ./Downloads/ciao-install --python2

IPython Settings

  • Users will be prompted to update their IPython profiles the first time they run sherpa and chips.

    Users will also be prompted to update their IPython profiles whenever they switch between the Python2.7 and Python 3.5 builds.

Remove old parameter files

  • With every new CIAO release, some parameter files are changed: new parameters may be added and occasionally old ones removed or renamed. Deleting or renaming the local parameter directory ensures that the correct parameter files will be accessed the first time a tool is run:

    unix% rm ~/cxcds_param4/*


CIAO 4.10 introduces support for pixel mask filters. These are 2D images whose pixels indicates which data are to be removed (pixels equal to zero) or included (pixels not equal to zero).

unix% dmcopy "acis_evt.fits[sky=mask(mask_image.fits)]" filtered_evt.fits

Pixel masks complement the existing shaped based region filters (circles, ellipses, polygons, boxes, etc) and can be used in many of the same ways as regions.

The new Using Pixel Mask Filters thread provides an introduction to masks. Be sure to check the pixel mask bug page for known bugs important caveats.



  • Check for mask() regions; error out nicely.

  • Modified acis_find_afterglow to use double precision instead of long double precision. The additional precision was causing issues on Sierra after xcode 9 upgrade.


  • Fix issue when using writefft=yes


  • Fixed problem when type=rsp. The RMF is now correctly multiplied by the ARF.


  • The maxlogicalwindow parameter now controls the maximum image size on which celldetect can operate. Previously any image with either axis over 2048 would be automatically rebinned.


  • Improved error checking when working with regions.


  • Updates to support datasets where the aimpoint of the spacecraft is different than the tangent point used in the WCS. This requires user specify the wcsfile parameter.

    The wcsfile is now a queried (required) parameter.


  • Updates support diffing masks in subspace.

  • Tweak to warning messages when files have mismatched column names.

  • Fixed issues with units and error_on_units when dealing with images.


  • Updated to support pixel mask directive, mask(), in the binning syntax.

  • Added ability to apply weights when using opt=generic

    dmextract table.fits[bin sky=annulus(4096,4096,0:100:10);energy] op=generic
  • Fixed behavior when binning on virtual columns where the units of the parameters were not being interpreted correctly.

    dmextract table.fits[bin eqpos=annulus(34.56677,-78.23331,0:0.1:0.001)] op=generic


  • Updated to support mask() syntax


  • Updated to check for mask() syntax and error out if found.


  • Updated to support mask() syntax


  • Fixes problem for method=closest when locations are beyond 0.5 pixel to the left or bottom of the image. Note: this change can lead a change in values for locations that are equidistant from multiple pixels (ie on the edges of pixel boundaries, where 'closest' is not unique).

    Fixes problem with method=min and method=max when the pixel values are NaN.


  • Fixed problem when listing the subspace which contains a lengthy region expression.


  • Updated to support mask() syntax

    Since masks cannot be written to either ASCII region files (ie ds9) nor FITS region files, this results in an error.


  • Changed default bad event file to ".fits"


  • New parameter compute_conf to skip the computation of the confused state of the region (stored in the CONFUSED keyword). Setting this to "no" may allow the tool to run considerably faster.

  • New parameters srcfactor and srcfunction control the scaling of overlapping sources in the background region.

  • The tool now explicitly checks that the input file only contains ellipse, circle, and rotbox shaped regions. Other shapes (including masks) are not supported.

  • Updates to error if attempting to use a mask() for the fovregion or streakregion.


  • Fixes problem when RA or ROLL wraps at 360 degrees.

  • Fix for static ROLL (min(ROLL)==max(ROLL)) which previously produced degenerate polygons.


  • Fixed crash when asolfile was specified but oscolfile was left blank.


  • Fix problems with Python 3.


  • Fix problems with Python 3.

Parameter Files

A summary of parameter files changes is provided in this section. Refer to the Tools and Analysis Scripts sections of these release notes for complete details.

We recommend deleting all the old parameter files or renaming the parameter-file directory before running any new version of CIAO to avoid conflicts. More information is available in the FAQ.


  • New maxlogicalwindow parameter controls size of max image size allowed before tool internally crops and rebins.


  • The wcsfile has been change from a hidden to a queried parameter due to its importance when working with reprojected datasets.


  • The default for the badfile (bad event file) is now lev1_bad_evts.fits. The previous default ended in .qp which failed to create an IRAF style QPOE file which are no longer supported.


  • New compute_conf parameter controls whether the confused state of the regions is computed or not.

  • New srcfactor and srcfunction control the scaling of source sizes that are excluded in the background regions.


  • Fixed a problem causing a chips server crash using log_scale() when the first data point is negative.

    This is unrelated to the issue with the clear() command on macOS Sierra. That issue remains in this release.


Sherpa is developed as a community project, and is available on GitHub. Comments, fixes, and additions from the community are welcomed. There are additional releases for this version throughout the year, and can be installed either directly from GitHub or using the conda package manager, as described on the standalone Sherpa page.


Bug fixes

  • The updates in this version of Sherpa are listed below.

    This release introduces support for XSPEC 12.9.1n models, as well as the ability to use aliases for parameter names.
    Some parameter names have been deprecated and may be removed in a future release. We reviewed the parameter
    limits for many models and updated them to reflect the latest XSPEC specification. Also, multiple versions of XSPEC are
    now supported, through optional models and version-dependent low-level function calls. This feature is for advanced
    users building Sherpa from source. Note that Sherpa has been tested against XSPEC 12.9.0i, 12.9.0o, and 12.9.1n.
    Sherpa in CIAO 4.10 also fixes several bugs related to the support of instrumental responses, including improved
    support of XMM and Swift responses. Other fixes include a significant bug in the support of user statistics, improvements
    to the Python 3 compatibility, more robust usage of the numpy API, and several other minor bug fixes and new tests.
    #430 Update XSPEC parameters; XSPEC model parameter default values, limits, and properties were reviewed and updated to
    reflect changes in or mismatches with the model.dat file shipped with XSPEC 12.9.1n.
    #428 handle function name changes in XSPEC 12.9.1; Sherpa now supports multiple versions of the XSPEC models from the
    12.9.0 and 12.9.1 series. Some models recommend using the C-style interface over the older FORTRAN one, which may also
    resolve some memory access issues. For CIAO 4.10 users this means the interfaces to XSPEC models have been updated to
    the 12.9.1n versions. For Standalone Sherpa users this means they can build and run Sherpa against a larger range of XSPEC
    versions, and Sherpa will pick the XSPEC low level model function accordingly. Note that Sherpa has been tested against
    XSPEC 12.9.0i, 12.9.0o, and 12.9.1n. The 14 models that have been changed are: apec, bapec, bvapec, bvvapec, gaussian,
    lorentz, meka, mekal, raymond, vapec, vmeka, vmekal, vraymond, and vvapec.
    #427 Add support for XSPEC models added in 12.9.1 (fix #331); Add support for models added in XSPEC 12.9.1: bvtapec,
    bvvtapec, tapec, vtapec, vvtapec, carbatm, hatm, ismabs, slimbh, snapec, TBfeo, TBgas, TBpcf, TBrel, voigt, xscat. Version
    12.9.0 of XSPEC can still be used, in which case the models can be generated-e.g. a user can say xstapec.mdl to create a
    Python object - but it will error out when evaluated. The Si and S elemental parameters for the ismabs model have been
    renamed from the XSPEC versions since they are not unique using the caseinsensitive matching used by Sherpa: so SI, SII, SIII
    and SiI, SiII, SiIII have been renamed S_I, S_II, S_III and Si_I, Si_II, and Si_III respectively. Low level support for the following
    convolution models from XSPEC 12.9.1 has also been added, but there is no Python model support for these: clumin, rfxconv,
    vashift, vmshift, xilconv.
    #412 support ROSAT PSPC (and similar) RMF files with AstroPy; Add explicit tests for reading in, and using, ROSAT PSPC
    PHA and RMF files. Fix a bug in the AstroPy back-end handling of the ROSAT RMF file.
    #409 EmissionGaussian model when skew parameter is not unity (fix #403); The `sherpa.astro.optical.EmissionGaussian` code
    has been fixed for the case when the skew parameter is not unity. The documentation has also been updated.
    #399 Python 3 fixes and new tests for pha2 datasets; Fixed several problems when using Sherpa with Python 3: failures when
    calling `list_bkg_ids` and `list_response_ids` and the parameter querying after `paramprompt(True)` has been called. There is
    also a change to avoid a `FutureWarning` being raised in the astropy backend when reading in PHA2 data files. Tests have been
    added to test the reading of a PHA2 format dataset, and new files added to the `sherpa-test-data` repository for this purpose.
    #398 Check that list_samplers returns a list (fix #397); The `list_samplers` function now returns a list in Python 3 as well.
    #396 Fix `set_xlog` and related commands using Python 3 (fix #393); Fix use of commands that set the plot state using the
    `sherpa.astro.ui` module, such as `set_xlog` and `set_xlinear`, when using Python 3.
    #395 Add xspec optional models; Sherpa has new infrastructure for supporting multiple versions of XSPEC at the same time,
    with models that are built and enabled conditionally depending on the version of XSPEC being linked. Models are assumed to
    have the same parameters and low level functions across supported versions.
    #393 XSPEC build and functionality improvements; Add support for reading and changing the path to the XSPEC "manager"
    directory, and reading the current XSPEC "model" directory (`get_xspath_manager`, `set_xspath_manager`, and
    `get_xspath_model`). These are intended for the power user and so require an explicit import from `sherpa.astro.xspec`. There
    are several improvements to the build and interface to the XSPEC model library: these have no user-visible changes.
    #390 Add nlapec model; The `nlapec` XSpec model has been added. Note that XSPEC 12.9.0 is now required.
    #385 DS9 calls return string in Python 2 and 3 (fix #319); Some low lever `xpa` calls were returning byte strings rather than
    strings in Python 3. This had particular impact on the `image_getregion` function. This has now been fixed.
    #383 Replace 0-energy bins in ARF and RMFs (fix #332); Sherpa now performs some validation of the energy ranges of ARF
    and RMF files against the OGIP standard. If the ranges are inconsistent then the code will return with an error. If one energy
    bound is 0 the bound is replaced with a small number to avoid numerical issues like division by zero. A new configuration option
    `minimum_energy`, if present, allows users to override Sherpa's default behavior.
    #379 Use a line not span to draw horizontal line (fix #378); Ensure that the line at y=0 (residual) or y=1 (ratio) is drawn for
    residual or ratio plots when using matplotlib 2.0.
    #373 Make sure ds9 properly works with Python 2.7 (fix #368); For Python versions prior to 3.2 add in explicit code to make
    _Popen work as a context manager.
    #368 Remove ds9 warnings when run under Python 3.6; Update the DS9 code so that external processes are cleaned up
    properly, so to remove the potential ResourceWarning warnings when running DS9 on Python 3.6.
    #358 Properly handle Swift RMF when using Astropy backend (fix #357). A Swift RMF could not be read in when the AstroPy
    back end was in use. The problem was that the code did not support RMF matrices that were not stored as variable-length
    arrays. This has now been fixed, and new tests have been added for this kind of files.
    #352 Add low-level support for the XSPEC rgsxsrc convolution model; Add low-level support for the rgsxsrc convolution model in
    XSPEC. This is intended for R&D into fully supporting XSPEC convolution models in Sherpa.
    #351 Fix handling of AREASCAL column in PHA files (fix #350); Add support for handling the AREASCAL value (either scalar of
    vector) for PHA data sets. This array is used in XMM RGS data to handle missing chips.
    #343 Fix user statistics regression (fix #341); A number of regressions were introduced in version 4.8.1 up to version 4.9.0, so u
    ser statistics that were properly working in version 4.7 have not been working any more. This has been fixed, and a number of
    regression tests have been added.
    #255 Add aliases for parameter names so to support new xspec names (fix #74); The XSPEC models have been updated to use
    parameter names that match the new XSPEC naming scheme introduced in XSPEC 12.9.0. The old parameter names can still b
    e used as aliases for the new name, but are deprecated and may be removed in a next major release. Note this allows any
    models to define aliases for their parameters.

Graphical User Interfaces


  • The latest obsvis calibration file to support observation cycle 20 is included.


  • Issues with verbose parameter has been resolved.

Analysis Scripts


  • This script has been removed from CIAO since the DS_IDENT keyword and dataset macro is no longer supported by publishers.


  • Removes work-around for CALDB treating "0" as a NULL value.


  • Support added for multi-chip reference images with subspace components containing more than one CCD ID, which often occurs for image files generated by fluximage.


  • Updates to allow the script to work when no background spectra have been extracted. Internal updates to use standard wrapper for tgsplit tool.


  • Updated to allow it to work with file names containing DM filters.


  • Create additional per-chip gARFs to deal with the case when zero-order is not on ACIS-7.


  • The roll is now taken from the ROLL_PNT keyword in preference to the ROLL_NOM keyword (as was previously always used). This will only make a difference for data that has been corrected for astrometry shifts or reprojected, and the small number of multi-ObI data sets. The plate scale is now taken from the pixlib settings rather than hard coded, which means that radii for HRC values will decrease by ~0.05%.


  • Create additional per-chip gARFs to deal with the case when zero-order is not on ACIS-7.


  • Force script to use bash shell to fix issue on Ubuntu which defaults to using dash.


  • When using ray files from ChaRT, users can now set ra=INDEF and dec=INDEF and the values used in the ChaRT simulation will be used automatically.


  • PI filtering of spectrum added if the channel parameter is not the default instead of the filter being applied to just the RMF.


  • Restored support for combining interleaved-mode observations that was lost due to file handling changes introduced in CIAO 4.7 when also trying to handle multi-ObI observations through the ciao_contrib._tools.merging module.

  • Cleanup of duplicate imgout= in dmimgcalc syntax

  • Improved error handling when SIAP service is offline.


  • Updated for parameter changes in this release.


  • Documentation updates.


Python Modules


  • Corrects problem where reading large file where a filter has been applied could read the wrong values.
  • Fixed output subspace issue when input file was read-in with a vector column (eg sky) filter.

  • Fixed problem with ASCII files when path+filename exceeded 80 characters.

  • Fix case sensitivity of virtual vector column names, eg Dec vs. DEC, when passing into WCS library.


  • New object oriented interface to the region module. Users can

    • Users can parse region files, region strings, and even extract regions stored in a files data subspace.
    • Users can use shapes to create regions (circle, ellipse, polygon, etc.)
    • Regions can be intersected (logical AND), unioned (logical OR) and inverted (logical NOT) using common operators,
      >>> circle(4095,5096,100)-box(4100,5100,10,10)
    • Provides access to raw (binary) shape values, such X&Y position and radii. Previously only the truncated string representation of the value was available.
    • Methods are provided to get the area of the region, get the extent (ie bounding box), modify shape properties, write region files, and check if a position is_inside the region.
  • Plugged various memory leaks.



  • Correctly differentiate between '0' and 'None'

  • Now checks the format of time values including: cal_vsd, cal_vst, cal_ved, cal_vet, ref_time, and end_time in both caldb-lib and calindex-tool levels.

  • Corrects SegV produced by negative array index, now checks calculated index validity prior to use. This is the cause of some random "std::out_of_range:basic_string::erase" error messages.


  • Fix problem in C++ wrappers (related to peg fix).


  • Fix problem with long (>1024) parameter values such as complex dmimgcalc operations.


  • The CXC datamodel now supports filtering tables and images using a 2D pixel masks. These can be used in many of the same ways as regions.

  • A change in CIAO 4.9 resulted in filtering a file with a region entirely outside the axis limits to be reported as an error.

    CIAO 4.10 restores the earlier behavior. When a file is filtered with a region entirely outside the axis limits, it will now produce a 0x0 image (or 0 row table) and produce a warning.

  • Better handling of non-compliant CONTINUE keywords including CONTINUE= and CONITNUE keywords without any value.

  • Fixed problem where duplicate rows would be written to region subspace blocks for each subspace component (GTI).

    Region subspace blocks are not used in Chandra data products.

  • Change so that an empty FITS region file (zero rows) produces an empty region instead of point(0,0).


  • Internal cleanup to ensure all variables are properly initialized.

  • Ensure consistency when computing the union of a non-null region with a null-region.


  • A trailing '/' is preserved when expanding a stack. Previously it would be stripped of if the expanded item was not a directory.


Off-the-Shelf (OTS) Package Versions

  • The following OTS packages are included with CIAO 4.10. For more information on how the OTS packages are built for use with CIAO, refer to the INSTALL_SOURCE file distributed with the software.


    • ds9 7.6


    • either Python 2.7.14 or Python 3.5.4
      Frameworks on OSX have been disabled to avoid a problem with users picking up the wrong version of NumPy.
    • NumPy 1.12.1
    • ipython 4.2.0
    • six 1.10.0


    • cfitsio v3.420
    • readline 6.3
    • wcssubs 3.9.5
    • XSPEC v12.9.1n (models only)
    • fftw 3.3.6
    • gsl 2.3
    • xerces 3.1.4
    • VTK 5.10.1
    • CCfits 2.5
    • fontconfig 2.8.0
    • freetype 2.4.4
    • vte 0.25.1
    • xpa 2.1.15
    • jpeg 9b
  • The ciaover command will now report the version of the Calibration Database as well as the version of the Analysis Scripts package. In addition the full path to the Python executable is shown (even when using the precompiled CIAO version).

Compiler versions

  • The following versions of the gcc compiler were used to compile the binary CIAO releases:
    System Build System Version
    Linux64 CentOS 6 gcc 4.4.7
    LinuxU Ubuntu 14.04 gcc 4.8.4
    osxy Yosemite llvm 7.0.2
    osxElCap ElCapitan llvm 7.0.3
    osxSierra Sierra llvm 8.0.0


Many pages have been updated to reflect the changes in this release. Several analysis threads are still under review.

Last modified: 10 September 2018
Smithsonian Institute Smithsonian Institute

The Chandra X-Ray Center (CXC) is operated for NASA by the Smithsonian Astrophysical Observatory. 60 Garden Street, Cambridge, MA 02138 USA.   Email: Smithsonian Institution, Copyright © 1998-2017. All rights reserved.