Last modified: 22 August 2023


Scripts Package:
Version History

Package Version Name Changes
21 August 2023

The Chandra Grating Energy Lookup script now use grep -E rather than egrep, and a typo in the name of the Distance Transform task was corrected.

obsid_search_csc, search_csc

Support added for the srcpoly filetype, which refers to the per-master extended source polygon regions for those 2CXO sources whose name ends in X.


Bug fixed where if the background spectrum is extracted from an event file that is generated by the 'blanksky' script, the AREASCAL keyword in the spectrum file is used to account for the estimated background scaling term automatically with spectral analysis software. Between Contrib 4.13.1 and 4.15.2, AREASCAL was set to the 'blanksky' BKGSCALn value, which can lead to a severe overestimation of blanksky/stowed background by the automated background scaling applied during spectral analysis in Sherpa and Xspec. Using an AREASCAL value of 1/BKGSCALn will provide the appropriate scaling for both spectral modeling and background subtraction for the analysis software.

7 June 2023

The default Chandra dither parameters have changed recently which may be important especially when doing timing analysis and trying to identify instrumental effects. This script will estimate the dither amplitude and period from the aspect solution file.


Logic to parse coordinates simplified.


Updated to better support building with shared libraries on MacOS.


Several enhancements and bugs fixed to better handle XCM files. Initial support added for XSpec's MDEFINE function, although not all cases are supported, and improved handling of the NOTICE and IGNORE commands with files that are non-OGIP compliant..

  • If the fit fails when using method=fitted_ellipse a circular region will now be returned instead of erroring out.
  • Logic to parse coordinates simplified.
  • Logic improved when the computed metric using the selected method is equal, eg both regions include the same brighest pixel, ensuring that overlap area is assigned to only one source.
  • Binning logic improved handling event file input to ensure that all data are binned on the same half-pixel grid boundaries.

Updated to use the new CXCRegion module object which has increased numerical precision of region parameters.


Updated to remove dependence on deprecated setuptools module.


Corrects the frame time used when simulating pileup.


Internal updates to how CIAO tools are run to provide more robustness with parallel processes.

  • Check added ensuring event files have the same tangent point when combining data sets.
  • Check added for missing/obsolete parameter files.
  • Bug fixed for handling merged aperature photometry when calculations fail.
color_color, correct_periscope_drift, deflare, ecf_calc

Updated to change the matplotlib plotting backend if no $DISPLAY is set.


Bug fix when opening a file with 0 columns.


The revision can now be supplied and will be included with the verbose output.

24 January 2023

Calculate color-color values for a model and a range of parameters given an ARF.


The number of steps for numerical integration increased to improve the behavior in certain cases.


Corrected the screen output reporting the updated BKGSCAL keywords, albeit the values written to file header were correct.


Two bugs have been fixed when the src_arfs parameter is set:

  • The exposure times would be taken from the ARF instead of the PHA file, even when exp_origin=pha.
  • If the bkg_spectra parameter is left blank (default), the script would not be able to locate the background spectra via the BACKFILE keywords. Similarly, if the src_rmfs parameter is blank the script would not be able to locate the RMF files using the RESPFILE keywords.

Better handling of cases where a local model is used and a problem is fixed handling multiple groups.


Still an experimental script, it has been updated to support models that do not contain C++ code. Initial support for building FORTRAN models with udmget has been added with the --udmget or --udmget64 flags.


Improved handling of non-ASCII PI names.

  • When using a pixel mask—rather than a region—to filter the event file, then the resp_pos setting can only be set to CENTROID or MAX if the refcoord parameter is not set, otherwise the script will error out.
  • The script history is now written out correctly when run interactively.
  • The presence of the OBS_ID keyword in blanksky or stowed background files would cause the script to prematurely exit.
  • The script no-longer creates a HRC background response when 'bkgresp=no' is used.

Problem fixed when the script is run with bkgresp=no.


The identify_name function should better handle the case of unknown names or one of the name servers being temporarily down when the ciao-install version of CIAO does not work with the system SSL libraries.


The module has been updated to account for Sherpa plotting updates.

15 December 2022

Compute upper limits for the detection of a source, using data obtained from background apertures in event lists, images, and exposure maps. It is based on the article: On computing upper limits to source intensities (Kashyap et al. 2010, ApJ, 719, 900);


The stowedbg parameter has been added to allow the stowed background files to be used. This is only useful for CTI-corrected ACIS observations.


Create a background region with a fixed number of counts. The region center is specified and then an annulus is created which encloses the requested number of counts (as a minimum). The inner radius of the annulus is based on the PSF size at the location, set by the enclosed counts fraction, and overlapping source regions if set.


Fixed a problem when multiple SSO eph1 files are found. Work around a DM bug when tg_zo_position=detect which prevented tgdetect2 from choosing the tg_find_zo algorithm


The script has been updated to account for changes in the interface to the XSPEC model library. The script will also now attempt to exclude code that XSPEC's initpackage call may have added to the directory. Please contact the CXC helpdesk if you are having problems with this script.


The script has been updated to account for Sherpa plotting updates.


dax now properly updates the WCS when ds9 has blocked the image being analyzed (this is different to zoom or bin, which did not need updating).

Three new tasks have been added: Coordinates -> Interactive Grating Coordinates Vector, Regions -> PSF Contour, and Regions -> Fixed Counts Background.

The list of Image Processing -> Non-Linear Filters includes the new dmimgfilt filters: ridge, plain, q10, q90, and jitter.

Changes to Sherpa fitting routines to clean up the textual output.


As mkgrmf can now create a diagonal matrix for HRC data, the work-around to handle the HRC-I + HETG case has been removed.


Create a source region file from a simulated mono-chromatic PSF that is created with MARX. There are a number of ways that the region can be constructed based on the desired fraction of counts: a contour; a lasso, which is similar to the contour option but uses dmimglasso rather than dmcontour; a convex hull, which should reduce the complexity compared to the contour or lassoo options; an ellipse fit to the data; and an ellipse that encloses the fraction.


The resp_pos parameter has been added. Previously, specextract would use the location of the maximum pixel in the extraction region, but the default is to use the center from the extraction region, but the resp_pos parameter can be used to change this.

The way that the tools are run in parallel has been reworked to improve the behavior.

The screen output - when used in an interactive terminal - has been updated to better handle the case where multiple files are being processed.

A fix for an odd bug with the name of the combined files not matching the outroot parameter has been fixed.


The plugin concept has been added to srcflux, which allows users to add extra code and merge the results to the tables and outputs that srcflux creates.

With psfmethod=marx, the PSFs will now be simulated in parallel (based on the 'parallel' and 'nproc' parameters).

The default background region inner radius has been increased. Previously it was the same as the source radius; it is now 1.7 times the source radius. This improves the background estimate around very bright sources; events spread by the PSF could bias the background estimate.

When merging observations, a new "INSIDE_FOV" column is added to the merged .flux output file. It is an array of boolean values (True|False) which indicates which observations the source was imaged in.


Compute simple statistics for events in each map region. This allows simple statistics to be computed from adaptive binning tools, such as dmnautilus and dmradar.


The module has been updated to reflect parameter changes and the new scripts added in this release. The module now points out those scripts which can not be run - as they do not have a parameter file - and points users to alternative ways to run them.


The module has been updated to account for Sherpa plotting updates.


The module has been updated to account for Sherpa plotting updates.


Introduces a new derived class, TGPixlib, to help convert from sky coordinates to grating coordinates: dispersion angles and energy.

8 November 2022

The script will now warn if the data lies outside the supported focal-plane temperature ranges for calibration of recent ACIS observations, and listing possible situations the calibration may be insufficient.


Still an experimental script, it has been updated to improve support for user models, in particular recent versions of relxill and reltrans. Please contact the CXC Helpdesk if you are having problems with this script.

22 September 2022
search_csc, obsid_search_csc

The scripts have been updated to allow users to search the "current" Chandra Source Catalog, catalog="current". The "current" CSC catalog is, as of September 2022, the in-production version of CSC 2.1. Please see the Chandra Source Catalog Release 2.1 page, for details and important caveats.


Module updated to fix a problem when the configuration data is missing some of the SIM header keywords.

19 April 2022

The dax options in DS9 have been enhanced by the addition of the Cross Correlate option, which uses the acrosscorr tool to compare the images in two frames. This can be used to look for shifts between the two images.

  • A post-reprocessing message is thrown noting that the V&V file should be read for each observation. This PDF file reports on any known issues in the observation and processing of the data.
  • The recreate_tg_mask parameter has been replaced with the tg_zo_position parameter. For gratings datasets, users can now choose whether to use the zeroth-order location of the existing Level 2 events file from the archive (tg_zo_position="evt2"), detect the zeroth-order postion using tgdetect2 (tg_zo_position="detect"), or to supply the RA and Dec coordinates of the source location in either decimal degrees or sexagesimal notation.
  • sso_freeze is run on the event file and aspect solution file if it finds a Solar System ephemeris file in the primary directory along with the definitive ephemeris (orbit*_eph1.fits). This will add additional object-centered coordinate columns to the event file and aspect solution file.

The output files now includes the string "_combo_", which is appended to the output root name. This was needed to avoid confusion when using both mktgresp and this script with the same outroot parameter value.

download_obsid_caldb The script now skips un-readable files in the input directory.

Internal code change due to a bug fix introduced in CIAO 4.14. This does not change the behavior of the script.

simulate_psf The new numrays parameter lets the user set a specified number of rays (events) instead of the number of iterations to run.

The new parameter readout_streakspec has been added which is used when extracting a spectrum from the ACIS readout streak of a source. Users should take care to verify the determined number of ACIS pixel rows encompassed by the extraction region and the subsequent effective exposure time for the streak spectrum are reasonable.

splitobs The script will now handle interleaved-mode grating observations.
src_psffrac Internal changes taking advantage of updates to the Python region module. The behavior of the script is unchanged.
  • An estimate of intra-ObsID variability has been added by using the glvary tool to look for source variability within an observation. New columns (SRC_VAR_ODDS, SRC_VAR_PROB, and SRC_VAR_INDEX) and output products (lightcurves) are created.
  • Internal code changed to use updated region module, which can result in small changes in shape parameters. This can result in small numeric differences in the output (expected to be a lot less than 1%).

Module has been updated to reflect the parameter updates in chandra_repro, simulate_psf, and specextract.


Fixed bug using the Sesame resolver when the CADC service is down.

27 January 2022

Several regressions found in the 4.14.0 release have been fixed, primarily affecting usage with blanksky background files and data of Solar System objects.


The default value for the verbose parameter has been changed to 1 from 0


Updated to better handle cases where the system OpenSSL is unable to access SSL certificates.


The default for the clobber parameter has been changed to no.

14 December 2021

When a script errors out the message will now be displayed in red unless the NO_COLOR environment variable is set—see the site at or the output is being written to a file rather than a TTY.

  • support for the new button bar feature in DS9 8.3
  • the default absorption model in spectral fits is now phabs rather than wabs and a second absorbing component can be added
  • a new menu - Adaptive Bin (Radial) - to call the new dmradar tool
  • add the method argument to the 'Adaptive Bin' menu to support new functionality in dmnautilus
  • For dax tasks that output tables or regions, users can now automatically open those output files using ds9's prism interface. To enable this options, users need to run
    		$ pset dax prism=yes
    before starting ds9.

[New] Calculates an "effective" mono-chromatic energy for a given spectral model, and set of parameters, given a Chandra ARF and RMF. This can be used to see how the ACIS contamination layer changes the effective response over time, or to calculate the best mono-chromatic energy when calculating exposure maps with scripts like fluximage and merge_obs.


The dead-time correction is now used to better sample the time values created for the events in the blank-sky file.


The reprocessed event file now has a CONTENT keyword set to "EVT2" and HDUCLAS2 keyword set to "ACCEPTED".


The script now reports the 'conda install' command that is needed when an update is needed.


The script now handles XCM scripts containing XSPEC table models (atable, mtable, and etable).


The script has been updated to support changes in XSPEC 12.12.0 and Sherpa. However it is not guaranteed to work for the same models as were supported in CIAO 4.13: please contact the CXC helpdesk if you are having problems with this script.


The script now sets the CALDBALIAS which is needed due to a change in the caldb4 Python module in CIAO 4.14.


The script now creates a FOV file for the observation.


The pixel size calculation used when the maxsize parameter is set has been changed to avoid problems when also setting the psfecf parameter. There have been improvements when combining a large number of observations. The FOV file is now created for each reprojected event file and a combined version.


The pixel size calculation used when the maxsize parameter is set has been changed to avoid problems when also setting the psfecf parameter. There have been improvements when combining a large number of observations. The FOV file is now created for each reprojected event file and a combined version.


The script now generates FOV files for each reprojected event file and a combined file (that includes all the individual shapes).


Fixed a rare error when merging results. If a source was at the edge of the field of view of a CCD it could appear as if it belonged to an inactive CCD, thanks to dither, which caused the script to crash.


The tool now runs tasks in parallel to reduce run-time for users with multi-core machines. This can be controlled with the new parallel and nproc parameters. As part of this update the script should provide better diagnostic messages when there is a problem.


Parameter values are best handled using the natural Python type, so for boolean parameters this means using True or False, but support has been enhanced for the following values: for True, 1, "1", "true", "yes", "on" and for False, 0, "0", "false", "no", "off".

This may change the behavior of existing code, since it changes how boolean parameters are handled (e.g. setting a boolean value to "false" will now set it to False when it previously would have set it True.

The module has been updated to reflect new tools (dmradar) and parameter settings in CIAO 4.14.


The sherpa_contrib.utils.renorm routine has seen several minor fixes.

22 September 2021

The HRC-S/LETG bow-tie filter, designed to reduce background, is not appropriate for data acquired after the HRC-S high-voltage gain was changed. The bow-tie filter is marked invalid in CalDB 4.9.6 for these data. chandra_repro has been modified to correctly recognize that the file is not appropriate and continue processing without it.

11 June 2021

Bugs fixed that led to failures combining results when combine=yes and quashing misleading error messages while handling blanksky background files.

  • The Sherpa → Image Fit task now allows the user to include a PSF and exposure map when fitting. Model components have been renamed to Model 1 and Model 2 to clarify that source and background are not fit separately.

  • If an exception occurs when fitting using the model parameter editor, it will now be properly caught and displayed in an error dialog window.

  • A new random seed parameter is added to the dax.par file, which is used to set the random seed for the simulate_psf tool, aka Chandra PSF → Simulate PSF with MARX.


The MARX TStart value is now taken directly from the input file header without being converted to JEPOCH. This only affects the simulated TIME values.


Create a marx symbolic link to the version specific installation directory (e.g. marx-5.5.2).

18 March 2021

The --exclude option has been added, to allow file types to be excluded, and the vvref file type has been added to identify the vvref2.pdf.gz file in the secondary directory.


The script will now skip downloading CALDB files associated with the transmission gratings (TG) if neither of the gratings were inserted during the observation.

fluximage, flux_obs, merge_obs

The frame-store shadow is now included when calculating the instrument map for ACIS observations. This means that a small number of rows of the instrument and exposure maps are now excluded, to match the data processing. Please see the ACIS frame-store caveat for more information: Caveats about ACIS Frame Store Shadow Bad Pixels.

  • Added additional redshifted absorption spectral models.
  • Added energy limits to the photon and energy flux calculations. Previously, the fluxes were computed for the entire energy range rather than for just the noticed energy range.
  • Added button to run conf to the Model Editor GUI.

The frame-store shadow is now included when calculating the ARF for ACIS observations. This means that a small number of rows of the CCDs are now excluded. Bug fixed handling blanksky background files and additional internal changes made cleaning up code and logic.


The frame-store shadow is now included when calculating the grating ARFs for ACIS observations making a change to the effective area at wavelengths which intersect the bottom edge of the CCD (if any). Updated to support HRC-I/LETG LSFPARM files if they are available in the CALDB. They are expected to be released in March 2021 with the Chandra CALDB 4.9.5 release.


Now updates the reprocessed aspect solution file, pcadf*_repro_asol1.fits, to include the RA_NOM, DEC_NOM, and ROLL_NOM keywords. They keywords are removed the by asp_offaxis_corr tool but are required by MARX. The new parameter, pi_filter, controls whether the HRC-S/LETG background PI filter is applied or not.


Bug fixed affectin ciao-install installations when checking CALDB version.

December 2020

Estimate the actual energy range for an ACIS observation.


If the script can only find original-format aspect solution files (those with header keyword CONTENT=ASPSOL) and with the new parameter asol_update=yes, then chandra_repro will run the new asp_offaxis_corr tool to apply the DY, DZ, and DTHETA boresight corrections directly to the RA, Dec, ROLL, and quaternion values. This new aspect solution file will have CONTENT=ASPSOLOBI and should be used for all data analysis.

Additional changes include:

  • Updated for changes to hrc_process_events and tg_resolve_events parameter files.
  • Updated for HRS-S/LETG to use automatic CALDB lookup to locate latest PI background filter file.
  • Updated the recreate_tg_mask=yes option to use a clean event file (GTI, status, and grade filtered) with tgdetect2.

Experimental script, reintroduced after removal in CIAO 4.11, allowing XSpec user models to be used in Sherpa. The interface is similar to before but the model compilation is handled differently.


Experimental script that converts an XSpec (xcm) save file to a file that can be used in Sherpa or a Python program.


Plotting updated to match changes to Sherpa PHA plot style.

download_chandra_obsid, find_chandra_obsid

Internal changes to be more robust, anticipating future changes to the Chandra Data Archive.

merge_obs, reproject_obs

Screen output and warning messages use reduced numerical precision.


Fixed to work with HRC-I/LETG data where ther had been a grid mismatch between the RMF and PI files. Since there are no calibrations for gratings used with HRC-I, a diagonal RMF is generated.


This script will take a stack of ROI output files and assign the overlapping area to "the best" source.


This script will convert a region stored in physical coordinates, including FITS region files, into DS9-format regions in celestial coordinates.


Internal code cleanup. Some error and warning message formatting changed.


When multiple event files are specified, users will now also get a flux estimate from all the observations combined. Currently model independent fluxes are not combined; but rates, photon fluxes, and model fluxes (absorbed and unabsorbed) are computed. Uncertainties are computed using the aprates tool. Variable sources will likely yield incorrect flux estimates.


  • The energy band parameter has been changed to band=default. This allows both ACIS (default is broad band) and HRC (default is wide band) to work without explicitly changing this parameter.
  • New random_seed parameter has been added which is passed to the simulate_psf script when psfmethod=marx.
  • Updates to the minimum number of events to simulate with MARX. Also updates to deal with floating point precision of MARX PSF images.

Adds the PSF class and the psfFrac() and psfSize() functions to simplify the use of the CIAO psf module.


The deg2ra() and deg2dec() functions have gained an optional ndp parameter to restrict the number of decimal places used in the output.


Removed xsconvolve model, as Sherpa now directly supports XSpec convolution models.

18 September 2020

dax significantly enhanced. For most tasks, users will now see a progress bar with the name of the CIAO tool which is running; each of the Sherpa fitting tasks will now launch a model parameter editor and interactively adjust the plots and results.

The Net Counts and Photometry (srcflux) tasks have moved into the Count Rates and Fluxes sub-menu. The format of the Net Counts has changed slightly and now includes net rate errors.

The newest features are highlighted below:

  • Detect → wavdetect task is now available. Users select the wavelet scales which are used.
  • Chandra PSF → Simulate PSF with MARX task. Users can now simulate the a monochromatic Chandra PSF using MARX. MARX needs to be setup in the users environment before running DS9.
  • Coordinates → Chandra Grating Energy Lookup. Users draw a region around the 0th order location. When this task is run, it will prompt the user for a list of energies and orders. The location of these energies and orders will be identified on the image. Only for Chandra observation which used the gratings (HETG or LETG).
  • Image Processing → Regrid task which allows the user to shift, scale, and rotate image pixel values, but does not adjust the WCS.
  • Image Calculator tasks allow users to perform simple arithmetic operations (add, multiply, divide, subtract) using the images displayed in 2 frames. Additional scaling functions are provided for the current frame.
  • Custom Color Map task allows user to generate a new color map based on standard X11 color names.
  • Histogram → Dither Region computes the fraction of the region area exposed vs. time due to dither for Chandra datasets.
  • Histogram → Enclosed Counts Fraction computes the ECF in the selected region.
  • Sherpa → Spectral Fit enhanced, including and expanded list of available spectral models and users can also specify a second additive model component.
  • The Detect → celldetect task now allows users to change the fixed cellsize that is used. Users can also now supply exposure map and PSF map files along with setting the SNR threshold.
  • Regions → PSF Fraction task updated to force regions to DS9 format. This update prevents dax from hanging when users have modified their preferences to save regions in CIAO format.

Error message enhanced when sigma clipping fails, providing the unclipped mean and \(n\sigma\) count rate calculated from the input lightcurve.

2 July 2020

The script has been updated to handle changes to the way that the ACIS DET_GAIN file is indexed in CalDB This file is used in a check that the CalDB is set up correctly. Users who run an old version of the script with CalDB or later will see the following warning when check_ciao_caldb is run:

WARNING: 2 matches found for DET_GAIN query, expected only 1.
match = /soft/ciao/CALDB/data/chandra/acis/det_gain/acisD2000-01-29gain_ctiN0008.fits[1]
match = /soft/ciao/CALDB/data/chandra/acis/det_gain/acisD2000-01-29gain_ctiN0008.fits[1]

The script has been fixed for Conda installs when a supporting library has been updated.

blanksky, blanksky_sample

The scripts now accept a new weighting method, particle-rate, which scales the background by comparing the particle background rate (high-energy, above the region where Chandra has any effective area) of the datasets. The blanksky script also now supports use with VFAINT data when the check_vf_pha=no option is chosen when running acis_process_events/chandra_repro.


The input file can now be either an image or an event file.


The input file can now be either an event or image file. The energy value used is added to the output file using the ENERGY keyword.

08 April 2020

The skyfov method=convexhull algorithm will now be used when the script find the new style aspect solution files (those with the header keyword CONTENT="ASPSOLOBI"). This new FOV provides a tighter fitting polygon around each chip.


Updated to no longer accesses the archive via FTP. The file download is now done in decreasing order of file size (per ObsID).


Updated to no longer accesses the CalDB files via FTP and now generates standard CALDB setup scripts.


The script was broken by the DS 10.8.3 upgrade. and now has been fixed. The name server now falls back to using the Sesame service from CDS if the CADC server fails.


Fixed bug with TYPE:II PHA files created with the tgextract2 tool where the background BACKSCAL column was incorrectly copied from the source region.


Updated the RegionsPSF Fraction task to force regions into DS9 format. This update prevents dax from hanging when users have modified their preferences to save regions in CIAO format.


Fixed bug that caused parameter values in the script's HISTORY records to be reset to their default (blank) values.


The script will now run when verbose=0.


The identify_name routine now tries the Sesame server from CDS if the CADC name server fails to identify the name.

22 November 2019

The script has been updated to include the correction for the framestore shadow (new to CIAO 4.12), which adds the bottom rows of each ACIS CCD to the bad-pixel maps to account for the "shadow" caused by the framestore cover.


All TG_M filters removed from the output file subspace so that extraneous subspace components are not included in the file.


Remove the TG_M and SPEC_NUM keywords from the output file.


Updated to work with Matplotlib 3.1.


Spectral and radial fits visualization now contains both the fit (data and best-fit model) and the residuals about the best-fit model.


The default setting for the xsect parameter has changed from bcmc to vern to match the behavior of the XSPEC 12.10.1 model library.


Bug fixed when trying to work with Type II PHA files created by the tgextract2 tool.

check_ciao_version, check_ciao_caldb

Updated to work with the new CXC https CXC site. The check_ciao_version also updated to work with CIAO installations using the conda package manager.


Updated for parameter changes in CIAO 4.12.


Module updated to work with Matplotlib 3.1.


The plot_instmap_weights routine has been updated to use Matplotlib preference settings than ChIPS ones from get_data_plot_prefs.


Added the load_xskyconv routine to support the kyconv convolution model. Please note that support for XSPEC convolution models is considered experimental and there are known problems, so use carefully.


Module no longer imports the chips_contrib module.


The chip_contrib.decorators, chips_contrib.helix, chips_contrib.images, chips_contrib.regions, chips_contrib.scatter, and chips_contrib.utils modules have been removed, as Matplotlib has supplanted ChIPS in CIAO.

28 October 2019
search_csc, obsid_search_csc

These scripts now default to the Chandra Source Catalog 2.0 release, setting version=csc1 if you need to search version 1.1 of the CSC.


The script has been fixed so that XMM and Suzaku—or any file missing the some header keywords—lightcurve files may be used again to create plots.

merge_obs, flux_obs

Bug fixed when the psfmerge parameter is set to exptime or expmap caused the scripts to fail.


A bug has been fixed where if bkg_spectra=NONE, it should have ignored the BACKFILE keywords and skipped combining the background spectra, but failed to do so.


The module has been updated to add the catalog parameter to the search_csc and obsid_search_csc functions. The default is to use version 2.0 of the Chandra Source Catalog.

6 August 2019

Added support for HRC observations with 0 ontime.

correct_periscope_drift, sherpa_contrib.profiles, sherpa_contrib.chart.plot_chart_spectrum, sherpa_contrib.marx.plot_marx_spectrum, sherpa_contrib.utils.plot_instmap_weights

Uses the same plotting backend (ChIPS or Matplotlib) as Sherpa does, set in the ~/.sherpa.rc file. The Sherpa plotting functionality to use Matplotlib rather than ChIPS when the plot_pkg setting is pylab. The plots may have changed slightly in this update.


Replace ChIPS with matplotlib for plotting.


Explicitly sets solar abundances and photoelectric cross-section table for XSpec models.


Improved error checking on input keyword dictionary and improved docstrings.

21 May 2019

When reprocessing a gratings observation, individual (type I rather than type II) source and background files are created, with the correct ANCRFILE, RESPFILE, BACKFILE, and BACKSCAL keywords.

For LETG datasets using HRC-S, grating responses for orders -8 to +8 are now created (previously only -1 and +1 were created).


Bug fixed where the net_phoflux and net_flux values have been corrected for an error in calculating the source contribution to the background area via the PSF. If you set the psfmethod parameter to file, marx, or arfcorr, then the fluxes were being over-estimated by ~5 to 15% (typical). The over-estimate was proportional to the ratio of the area of the background to source area and to the background PSF fraction.


Major update; highlights include:

  • files created by the tools can now be saved to a user-specified directory, so users can access the data products.
  • plots are now created with DS9 rather than using ChIPS.
  • a number of new tasks have been added, as well as improvements made to existing tasks:
    • users can now choose which statistic to use in spectral fits with Sherpa
    • improvements in supporting DS9 regions with CIAO tools
    • a number of tools will now use the data as shown in DS9 (e.g. smoothing) rather than the input file

The aimpoint chip of the observation is now calculated using the RA_PNT and DEC_PNT keywords rather than the RA_NOM and DEC_NOM ones. This is to better support reprojected data sets.

[New] convert_ds9_region_to_ciao_stack

This script is used in dax to convert from DS9 regions to CIAO format. This may be useful for other users, but please be aware that interpreting a DS9 region file can be a surprisingly complex task.

25 April 2019

Support for level-2 event files with no exposure time added and FOV file is generated using the time ranges from the observation's aspect solution.


Modified so that the *_PNT and *_AVG header keywords are no longer copied, as this is handled internally by reproject_events in CIAO 4.11.


Bug fixed in parsing the data model subspace to recognize any chip filters that have been applied to the input file.


Updated to use matplotlib rather than ChIPS for plotting. The output is similar but will not match exactly. This change should improve support for running the script remotely or on a system with no X display.


Work around CERTIFICATE_VERIFY_FAILED errors seen on some MacOS/openSSL systems, falling through to curl or wget to download the data.


Runs make clean after a successful installation.

obsid_search_csc, search_csc

Logic error corrected when an invalid user query triggers an unhelpful error message.


Bug fixed in the save_marx_spectrum function so that the output is normalized by the bin width, as required by MARX.

30 November 2018

Updated for HRC to keep all the standard columns defined in the hrc_process_events stdlev1 event-definition parameter and the SAMP values.

fluximage, flux_obs, merge_obs

Can now create a PSF map using the optional "psfecf" parameter. An additional "psfmerge" parameter is available in flux_obs and merge_obs for choosing how the per-observation PSF maps are combined.


"ardlibqual" parameter added allowing users to pass ardlib qualifiers to the calls to mkgarf.


Internal changes and improved error messages.


Fixed bug introduced to script in CIAO 4.10.


Updated for parameter changes in CIAO 4.11.


Updated the experimental support for XSPEC convolution models to add support for the following XSPEC models:

lumin, cpflux, rfxconv, rgsxsrc, vashift, vmshift, and xilconv

convert_xspec_user_model Script removed as it has not been updated yet to support XSpec 12.10.0e, which is provided in CIAO 4.11.
chips_contrib.pyplot As CIAO 4.11 provides Matplotlib, the experimental API for providing a Matplotlib-like API for ChIPS users has been removed.
7 November 2018
find_chandra_obsid, search_csc

Updated the URL used for the name resolver provided by the CADC to avoid problems with certain name searches. Added support to fall over to curl or wget as the Chandra Data Archive has moved to using https.


Script updated to support observations made in a sub-array mode.


Updated to ensure that on systems where DS9 autoloads funtools or zhtools analysis tools, that it is still able to start the ChIPS server in the background.


The ahelp file has been updated to match the parameter file. There is no change to the behavior of the script.


Updated to verify the size for existing CALDB files on disk with those on the FTP site. Partial files are automatically retrieved again.


Fix a Python 3 problem version that would skip creating both HEG and MEG responses.


Internal fix to computation of near-chip edge flag related to how floating-point values are treated in the pypixlib module.

combine_spectra, combine_grating_spectra, simulate_psf, srcflux, mktgresp, tgsplit

Updated so that when the outroot parameter is a directory, adjusts file names so they no longer begin with an underscore or period.

[New] sherpa_contrib.marx

This module provides the save_marx_spectrum, plot_marx_spectrum, and get_marx_spectrum which are used when using Sherpa to generate model spectra for MARX. They are similar to the routines provided by sherpa_contrib.chart.

15 May 2018

Script has been updated to use the new location of the Chandra Footprint Server, which is Unfortunately, not all versions of CIAO 4.10 contain a Python that supports SSL, and in these cases the script will try to use the curl and wget command-line tools to access the data.


Intended for internal use in support of the HRC Calibration group, the rmffile parameter is enabled for HRC observations to extract zeroth-order gratings data. It is expected that typical users should keep rmffile=CALDB for HRC data.

18 April 2018
chandra_repro, combine_spectra, gti_align, obsid_search_csc, reg2tgmask search_csc, tgmask2reg

Internal changes to the way development libraries are located.


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.


Allow tool to work when no background spectra have been extracted. Internal updates to use standard wrapper for tgsplit tool.

fullgarf, mktgresp

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


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


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


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%.


When using ray files for 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.


This script has been removed from CIAO.


Support for combining interleaved-mode observations restored due to file handling changes introduced in CIAO 4.7 when also trying to handle multi-ObI observations.

Cleanup dmimgcalc operation syntax.

Additional error checking with SIAP service is offline.


Updated for parameter changes in CIAO 4.10. Fixed an issue with Python 3.5 support (setting parameter values to INDEF).


Fixed typo in docstring.

20 Jul 2017

The CIAO → Statistics → Photometry (srcflux) task now allows users to select the method used to estimate the PSF fraction for their analysis.

  • arfcorr uses a circularly symmetrical approximation of the PSF (default)
  • ideal assumes 100% of the PSF is in the source region.
  • quick looks up the PSF fraction in circular source regions.
  • marx runs simulate_psf to generate a MARX simulated PSF to measure the PSF fractions. This option requires MARX be installed.

Internal fix handling observations with OBC aspect solutions (restricted to Earth and Moon observations only). chandra_repro still cannot be used with these observations but the error message is more informative.


Script modified, adding internal optimization for the case where a large number of positions are used, especially when psfmethod=psffile. There is no change to the output.


Updated so that temporary aspect histogram files are cleaned up in Python 3.5.

apply_fov_limits, get_fov_limits, fluximage, flux_obs, merge_obs Fixed an error message when given a FOV file with a region that can not be handled by skyfov.
fluximage, flux_obs, merge_obs Fixed an error message when no input events files can be processed.
ciao_contrib.runtool Support for running the tools axbary, evalpos, mean_energy_map, pileup_map, and wavdetect has been moved to the CIAOToolDirect class. Care should be taken when running these tools to avoid multiple copies trying to edit the same parameter file; it is strongly suggested that the new_pfiles_environment context manager is used when running these tools.
24 May 2017
download_chandra_obsid, download_obsid_caldb, find_chandra_obsid

Changes the default FTP server used by these scripts from to

deflare, ecf_calc, find_chandra_obsid

Updated for Python 3.5 compatibility.

Fixed the error in lc_sigma_clip when trying to create a GTI file using Python 3.5 for some input data files.

12 Apr 2017

Typo fixed in screen output and script modified to add file history using the Python ciao_contrib.runtool.add_tool_history instead of relying on dmhistory.


Script modified to run fluximage with background=none, to avoid double counting the background, since srcflux also determines the background independently. This change only affects HRC-I observations.


The output simulated events file now includes a [x=:,y=:] to trim the TLMIN/TLMAX keyword range of the output event file to make visuzlizing results in DS9 easier.

mktgresp Support of Type I PHA file as input added.
tgsplit The REGION block is appended to the produced Type I PHA files
combine_spectra If input files contain a STAT_ERR column, the values will be recomputed using the Gehrels' variance function; which is needed by combine_grating_spectra.
install_marx, ecf_calc Updated for Python 3.5 compatibility.

Bug fixed that was triggered by multi-asol observations causing runtime failure with Python 3.5.

download_obsid_caldb Bug fixed where the script fails when the output directory parameter contains a trailing "/".
  • New random parameter added to pass to reproject_events, in order to create re-producible results.
  • The DY_AVG, DZ_AVG, and DTH_AVG header keywords are added to the tailored blanksky background file that match the reference events file, which fixes incomplete transformations to sky and chips coordinates when the background file is reprojected.
  • Bug fixed which caused the script to fail when co-adding *3* sets of spectra and responses when bkgresp=no. The individual sets of data products are otherwise correct.
  • Focal plane temperature testing is skipped for HRC observations, since the event file does not have the FP_TEMP header keyword, which would cause the script the error out.
sherpa_contrib.xspec.xsconvolve The XSPEC convolution interface is updated so it works with Sherpa in CIAO 4.8 or greater. A bug was also fixed that will allow use of the XSpec partial covering model (load_xspartcov).
13 Dec 2016
multiple scripts

The scripts package has been updated for the CIAO 4.9 release and to run under Python version 3.5 as well as Python 2.7. These changes are purely internal and do not change how the scripts behave.


The behavior has been changed when bkgresp=yes so that the calculated background ARF will always be weighted. The background RMF type is determined by the unweight_rmf" parameter.

03 Oct 2016
[New] blanksky

Script to create an unscaled blanksky background file compatible with a given observation events file. The background scaling factors for each chip are calculated and stored in the file header.

[New] blanksky_image

Script to create scaled background and background-subtracted images given an observation-specific blanksky background file and a reference image.

[New] correct_periscope_drift

Script to correct small (~0.1 arcsec) intra-observation alignment drifts that can be seen in recent, long (>50 ks) observations. Requires a bright, on-axis (<2 arcmin) point source with minimal pileup.

  • binarfcorr parameter added to explicitly specify detector pixel size used by arfcorr PSF correction.

  • Additional checks and warning messages added for warm observations with focal plane temperatures >-110C.

  • If weight=no and P2_resp calibration files are available, mkacisrmf runs with infile=CALDB(CCD_ID=x)—where 'x' is the CCD that the extraction region is centered on— instead of just infile=CALDB to avoid inadvertent tool failure.

  • Users with MARX installed can now use psfmethod=marx to simulate a mono-chromatic PSF that is used for aperture correction.
  • Users can input multiple event files, but the results are not merged. The same regions, if specified, are used for each event file so the regions need to be in celestial coordinates or the events files must be reprojected to the same tangent plane.
  • The default model and absmodel have been updated to separate the absorption model.
  • A new ${root}_summary.txt file is created with a copy of the final summary information.
  • Bug fixed affecting psfmethod=arfcorr PSF file names.
chandra_repro Using pix_adj=default for ACIS data in CC-mode will now run acis_process_events with pix_adj=NONE.
mktgresp Can now create responses for ACIS-I observations with gratings inserted.

Error fixed when using tgextract2 pha2 files which were created with error=gehrels.

monitor_photom Script cleaned up to avoid warnings thrown by newer versions of NumPy.

Updates to several tasks to request regions in a specific format.


Corrects a problem in the auto-generated bash-shell setup script.

13 Apr 2016
[New] simulate_psf

A simplified interface to MARX, to perform both raytrace PSF simulations or projecting ChaRT/SAOTrace rayfiles to the detector-plane for an existing observation.


Updated to automatically install the latest version of MARX available.


Added checks to error out if blanksky background files are used as input; a minor bug fixed that attempted to write history to calibration files.

27 Jan 2016
fluximage, merge_obs, flux_obs

New "random" parameter has been added to these scripts to control the random parameter used to reproject the HRC-I background events.


New "random" parameter has been added to control the stream of random CHIPY values.

  • Support added for models which specify an initialization string in the model parameter file, such as "snapec".

  • Support for XSpec convolution models in CIAO/Sherpa 4.8 will be added at a later date.


The routines in this module have been updated to be compatible with ChaRT v2.

[New] sherpa_contrib.utils.renorm New function added that changes the normalization of a source model so that the total predicted signal matches the observed data.
sherpa_contrib.utils.estimate_weighted_expmap Function has been updated to work in CIAO 4.8.

Updated for the new parameters added to readout_bkg, fluximage, flux_obs, and merge_obs scripts.

15 Dec 2015
multiple scripts The scripts package has been updated for the CIAO 4.8 release. The Analysis Scripts section of the release notes has a list of all the changes.

Script needs updating to be compatible with CIAO 4.8.

21 Sep 2015
[New] readout_bkg

Script to model the Out of Time (OOT) contribution of bright and extended sources to the ACIS background.

[New] install_marx

New script that automates the standard steps necessary to download, build, and install MARX 5.1.

[New] download_obsid_caldb *EXPERIMENTAL* Intended for users with limited disk space or internet access/bandwidth; this script downloads only the subset of CalDB files required to analyze one observation at a time. As additional observations are processed, the CalDB will grow incrementally as new files are accrued.
[New] detilt Corrects the time-dependent tilt of LETG/HRC-S spectra by adjusting the TG_D column values.
[New] dewiggle Corrects the LETG/HRC-S spectra by adjusting the TG_D values of events to remove small "wiggles" to straighten the dispersed spectra.
[New] symmetrize Adjusts the LETG/HRC-S spectra by adjusting the TG_D values of events to make cross-dispersion profiles more symmetric about TG_D=0.
tgsplit Bug fix for ACIS CC-mode data, where ARF and RMF files could not be associated with individual spectral files.

Missing ahelp files for the Python group module have been placed in the $ASCDS_INSTALL/contrib/doc/xml directory so that they can be accessible to the user.

30 Jun 2015
merge_obs, reproject_obs, flux_obs

These scripts have been updated to work with multi-ObI datasets that have been processed with splitobs.


The path name is now removed from the file names stored in the ANCRFILE, RESPFILE, and BACKFILE keywords.


Bug fixed, where vector columns of coordinates were split into individual columns, which caused failures when handling image files.

07 Apr 2015
  • Checks the file names in the primary and secondary directory against the file names in the level 1 event file header.
  • The absolute input and output path names are now checked for whitespaces and will error out.
  • Supports FAINT_BIAS datasets.
  • Additional time and spatial filters are applied to ensure that the level 2 event file only contains events when the aspect solution exists.
  • ACIS TIMED-mode observations now have their GTIs aligned to expsure frame time boundaries.
  • Only the +/- 1st-order responses are created for grating observations.
  • The orders parameter has been added to allow the creation of responses for an arbitrary set of orders.
  • By default, the responses for different orders are produced in parallel. This is controlled by the newly introduced parallel and nproc parameters.
  • Better handling of non-bad pixel ardlib parameters, such as contamination models and detector QE/QEU files.
  • Handling of COLDEN failures fixed.
  • The absolute input and output path names are now checked for whitespaces and will error out.
  • Additional per-source data products are now saved, including image, exposure map, flux image, PSF, and the net count-rate probability density function.
  • The output .flux file now contains the CHIP_ID, CHIPX, and CHIPY values for the nominal source location.
  • Setting the mskfile, bpixfile, and dtffile parameters to "none" is now passed onto the underlying tools. Leaving the value as blank, "", instructs the tool to locate the files from the event file meta-data.
  • The spectral model parameters can now take special tokens: %NRAO_NH% and/or %BELL_NH%. These tokes are replaced with the values reported by the COLDEN tool for the source's location. The value %GAL% can also be used as short-hand for %NRAO_NH%.
  • The per-chip live time (LIVTIMEx) is now used rather than the LIVETIME value for the aimpoint chip.
[New] splitobs

Automates the steps necessary to separate multi-ObI and interleaved-mode observations into individual directories compatible with chandra_repro. For multi-ObI grating observations, the REGION block is attached to the level 2 event file.

[New] gti_align

For ACIS observations only. Synchronizes the input GTIs to the ACIS exposure boundaries.

[New] multi_chip_gti

Create a single multi-chip GTI from individual GTIs.


The output metadata (including block order) may be different.


Bug fixed when checking that all input files have the same channel grid.

dax spectral fits

Fix logic to allow background to be optionally used.


Adds tool history to output file and corrects the logic when applied to areas outside a sub-arrayed dataset.


Adds tool history to output file.

  • ahelp file added.
  • New routine to convert to Chandra coordinates from sky(x,y).
  • Forces the Pixlib() initialization to only happen once.
04 Dec 2014
  • The default verbosity level is now 1.
  • Script updated to handle the removal of the calc_cc_times parameter in acis_process_events.

The file found from the MASKFILE header keyword in the input event file is now optional when running the tool when no fovfile is set.


An ObsID may now be given instead of an object name or position.


Bug fixed affecting observations with multiple aspect solution files.


Updated to open the CALDB version file as read-only.


Updated for the new tools and updated parameter files introduced in CIAO 4.7.

04 Nov 2014
[New] combine_grating_spectra
  • Allows users to combine spectra from positive and negative grating orders and to combine spectra across multiple observations (or sources).
  • Works with either Type II PHA files retrieved from the the archive or created by chandra_repro, as well as Type I files available from the TGCat catalog.
  • Response files and background files are handled automatically.
  • Output is a set of Type I PHA files for each order and arm, and the associated responses.
  • This script replaces the add_grating_orders and add_grating_spectra scripts. They will be removed from a future scripts release.
[New] tgsplit
  • Convert a Type II PHA file to a set of Type I source and background PHA files. _UP and _DN (down) grating arm background spectra are combined.
  • Given a stack of response files (ARFs and RMFs), it will attempt to match the responses to the correct spectra and update the ANCRFILE and RESPFILE keywords as appropriate.

A bug was fixed causing failures when a weighted ARF and an unweighted RMF are to be created for -110C ACIS data.

  • A value of NONE is now valid for the src_arf, src_rmf, bkg_pha, bkg_arf, or bkg_rmf parameters. If a parameter is set to NONE, then those respective files will not be combined, even if they are located via the ANCRFILE, RESPFILE or BACKFILE header keywords.
  • A bug was fixed where the script errors out if any of the background is zero in the same channel in all the input spectra when bscale_method=counts.
  • New Statistics → Net Counts option to obtain the net counts individually in each of the regions.
  • Moved and renamed the Statistics → Photometry (srcflux) task from the Regions menu. Fixed a bug when multiple source or background regions are selected.
  • Renamed the Statistics → All tasks to dmstat.
  • Tasks which use XPA to get information or report results have been updated to check that only a single DS9 session is running. The previous behavior of the tasks was unpredictable.
24 Sep 2014
  • A FOV file is now created with a _repro_fov1.fits extension, along with the other output products.
  • STATFILT header keyword added to level 2 event files created with 32-bit status.

Corrects the ONTIME/LIVETIME/EXPOSURE keywords in the combined ARF. The times in the PHA files, as used by Sherpa and XSpec, are unchanged.

  • A new tmpdir parameter has been added.
  • Information output to the screen has been enhanced and re-formatted.
  • Improved error messages for when weighted response creations fails.
  • Bad pixel file handling enhanced to avoid corrupt ardlib.
  • A new binsize hidden parameter has been added to support sub-pixel analysis for small regions.
  • A new tmpdir parameter has been added to avoid hard-coded paths to /tmp.
fluximage, flux_obs, merge_obs, and reproject_obs
  • Minor improvements to error messages and handling data with missing keywords.
  • When reprojecting data, the reprojection now only happens if the new tangent point is more than 0.05 arcesec away from the current tangent point (merge_obs and reproject_obs).
search_csc and obsid_search_csc
  • The MSBS (master source basic summary) column macro has been corrected.
  • The checks for whether the CXC servers are online have been improved.

Bug fixed affecting 32-bit systems where the CLSTBITS header keyword was being written out incorrectly; the STATUS column was otherwise correct.

[New] convert_xspec_user_mode

*EXPERIMENTAL* Compile a XSpec user-model for use in Sherpa.

This script is an experiment to provide similar functionality to the initpackage Sherpa script, compiling XSpec user-model into a module usable within Sherpa.

Only additive, multiplicative, and convolution models are supported.

Although Fortran, C, and C++ models are all supported, there may be difficulties in compiling models if you are using a gcc/gfortran version significantly different to that used to compile CIAO 4.6 (namely version 4.1).

Models that require the --udmget switch to initpackage are not supported.

[New] sherpa_contrib.xspec.local

The Python lmod function is provided by this module to load XSpec user-models compiled with the convert_xspec_user_model script.

[New] sherpa_contrib.xspec.xsconvolve

*EXPERIMENTAL* This module provides an interface to the XSpec convolution models. For example:

# Apply the X-Spec gsmooth convolution model to the sum of a
# powerlaw and gaussian
sherpa> from sherpa_contrib.xspec.xsconvolve import load_xsgsmooth
sherpa> load_xsgsmooth("gsm")
sherpa> set_source( * gsm( +

This code has seen limited testing, and should be used with caution.

Sherpa does not have an equivalent to the energies command, so some models, such as the reflect model, may be unusable and edge effects from the convolution should be considered.


The module has been updated to us $ASCDS_WORK_PATH when creating temporary files and directories when appropriate, rathen than always using /tmp. The tmpdir argument has been added to the new_pfiles_environment() and new_tmpdir() context managers and the add_tool_history() function.


The XImage-based color lookup-tables have been updated to contain 256 colors; usable by ChIPS and DS9. The bluebase2 lookup-table has been updated to replace invalid values.

12 Jun 2014
[New] monitor_photom

Create light curves from optical data from the aspect camera.


[New] summarize_status_bits

Provide summary of the status bits set for the rows and what each bit means for an event file.

[New] apply_fov_limits

Create an image of an event file using the limits from an FOV file.


Bug fixed where the background photon flux values, BG_PHOTFLUX, were all calculated to be zero. Subsequently, the NET_PHOTFLUX_APER value and corresponding errors were not background subtracted.


Script re-written to use Python tempfile. New parameters bscale_method and exp_origin added for expert-users.

fluximage, flux_obs, and merge_obs
  • FOV file is now made using an aspect solution that has been time-filtered to match the GTI of the event files when calculating the an observation's sky area coverage.
  • When processing HRC data, the bands parameter can be used to apply a PI filter. For example, bands=30:200:1.1 will use the PI range 30 to 200 for the analysis and evaluate the instrument map at 1.1 keV.
  • HRC-I background subtraction has been modified, adding additional metadata about the particle background scaling factor appled during background subtraction. Scaling the background by the particle flux, rather than the exposure time, for subtraction is supported by the new bkgparams and background=particle parameters.
  • Better handling of observations with multiple asol files.
  • Fixed issues handling outroots pointing to nested directory paths.
  • Galactic neutral hydrogen column densities added to the spectrum files with the header keywords NRAO_nH and Bell_nH for the source extraction position derived from COLDEN.

Support added for evt1a and adat (PCAD ACA images) file types.


File history added to output file header.


Bug fix to support image files.

[New]ciao_contrib.region.check_fov.FOVFiles module Query a stack of FOV files to find which observations include a given RA and Dec.
ciao_contrib.runtool module Updated for new and updated script changes.
09 Apr 2014

Bug fix to the Python module to avoid an error being thrown.


Work around for DM issues handling regions used by CIAO analysis functions in DS9.

26 Mar 2014
[New] ecf_calc

Provides the encircled counts fraction (ECF) of from a circular region around a given source position as a function of radius.

  • Retain the unsubtracted and particle background images when cleanup=no withg HRC-I data, when background subtraction is selected.
  • Now deletes all the instrument map files when cleanup=yes and multiple bands are specified.
chips_contrib.helix module Fix allowing the start, hue, gamma, and nlev arguments to be used in load_colormap_cubehelix() and get_cubehelix().
03 Feb 2014

Fixed issue that caused failure in CIAO 4.6.1

fluximage and merge_obs
  • Fixed issues seen when setting the maskfile parameter to NONE.
  • For HRC-I data, the BEVTFILE keyword is set to the name of the background event file used for background subtraction in fluximage.
  • Changes made to try and avoid incompatiblities between CIAO and FTools parameter files.
[New]ciao_contrib.proptools module Experimental Python interface to the Chandra proposal tools: colden, precess, and dates.
12 Dec 2013
multiple scripts The scripts package has been updated for the CIAO 4.6 release. The Analysis Scripts section of the release notes has a list of all the changes.
17 Oct 2013

Provides the LaTeX identifier macro used to describe observations in papers written for AAS managed publications.

See: CDA Data Literature Links for more information.

search_csc and obsid_search_csc
  • Fixed the retrieval of data products.
  • Fixed use of the combination column definitions in the columns parameter.
coords.format.deg2dec module Fix for small negative declinations.
07 Aug 2013
  • The asol, badpix, pbk, and mask files defined in the event file header will be used by default by the script—if they are located in their standard sub-directories—unless explicitly specified.
  • The correct parameter has been renamed correctpsf.
  • Default PI filter removed for non-grating HRC-S observations. Using a PI=0:300 filter for HRC data may decrease noise, but has not been sufficiently studied. The filter may be applied by the user, if desired.
  • Minor bug fix for when two non-interleave mode event files are found in the secondary/ directory. An additional change has been made to delay creation of the output directory until the inputs have been verified.
search_csc and obsid_search_csc

New scripts that allow users to search the Chandra Source Catalog (CSC) from the command-line:

Both scripts can retrieve arbitrary sets of columns from the CSC and save the results as a tab-delimited ASCII file. Additionally, the per source and per observation data products—including event files; images; spectra; lightcurves; and their associated response files (PSF, RMF, ARF, exposure maps)—may be retrieved.

See: CSC Command-line Interface

download_chandra_obsid and find_chandra_obsid

Support of downloading from mirror sites added, rather than requiring direct access to the Chandra Data Archive.

merge_obs, reproject_obs, and flux_obs
  • Improved handling of input files containing DM filters.
  • Description of the bands parameter has been updated, since the low- and high-energy values are required for ACIS data, and should not be given for HRC data.
chips_contrib Python modules
  • The chips_contrib.pyplot module—which provides a limited emulation of the matplotlib pyplot module, allowing for the use of pyplot commands with ChIPS—has been added.
  • The chips_contrib.decorators module has been added.
ahelp documentation

New ahelp pages added; describes some of the Python routines used by the scripts, in particular download_chandra_obsid and find_chandra_obsid.

ciao_contrib.runtool module Updated to include the new and updated scripts introduced in this release.
28 Jun 2013
merge_obs Bug fixes when stacks of ancillary files given.
24 Apr 2013
merge_obs, reproject_obs, and flux_obs
  • Improved handling of HRC data, including warnings when data needs reprocessing due to different PI characteristics and better support for some subspace filters that appear in Repro IV.
  • Event files with OBS_ID keyword of Merged are automatically skipped.
  • Interleaved-mode data can now be combined without explicitly listing e1 and e2 observations.
  • Handling of missing ancillary files, such as the PBK file, has been improved.
  • The asol argument is checked to make sure an aspect histogram is not used by mistake.
fluximage The asol argument is checked to make sure an aspect histogram is not used by mistake.
  • Supports interleaved-mode observations without the user needing to split the e1 and e2 observations into separate directories.
  • New recreate_tg_mask parameter added. By default, the existing region appended to the original evt2 file is now used rather than recreated using tgdetect and tg_create_mask.
  • When reprocessing an observation using gratings, the ARF and RMF files for each order and arm are now created. They are saved into a tg sub-directory of the output directory.
add_ds9_contours and read_ds9_contours Bug fix so the tools function in CIAO 4.5.
tgmask2reg and reg2tgmask

New scripts to assist in making custom region extraction masks for tgextract2.



New scripts to that will take a Type II PHA file produced by tgextract or tgextract2 and will create the ARF and RMF for each order and grating arm.

ciao_contrib.runtool module Updated to include the new and changes scripts in this release.
Due to a naming conflict, these parameter files that provide access to the suite of auxiliary color lookup-tables have been changed.
13 Dec 2012
multiple scripts The scripts package has been updated for the CIAO 4.5 release. The Analysis Scripts section of the release notes has a list of all the changes.