Skip to the navigation links
Last modified: 12 December 2023

URL: https://cxc.cfa.harvard.edu/ciao/releasenotes/ciao_4.16_release.html

CIAO 4.16 Release Notes


CIAO 4.16 is distributed for the following platforms:

CIAO is available using the conda package manager; conda builds are available for Linux and Mac for Python 3.11, 3.10, and 3.9. More information can be found in the conda section of the Installation notes below. The [Updated] ciao-install script can be used to automate the conda installation process.

There is no support for 32 bit operating systems, older Linux (CentOS 7 era), older macOS platforms (macOSX Catalina and earlier), or Windows (including using WSL). More details can be found on the Platform Support page.



Notable changes and improvements in CIAO 4.16

CIAO 4.16 includes several important bug fixes and includes updates to support newer compilers. There have been enhancements to Sherpa and CIAO 4.16 provides updates to Off The Shelf (OTS) packages like SAOImage DS9.

  • CIAO 4.16 is now available as native binaries for Apple silicon: M1, M2, M3 ARM processors. (Rosetta2 is no longer required.)

  • CIAO can be installed using the conda package manager. Users can install the conda edition with Python 3.11, 3.10, or 3.9 on Linux and Mac.

    The default version of Python is variable and will depend on which other packages are available at the time of installation. Users who want a specific version of python must include python=3.9, python=3.10, or python=3.11 on the conda create command.

    Alternatively, the [Updated] ciao-install script can be used to install CIAO 4.16.

  • Several tools have been updated including important bug fixes and enhancements such as:

    • tgextract and mkgrmf have been updated to correct errors with abs(order)>1
    • acis_process_events has been updated to support enhanced temperature dependent CTI corrections.
    • wcs_match has been updated to to support stacks and range syntax when manually selecting sources.
    • Several tools, including dmextract, have been updated to copy the WCS from the input image to the output table.
  • Notable Sherpa changes include:

    • Updated XSPEC models to version 12.13.1e
    • The grouping commands like group_counts now default to only grouping within the noticed range of channels
    • Added support for using arbitrary Python functions when linking model parameter values
    • Now supports XSPEC table models with the ESCALE parameter and fixes an issue with models that support a redshift parameter
    • Experimental: support for writing out XSPEC table models
    • Experimental: added support for plotting using bokeh (not included with CIAO; users need to install separately).

    As a reminder, Sherpa is also available as a stand alone system, accessible from the Sherpa GitHub repository or from the standalone Sherpa page.

  • Core CIAO libraries have been updated to
    • Improved handling of non-CIAO files which violate the CXC Datamodel including invalid/missing meta-data.
    • Corrected bug in parameter interface library affecting some specific user names (starting with par) in particular when running the smoke tests. Also now supports accessing a parameter's data-type/class by using the .p_type modifier.
  • There have been several script updates released with CIAO 4.16 including

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

    SAOImageDS9 v8.5 highlights include:

    • Internal SAMP hubs allows ds9 to communicate directly with other SAMP enabled applications and websites without need of a third party application.
    • Added new XPA command to get counts in region.
    • Users can now adjust plot symbol sizes.

How CALDB 4.11.0 Affects Your Analysis

CALDB 4.11.0 Release Notes (release 14 December 2023)

ACIS Data

HRC Data


Installation and Setup

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

[NOTE]
Note

The steps needed to install CIAO have changed in CIAO 4.16 for both installation methods: conda and ciao-install, as discussed below.

Supported Platforms

Installing with the conda package manager

CIAO can be installed using the conda package and environment management system.

The conda release is available from the custom CXC channel and requires using the conda-forge channel.

$ conda create -n ciao-4.16 -c https://cxc.cfa.harvard.edu/conda -c conda-forge \
ciao pyciao sherpa ds9 marx ciao-contrib caldb_main python=3.11

See the conda installation instructions for more information, including known problems and incompatibilities.

With the conda edition users can choose to install CIAO with Python 3.11, 3.10, or 3.9. Other OTS such as numpy and matplotlib will also be be different based on the python version.

Install using the ciao-install Installation Script

[Updated]CIAO 4.16 is only available as a set of conda packages. The ciao-install script has been re-written to allow users to unfamiliar with conda to automate the installation process using a single, simple command:

$ bash ciao-install

Users can download the ciao-install script from the ciao-install download page. Users can customize the download to include additional segments such as the ACIS and HRC blank sky background CALDB files, the CIAO source code, download for different operating systems, link to existing CALDB installations, and more.

Source builds

CIAO 4.16 source code has gone through a significant reorganization and changes to the build system. CIAO is now built using cmake and meson instead of using make and Makefiles.

To download the CIAO source code it can be added with the ciao-install script

$ bash ciao-install --add ciao-src --add sherpa-src

and then built using the ciao_build.sh script

$ ciao
$ cd $ASCDS_INSTALL
$ bash ./ciao_build.sh --prefix `pwd`

(assuming users have setup the ciao alias as suggested).

Smoke Tests

CIAO 4.16 no longer uses make to run the CIAO smoke tests. The run_smoke_tests.sh script is now used:

$ ciao
$ cd $ASCDS_INSTALL
$ bash test/smoke/bin/run_smoke_tests.sh

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/*

Tools

acis_process_events

acis_build_badpix

acis_streak_map

asphist

asp_offaxis_corr

celldetect

dmarfadd

dmcontour

dmcoords

dmcopy

dmextract

dmfilth

dmimgfilt

dmimghull

dmimglasso

dmimgpick

dmlist

dmmaskbin

dmnautilus

dmregrid

evalpos

get_src_region

mkgrmf

reproject_image_grid

rmfimg

sso_freeze

tgextract

vtpdetect

wcs_match

wrecon

wtransform


Parameter Files

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.


Sherpa

Sherpa is developed as an open project, and is available on GitHub. Comments, fixes, and additions from the community are welcome. 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 documentation page.

changes


Graphical User Interfaces

Obsvis

[NOTE]
Note

Obsvis is no longer available as a separate, stand-alone download. Users need to install CIAO to use obsvis.


Analysis Scripts

There have been several updates to the contributed scripts package since CIAO 4.15 was released. These changes are specific to the CIAO 4.16.0 contributed scripts release.

dax

energy_hue_map

hexgrid

vtbin

centroid_map

pathfinder

mkregmap

map2reg

merge_too_small

apply_fov_limits

blanksky

check_ciao_version

convert_xspec_script

convert_xspec_user_model

correct_periscope_drift

reproject_obs

specextract

srcflux

crates_contrib.masked_image_crate

ciao_contrib.runtool

sherpa_contrib.profiles


Python Modules

pycrates


Libraries

datamodel

cxcparam


Environment

Off-the-Shelf (OTS) Package Versions

Compiler versions


Documentation

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