CINXE.COM
sherpa/sherpa: Sherpa 4.17.0
<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="google-site-verification" content="5fPGCLllnWrvFxH9QWI0l1TadV7byeEvfPcyK2VkS_s"/> <meta name="google-site-verification" content="Rp5zp04IKW-s1IbpTOGB7Z6XY60oloZD5C3kTM-AiY4"/> <meta name="generator" content="InvenioRDM 13.0"/> <meta name="description" content="Sherpa 4.17.0 This release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes. enhancements: add calc_model and calc_source functions to return an evaluated model/source array added wstat to plot_pvalue for the likelihood ratio test changed XSpec interface to use FunctionUtility C++ API instead of XSFortran API improved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0 improved guess for complex models improved filtering handling several updates to enhance plotting capabilities and layout documentation changes: added paper citations to front page of Sherpa Read the Docs documentation cleaned up various typos and URL references added examples such as use of set_x/y_label infrastructure and testing: improved test coverage many updates to CI drop support for Python 3.9 and numpy <1.24 initial/experimental support for Python 3.12 bug fixes: fixed an issue with plotting 1D data with asymmetric errs after filter include the default identifier in save_all output if it has been changed Details #1757 - Allow the wstat statistic to be used in the likelihood-ratio test Allow the Likelihood Ratio Test (as used by plot_value) to be run when using the WStat statistic. Fix #1745. #1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible) Internal change to the XSPEC interface to use the FunctionUtility C++ API rather than the XSFortran API. Fix #1225. #1921 - Clean up of the IO code Rework the astro data input and output code so that they take advantage of the new data representation in sherpa.astro.io.types #1949 - Initial support for Python 3.12 Initial support for building with Python 3.12 #1997 - Add support for XSPEC 12.14.0 Allow building with XSPEC 12.14.0 and include the 50 new models in it. #2017 - IO: separate pack and set commands Replace the logic of the packup argument to the set I/O commands #2033 - utils: add typing rules to random and parallel Add typing statements to the sherpa.utils.parallel and sherpa.utils.random modules #2035 - stats: add typing rules Add typing rules to sherpa.stats and minor internal clean up to the module. #2036 - Update sherpa citations Add Sherpa 4.16.1 to the citation data. #2045 - Mark code as deprecated in sherpa.utils Rework sherpa.utils and mark some symbols as deprecated - func_counter, is_in, and mysgn - along with suggested replacements. #2046- Post 4.16.1 update to add DOI info Adds the Sherpa 4.16.1 DOI info to the README.md. #2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version Support the weekly test builds using aarch64 and ppc46le architectures. This support is considered experimental. #2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used Avoid testing the XSbvvnei model if XSPEC <= 12.14.0i is in use, as the model can cause a crash in this case. #2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit The fit call can now be sent a Path object or a file handle, as well as a string. Fix issue #2063 #2056 - tests: fix fake_pha test failure on crates Address test failures when using crates after merging #1684 and to address a numerical tolerance issue on macOS ARM. #2057 - Improve the guess routine for PHA data Allow guess to work for composite models, including those with responses, and improve the guess routine used for the norm parameter of XSPEC additive models. #2058 - Address an error introduced in PR 2025 Fix an error made when addressing NumPy 2.0 changes in issue #2025. #2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines Ensure that annotations are added to the sherpa.ui and sherpa.astro.ui routines. Fix #2053 #2060 - Simple typing support for sherpa.data Add some basic typing rules to the sherpa.data module. #2061 - Avoid warning messages from AstroPy about unclosed files Initial cleanup of the astro IO code in preparation for future changes. This fixes an issue when using the AstroPy IO backend (pyfits) which could cause Python to report an unclosed file on exit #2065 - CI: enforce NumPy does not use version 2.0 for the builds Ensure the CI builds use numpy<2 #2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0 This ups the actions macOS Intel version to 12, and updates the macOS SDK to version 11.0, which is consistent with CIAO. #2069 - Allow the tests to pass with NumPy 2.0 Allow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus is not installed. #2070 - Migrate to cxc xspec conda test channel Use the cxc xspec test channel for Sherpa test workflows. #2072 - Use the correct case for the symbol name in the parameter warning message Change how the warning message for deprecated parameter names for models is displayed #2078 - Include the default identifier in save_all output if it has been changed Record the default identifier in save_all output if the user has changed it. Fix #2077 #2079 - minor cleanup of sherpa.optmethods Internal clean up of the sherpa.optmethods code. #2081 - minor plot cleanup Clean up some plot code to make better use of modern Python idioms. #2086 - data: allow axis labels to be changed Allow the independent and dependent axis labels to be changed. Addresses #2083 #2089 - minor cleanup of sherpa.optmethods Internal change to handling of the optional output file option when calling fit. There is no functional change. #2091 - Asymmetric filter plot Allow 1D data with asymmetric errors to be plotted after a filter. Fixes #2090. #2092 - Add a name field to the IO backends Add a name field to the I/O backends. This is mainly useful for testing and debugging. #2094 - Improve messages about invalid file types (PHA) Tweak the warning messages when files can not be read to better indicate the type of file being loaded (for PHA related files). #2102 - Change the URL for XPA Change the URL used for XPA. Fix #2100. #2103 - Ensure crates file reads are read-only Ensure that we read in table data as read-only when using the crates I/O backend. #2105 - docs: typo fixes and remove some references. Fix a typo in a docstring and change how two references are included in the text. #2107 - XSPEC: add show_xsabund command Add the show_xsabund command to the sherpa.astro.ui module and get_xsabundances to sherpa.astro.xspec. #2108 - Asymmetric settings Allow the statistic and optimizer to be changed when re-sampling data with asymmetric errors. Fixes #2093. #2109 - Add a set_xsabundances call for XSPEC users Add a set_xsabundances call to make it easier to change one or more elemental abundances for the XSPEC models and ensure that both the get and set calls are available from the sherpa.astro.ui module. #2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header Ensure the NUMELT and NUMGRP keywords for RMF files are written out as integers. #2112 - Minor typing cleanup Clean up some of the recently-added typing rules. #2115 - doc: add examples of using set_xlabel/ylabel Add documentation showing the new set_xlabel/ylabel functionality from #2086 #2118 - Improve support for PHA data starting at channel 0 Improve the handling of PHA files that start at channel 0. PHA data that are read in from such a file no longer renumber the CHANNEL column to start at 0 rather than 1, which will mean that notice and ignore filter ranges that are given in channel units will need to be reduced by 1. #2120 - Improve handling of STAT/SYS_ERR PHA columns Improve handling of STAT_ERR and SYS_ERR PHA columns which are set to 0. #2121 - UI: add calc_model/source commands Add calc_model and calc_source routines to return the model expression evaluated per bin. #2123 - Data cleanups Internal clean up of some of the data code. #2125 - Allow per plot kwargs for plot_xxx_components calls Allow per-plot keyword arguments for plot_model_components and plot_source_components. #2126 - Allow plot and contour to change the plot layout and have per-plot settings. Expand the plot and contour commands to allow per-plot options to be given, matching the plot_model_components/plot_source_components commands. #2129 - Fix plot overplot Improve the behaviour of plot() and contour() when called with overplot=True or overcontour=True respectively. Fix #2128. #2130 - data: fixup numpy import Fix up several typing annotations from a recent refactoring. #2133 - UI: add format and delim arguments to get_filter. Allow the get_filter call to override the format and delim arguments. Fix #1277 #2135 - Tests: tweak tolerances for macOS ARM #2135 Updated macOS ARM test tolerances #2137 - Fix doctests in sherpa.plot.__init__ Changed documentation to match backends as objects instead of modules #2138 - UI: add documentation for table to show_xsabund The show_xsabund command now includes a description of the abundance table. #2139 - Update helpdesk URL Changed helpdesk link - fixes issue #1931 #2140 - Updated docs for asymmetric errors Expanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings. #2141 - Update LaTeX labels and docs for bokeh Correctly render LaTeX labels in bokeh #2144 - Fix xspec missing doc Add get_xsabund_doc to the list of functions in the documentation. There is no functional change. #2147 - Improve corner-case handling of filtering and empty data handling A clean-up pass for the data classes, in particular DataPHA, to normalize the filtering and handling of an empty object #2151 - updating Sherpa citations Added a citation to the most recent sherpa paper #2152 - DATA: clean up DataPHA.get_x Internal clean up of the DataPHA.get_x method. #2153 - updated the front page of Sherpa RTD with references Added references to three sherpa papers in the sherpa docs #2154 - Update README Added additional text regarding acknowledging/citing sherpa #2155 - Drop support for Python 3.9 and add 3.12 Drop support for Python 3.9 and numpy < 1.24 and note Python 3.12 experimental support. #2157 - Improve test coverage of ignore_bad Add more corner-case of quality channel handling for PHA data. There is no functional change here. #2160 - Fixup test failures from #2118 Fix up a test case when writing out the range of a FITS column. #2161 - UI: note when a 1D filter command has failed Provide more information for the UI user if a filter command has failed. #2162 - TEST: ignore fork deprecation warnings Ignore the deprecation warnings about the use of the fork method for multiprocessing. #2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning Specify sphinx < 8 for the read the doc environment and remove the call to get_html_theme_path no longer needed." /> <meta name="citation_title" content="sherpa/sherpa: Sherpa 4.17.0" /> <meta name="citation_author" content="Doug Burke" /> <meta name="citation_author" content="Omar Laurino" /> <meta name="citation_author" content="wmclaugh" /> <meta name="citation_author" content="Hans Moritz G眉nther" /> <meta name="citation_author" content="Marie-Terrell" /> <meta name="citation_author" content="dtnguyen2" /> <meta name="citation_author" content="Aneta Siemiginowska" /> <meta name="citation_author" content="Harlan Cheer" /> <meta name="citation_author" content="Jamie Budynkiewicz" /> <meta name="citation_author" content="Tom Aldcroft" /> <meta name="citation_author" content="luzpaz" /> <meta name="citation_author" content="Christoph Deil" /> <meta name="citation_author" content="Brigitta Sip艖cz" /> <meta name="citation_author" content="Johannes Buchner" /> <meta name="citation_author" content="nplee" /> <meta name="citation_author" content="Axel Donath" /> <meta name="citation_author" content="Iva Laginja" /> <meta name="citation_author" content="Katrin Leinweber" /> <meta name="citation_author" content="Todd" /> <meta name="citation_doi" content="10.5281/zenodo.13909532" /> <meta name="citation_abstract_html_url" content="https://zenodo.org/records/13909532" /> <meta property="og:title" content="sherpa/sherpa: Sherpa 4.17.0" /> <meta property="og:description" content="Sherpa 4.17.0 This release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes. enhancements: add calc_model and calc_source functions to return an evaluated model/source array added wstat to plot_pvalue for the likelihood ratio test changed XSpec interface to use FunctionUtility C++ API instead of XSFortran API improved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0 improved guess for complex models improved filtering handling several updates to enhance plotting capabilities and layout documentation changes: added paper citations to front page of Sherpa Read the Docs documentation cleaned up various typos and URL references added examples such as use of set_x/y_label infrastructure and testing: improved test coverage many updates to CI drop support for Python 3.9 and numpy <1.24 initial/experimental support for Python 3.12 bug fixes: fixed an issue with plotting 1D data with asymmetric errs after filter include the default identifier in save_all output if it has been changed Details #1757 - Allow the wstat statistic to be used in the likelihood-ratio test Allow the Likelihood Ratio Test (as used by plot_value) to be run when using the WStat statistic. Fix #1745. #1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible) Internal change to the XSPEC interface to use the FunctionUtility C++ API rather than the XSFortran API. Fix #1225. #1921 - Clean up of the IO code Rework the astro data input and output code so that they take advantage of the new data representation in sherpa.astro.io.types #1949 - Initial support for Python 3.12 Initial support for building with Python 3.12 #1997 - Add support for XSPEC 12.14.0 Allow building with XSPEC 12.14.0 and include the 50 new models in it. #2017 - IO: separate pack and set commands Replace the logic of the packup argument to the set I/O commands #2033 - utils: add typing rules to random and parallel Add typing statements to the sherpa.utils.parallel and sherpa.utils.random modules #2035 - stats: add typing rules Add typing rules to sherpa.stats and minor internal clean up to the module. #2036 - Update sherpa citations Add Sherpa 4.16.1 to the citation data. #2045 - Mark code as deprecated in sherpa.utils Rework sherpa.utils and mark some symbols as deprecated - func_counter, is_in, and mysgn - along with suggested replacements. #2046- Post 4.16.1 update to add DOI info Adds the Sherpa 4.16.1 DOI info to the README.md. #2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version Support the weekly test builds using aarch64 and ppc46le architectures. This support is considered experimental. #2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used Avoid testing the XSbvvnei model if XSPEC <= 12.14.0i is in use, as the model can cause a crash in this case. #2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit The fit call can now be sent a Path object or a file handle, as well as a string. Fix issue #2063 #2056 - tests: fix fake_pha test failure on crates Address test failures when using crates after merging #1684 and to address a numerical tolerance issue on macOS ARM. #2057 - Improve the guess routine for PHA data Allow guess to work for composite models, including those with responses, and improve the guess routine used for the norm parameter of XSPEC additive models. #2058 - Address an error introduced in PR 2025 Fix an error made when addressing NumPy 2.0 changes in issue #2025. #2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines Ensure that annotations are added to the sherpa.ui and sherpa.astro.ui routines. Fix #2053 #2060 - Simple typing support for sherpa.data Add some basic typing rules to the sherpa.data module. #2061 - Avoid warning messages from AstroPy about unclosed files Initial cleanup of the astro IO code in preparation for future changes. This fixes an issue when using the AstroPy IO backend (pyfits) which could cause Python to report an unclosed file on exit #2065 - CI: enforce NumPy does not use version 2.0 for the builds Ensure the CI builds use numpy<2 #2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0 This ups the actions macOS Intel version to 12, and updates the macOS SDK to version 11.0, which is consistent with CIAO. #2069 - Allow the tests to pass with NumPy 2.0 Allow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus is not installed. #2070 - Migrate to cxc xspec conda test channel Use the cxc xspec test channel for Sherpa test workflows. #2072 - Use the correct case for the symbol name in the parameter warning message Change how the warning message for deprecated parameter names for models is displayed #2078 - Include the default identifier in save_all output if it has been changed Record the default identifier in save_all output if the user has changed it. Fix #2077 #2079 - minor cleanup of sherpa.optmethods Internal clean up of the sherpa.optmethods code. #2081 - minor plot cleanup Clean up some plot code to make better use of modern Python idioms. #2086 - data: allow axis labels to be changed Allow the independent and dependent axis labels to be changed. Addresses #2083 #2089 - minor cleanup of sherpa.optmethods Internal change to handling of the optional output file option when calling fit. There is no functional change. #2091 - Asymmetric filter plot Allow 1D data with asymmetric errors to be plotted after a filter. Fixes #2090. #2092 - Add a name field to the IO backends Add a name field to the I/O backends. This is mainly useful for testing and debugging. #2094 - Improve messages about invalid file types (PHA) Tweak the warning messages when files can not be read to better indicate the type of file being loaded (for PHA related files). #2102 - Change the URL for XPA Change the URL used for XPA. Fix #2100. #2103 - Ensure crates file reads are read-only Ensure that we read in table data as read-only when using the crates I/O backend. #2105 - docs: typo fixes and remove some references. Fix a typo in a docstring and change how two references are included in the text. #2107 - XSPEC: add show_xsabund command Add the show_xsabund command to the sherpa.astro.ui module and get_xsabundances to sherpa.astro.xspec. #2108 - Asymmetric settings Allow the statistic and optimizer to be changed when re-sampling data with asymmetric errors. Fixes #2093. #2109 - Add a set_xsabundances call for XSPEC users Add a set_xsabundances call to make it easier to change one or more elemental abundances for the XSPEC models and ensure that both the get and set calls are available from the sherpa.astro.ui module. #2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header Ensure the NUMELT and NUMGRP keywords for RMF files are written out as integers. #2112 - Minor typing cleanup Clean up some of the recently-added typing rules. #2115 - doc: add examples of using set_xlabel/ylabel Add documentation showing the new set_xlabel/ylabel functionality from #2086 #2118 - Improve support for PHA data starting at channel 0 Improve the handling of PHA files that start at channel 0. PHA data that are read in from such a file no longer renumber the CHANNEL column to start at 0 rather than 1, which will mean that notice and ignore filter ranges that are given in channel units will need to be reduced by 1. #2120 - Improve handling of STAT/SYS_ERR PHA columns Improve handling of STAT_ERR and SYS_ERR PHA columns which are set to 0. #2121 - UI: add calc_model/source commands Add calc_model and calc_source routines to return the model expression evaluated per bin. #2123 - Data cleanups Internal clean up of some of the data code. #2125 - Allow per plot kwargs for plot_xxx_components calls Allow per-plot keyword arguments for plot_model_components and plot_source_components. #2126 - Allow plot and contour to change the plot layout and have per-plot settings. Expand the plot and contour commands to allow per-plot options to be given, matching the plot_model_components/plot_source_components commands. #2129 - Fix plot overplot Improve the behaviour of plot() and contour() when called with overplot=True or overcontour=True respectively. Fix #2128. #2130 - data: fixup numpy import Fix up several typing annotations from a recent refactoring. #2133 - UI: add format and delim arguments to get_filter. Allow the get_filter call to override the format and delim arguments. Fix #1277 #2135 - Tests: tweak tolerances for macOS ARM #2135 Updated macOS ARM test tolerances #2137 - Fix doctests in sherpa.plot.__init__ Changed documentation to match backends as objects instead of modules #2138 - UI: add documentation for table to show_xsabund The show_xsabund command now includes a description of the abundance table. #2139 - Update helpdesk URL Changed helpdesk link - fixes issue #1931 #2140 - Updated docs for asymmetric errors Expanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings. #2141 - Update LaTeX labels and docs for bokeh Correctly render LaTeX labels in bokeh #2144 - Fix xspec missing doc Add get_xsabund_doc to the list of functions in the documentation. There is no functional change. #2147 - Improve corner-case handling of filtering and empty data handling A clean-up pass for the data classes, in particular DataPHA, to normalize the filtering and handling of an empty object #2151 - updating Sherpa citations Added a citation to the most recent sherpa paper #2152 - DATA: clean up DataPHA.get_x Internal clean up of the DataPHA.get_x method. #2153 - updated the front page of Sherpa RTD with references Added references to three sherpa papers in the sherpa docs #2154 - Update README Added additional text regarding acknowledging/citing sherpa #2155 - Drop support for Python 3.9 and add 3.12 Drop support for Python 3.9 and numpy < 1.24 and note Python 3.12 experimental support. #2157 - Improve test coverage of ignore_bad Add more corner-case of quality channel handling for PHA data. There is no functional change here. #2160 - Fixup test failures from #2118 Fix up a test case when writing out the range of a FITS column. #2161 - UI: note when a 1D filter command has failed Provide more information for the UI user if a filter command has failed. #2162 - TEST: ignore fork deprecation warnings Ignore the deprecation warnings about the use of the fork method for multiprocessing. #2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning Specify sphinx < 8 for the read the doc environment and remove the call to get_html_theme_path no longer needed." /> <meta property="og:url" content="https://zenodo.org/records/13909532" /> <meta property="og:site_name" content="Zenodo" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:site" content="@zenodo_org" /> <meta name="twitter:title" content="sherpa/sherpa: Sherpa 4.17.0" /> <meta name="twitter:description" content="Sherpa 4.17.0 This release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes. enhancements: add calc_model and calc_source functions to return an evaluated model/source array added wstat to plot_pvalue for the likelihood ratio test changed XSpec interface to use FunctionUtility C++ API instead of XSFortran API improved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0 improved guess for complex models improved filtering handling several updates to enhance plotting capabilities and layout documentation changes: added paper citations to front page of Sherpa Read the Docs documentation cleaned up various typos and URL references added examples such as use of set_x/y_label infrastructure and testing: improved test coverage many updates to CI drop support for Python 3.9 and numpy <1.24 initial/experimental support for Python 3.12 bug fixes: fixed an issue with plotting 1D data with asymmetric errs after filter include the default identifier in save_all output if it has been changed Details #1757 - Allow the wstat statistic to be used in the likelihood-ratio test Allow the Likelihood Ratio Test (as used by plot_value) to be run when using the WStat statistic. Fix #1745. #1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible) Internal change to the XSPEC interface to use the FunctionUtility C++ API rather than the XSFortran API. Fix #1225. #1921 - Clean up of the IO code Rework the astro data input and output code so that they take advantage of the new data representation in sherpa.astro.io.types #1949 - Initial support for Python 3.12 Initial support for building with Python 3.12 #1997 - Add support for XSPEC 12.14.0 Allow building with XSPEC 12.14.0 and include the 50 new models in it. #2017 - IO: separate pack and set commands Replace the logic of the packup argument to the set I/O commands #2033 - utils: add typing rules to random and parallel Add typing statements to the sherpa.utils.parallel and sherpa.utils.random modules #2035 - stats: add typing rules Add typing rules to sherpa.stats and minor internal clean up to the module. #2036 - Update sherpa citations Add Sherpa 4.16.1 to the citation data. #2045 - Mark code as deprecated in sherpa.utils Rework sherpa.utils and mark some symbols as deprecated - func_counter, is_in, and mysgn - along with suggested replacements. #2046- Post 4.16.1 update to add DOI info Adds the Sherpa 4.16.1 DOI info to the README.md. #2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version Support the weekly test builds using aarch64 and ppc46le architectures. This support is considered experimental. #2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used Avoid testing the XSbvvnei model if XSPEC <= 12.14.0i is in use, as the model can cause a crash in this case. #2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit The fit call can now be sent a Path object or a file handle, as well as a string. Fix issue #2063 #2056 - tests: fix fake_pha test failure on crates Address test failures when using crates after merging #1684 and to address a numerical tolerance issue on macOS ARM. #2057 - Improve the guess routine for PHA data Allow guess to work for composite models, including those with responses, and improve the guess routine used for the norm parameter of XSPEC additive models. #2058 - Address an error introduced in PR 2025 Fix an error made when addressing NumPy 2.0 changes in issue #2025. #2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines Ensure that annotations are added to the sherpa.ui and sherpa.astro.ui routines. Fix #2053 #2060 - Simple typing support for sherpa.data Add some basic typing rules to the sherpa.data module. #2061 - Avoid warning messages from AstroPy about unclosed files Initial cleanup of the astro IO code in preparation for future changes. This fixes an issue when using the AstroPy IO backend (pyfits) which could cause Python to report an unclosed file on exit #2065 - CI: enforce NumPy does not use version 2.0 for the builds Ensure the CI builds use numpy<2 #2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0 This ups the actions macOS Intel version to 12, and updates the macOS SDK to version 11.0, which is consistent with CIAO. #2069 - Allow the tests to pass with NumPy 2.0 Allow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus is not installed. #2070 - Migrate to cxc xspec conda test channel Use the cxc xspec test channel for Sherpa test workflows. #2072 - Use the correct case for the symbol name in the parameter warning message Change how the warning message for deprecated parameter names for models is displayed #2078 - Include the default identifier in save_all output if it has been changed Record the default identifier in save_all output if the user has changed it. Fix #2077 #2079 - minor cleanup of sherpa.optmethods Internal clean up of the sherpa.optmethods code. #2081 - minor plot cleanup Clean up some plot code to make better use of modern Python idioms. #2086 - data: allow axis labels to be changed Allow the independent and dependent axis labels to be changed. Addresses #2083 #2089 - minor cleanup of sherpa.optmethods Internal change to handling of the optional output file option when calling fit. There is no functional change. #2091 - Asymmetric filter plot Allow 1D data with asymmetric errors to be plotted after a filter. Fixes #2090. #2092 - Add a name field to the IO backends Add a name field to the I/O backends. This is mainly useful for testing and debugging. #2094 - Improve messages about invalid file types (PHA) Tweak the warning messages when files can not be read to better indicate the type of file being loaded (for PHA related files). #2102 - Change the URL for XPA Change the URL used for XPA. Fix #2100. #2103 - Ensure crates file reads are read-only Ensure that we read in table data as read-only when using the crates I/O backend. #2105 - docs: typo fixes and remove some references. Fix a typo in a docstring and change how two references are included in the text. #2107 - XSPEC: add show_xsabund command Add the show_xsabund command to the sherpa.astro.ui module and get_xsabundances to sherpa.astro.xspec. #2108 - Asymmetric settings Allow the statistic and optimizer to be changed when re-sampling data with asymmetric errors. Fixes #2093. #2109 - Add a set_xsabundances call for XSPEC users Add a set_xsabundances call to make it easier to change one or more elemental abundances for the XSPEC models and ensure that both the get and set calls are available from the sherpa.astro.ui module. #2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header Ensure the NUMELT and NUMGRP keywords for RMF files are written out as integers. #2112 - Minor typing cleanup Clean up some of the recently-added typing rules. #2115 - doc: add examples of using set_xlabel/ylabel Add documentation showing the new set_xlabel/ylabel functionality from #2086 #2118 - Improve support for PHA data starting at channel 0 Improve the handling of PHA files that start at channel 0. PHA data that are read in from such a file no longer renumber the CHANNEL column to start at 0 rather than 1, which will mean that notice and ignore filter ranges that are given in channel units will need to be reduced by 1. #2120 - Improve handling of STAT/SYS_ERR PHA columns Improve handling of STAT_ERR and SYS_ERR PHA columns which are set to 0. #2121 - UI: add calc_model/source commands Add calc_model and calc_source routines to return the model expression evaluated per bin. #2123 - Data cleanups Internal clean up of some of the data code. #2125 - Allow per plot kwargs for plot_xxx_components calls Allow per-plot keyword arguments for plot_model_components and plot_source_components. #2126 - Allow plot and contour to change the plot layout and have per-plot settings. Expand the plot and contour commands to allow per-plot options to be given, matching the plot_model_components/plot_source_components commands. #2129 - Fix plot overplot Improve the behaviour of plot() and contour() when called with overplot=True or overcontour=True respectively. Fix #2128. #2130 - data: fixup numpy import Fix up several typing annotations from a recent refactoring. #2133 - UI: add format and delim arguments to get_filter. Allow the get_filter call to override the format and delim arguments. Fix #1277 #2135 - Tests: tweak tolerances for macOS ARM #2135 Updated macOS ARM test tolerances #2137 - Fix doctests in sherpa.plot.__init__ Changed documentation to match backends as objects instead of modules #2138 - UI: add documentation for table to show_xsabund The show_xsabund command now includes a description of the abundance table. #2139 - Update helpdesk URL Changed helpdesk link - fixes issue #1931 #2140 - Updated docs for asymmetric errors Expanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings. #2141 - Update LaTeX labels and docs for bokeh Correctly render LaTeX labels in bokeh #2144 - Fix xspec missing doc Add get_xsabund_doc to the list of functions in the documentation. There is no functional change. #2147 - Improve corner-case handling of filtering and empty data handling A clean-up pass for the data classes, in particular DataPHA, to normalize the filtering and handling of an empty object #2151 - updating Sherpa citations Added a citation to the most recent sherpa paper #2152 - DATA: clean up DataPHA.get_x Internal clean up of the DataPHA.get_x method. #2153 - updated the front page of Sherpa RTD with references Added references to three sherpa papers in the sherpa docs #2154 - Update README Added additional text regarding acknowledging/citing sherpa #2155 - Drop support for Python 3.9 and add 3.12 Drop support for Python 3.9 and numpy < 1.24 and note Python 3.12 experimental support. #2157 - Improve test coverage of ignore_bad Add more corner-case of quality channel handling for PHA data. There is no functional change here. #2160 - Fixup test failures from #2118 Fix up a test case when writing out the range of a FITS column. #2161 - UI: note when a 1D filter command has failed Provide more information for the UI user if a filter command has failed. #2162 - TEST: ignore fork deprecation warnings Ignore the deprecation warnings about the use of the fork method for multiprocessing. #2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning Specify sphinx < 8 for the read the doc environment and remove the call to get_html_theme_path no longer needed." /> <link rel="alternate" type="application/zip" href="https://zenodo.org/records/13909532/files/sherpa/sherpa-4.17.0.zip"> <link rel="item" type="application/zip" href="https://zenodo.org/records/13909532/files/sherpa/sherpa-4.17.0.zip"> <link rel="canonical" href="https://zenodo.org/records/13909532"> <title>sherpa/sherpa: Sherpa 4.17.0</title> <link rel="shortcut icon" type="image/x-icon" href="/static/favicon.ico"/> <link rel="apple-touch-icon" sizes="120x120" href="/static/apple-touch-icon-120.png"/> <link rel="apple-touch-icon" sizes="152x152" href="/static/apple-touch-icon-152.png"/> <link rel="apple-touch-icon" sizes="167x167" href="/static/apple-touch-icon-167.png"/> <link rel="apple-touch-icon" sizes="180x180" href="/static/apple-touch-icon-180.png"/> <link rel="stylesheet" href="/static/dist/css/3526.8f908c4740715a638c4a.css" /> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> </head> <body data-invenio-config='{"isMathJaxEnabled": "//cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.2/es5/tex-mml-chtml.js?config=TeX-AMS-MML_HTMLorMML"}' itemscope itemtype="http://schema.org/WebPage" data-spy="scroll" data-target=".scrollspy-target"> <a id="skip-to-main" class="ui button primary ml-5 mt-5 skip-link" href="#main">Skip to main</a> <!--[if lt IE 8]> <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p> <![endif]--> <div> <header class="theme header"> <div class="outer-navbar"> <div class="ui container invenio-header-container"> <nav id="invenio-nav" class="ui inverted menu borderless p-0"> <div class="item logo p-0"> <a class="logo-link" href="/"> <img class="ui image rdm-logo" src="/static/images/invenio-rdm.svg" alt="Zenodo home"/> </a> </div> <div id="rdm-burger-toggle"> <button id="rdm-burger-menu-icon" class="ui button transparent" aria-label="Menu" aria-haspopup="menu" aria-expanded="false" aria-controls="invenio-menu" > <span class="navicon" aria-hidden="true"></span> </button> </div> <nav id="invenio-menu" aria-labelledby="rdm-burger-menu-icon" class="ui fluid menu borderless mobile-hidden" > <button id="rdm-close-burger-menu-icon" class="ui button transparent" aria-label="Close menu" > <span class="navicon" aria-hidden="true"></span> </button> <div class="item p-0 search-bar"> <div id="header-search-bar" data-options='[{"key": "records", "text": "All Zenodo", "value": "/search"}]'> <div class="ui fluid search"> <div class="ui icon input"> <input autocomplete="off" aria-label="Search records" placeholder="Search records..." type="text" tabindex="0" class="prompt" value="" > <i aria-hidden="true" class="search icon"></i> </div> </div> </div> </div> <div class="item"> <a href="/communities">Communities</a> </div> <div class="item"> <a href="/me/uploads">My dashboard</a> </div> <div class="right menu item"> <form> <a href="/login/?next=/records/13909532" class="ui button auth-button" aria-busy="false" aria-live="polite" aria-label="Log in" > <i class="sign-in icon auth-icon" aria-hidden="true"></i> Log in </a> <a href="/signup/" class="ui button signup"> <i class="edit outline icon"></i> Sign up </a> </form> </div> </nav> </nav> </div> </div> </header> </div> <main id="main"> <div class="invenio-page-body"> <section id="banners" class="banners" aria-label="Information banner"> <!-- COMMUNITY HEADER: hide it when displaying the submission request --> <!-- /COMMUNITY HEADER --> <!-- PREVIEW HEADER --> <!-- /PREVIEW HEADER --> </section> <div class="ui container"> <div class="ui relaxed grid mt-5"> <div class="two column row top-padded"> <article class="sixteen wide tablet eleven wide computer column main-record-content"> <section id="record-info" aria-label="Publication date and version number"> <div class="ui grid middle aligned"> <div class="two column row"> <div class="left floated left aligned column"> <span class="ui" title="Publication date"> Published October 9, 2024 </span> <span class="label text-muted"> | Version 4.17.0</span> </div> <div class="right floated right aligned column"> <span role="note" class="ui label horizontal small neutral mb-5" aria-label="Resource type" > Software </span> <span role="note" class="ui label horizontal small access-status open mb-5" data-tooltip="The record and files are publicly accessible." data-inverted="" aria-label="Access status" > <i class="icon unlock" aria-hidden="true"></i> <span aria-label="The record and files are publicly accessible."> Open </span> </span> </div> </div> </div> </section> <div class="ui divider hidden"></div><section id="record-title-section" aria-label="Record title and creators"> <h1 id="record-title" class="wrap-overflowing-text">sherpa/sherpa: Sherpa 4.17.0</h1> <section id="creatibutors" aria-label="Creators and contributors"> <div class="ui grid"> <div class="row ui accordion affiliations"> <div class="sixteen wide mobile twelve wide tablet thirteen wide computer column"> <h3 class="sr-only">Creators</h3> <ul class="creatibutors"> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22Doug+Burke%22" > <span class="creatibutor-name">Doug Burke</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="Smithsonian Astrophysical Observatory" href="/search?q=metadata.creators.person_or_org.name:%22Omar+Laurino%22" > <span class="creatibutor-name">Omar Laurino</span><sup class="font-tiny">1</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22wmclaugh%22" > <span class="creatibutor-name">wmclaugh</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="MIT" href="/search?q=metadata.creators.person_or_org.name:%22Hans+Moritz+G%C3%BCnther%22" > <span class="creatibutor-name">Hans Moritz G眉nther</span><sup class="font-tiny">2</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22Marie-Terrell%22" > <span class="creatibutor-name">Marie-Terrell</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22dtnguyen2%22" > <span class="creatibutor-name">dtnguyen2</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22Aneta+Siemiginowska%22" > <span class="creatibutor-name">Aneta Siemiginowska</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22Harlan+Cheer%22" > <span class="creatibutor-name">Harlan Cheer</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="Smithsonian Astrophysical Observatory" href="/search?q=metadata.creators.person_or_org.name:%22Jamie+Budynkiewicz%22" > <span class="creatibutor-name">Jamie Budynkiewicz</span><sup class="font-tiny">1</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="Center for Astrophysics | Harvard & Smithsonian" href="/search?q=metadata.creators.person_or_org.name:%22Tom+Aldcroft%22" > <span class="creatibutor-name">Tom Aldcroft</span><sup class="font-tiny">3</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22luzpaz%22" > <span class="creatibutor-name">luzpaz</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="HeidelbergCement" href="/search?q=metadata.creators.person_or_org.name:%22Christoph+Deil%22" > <span class="creatibutor-name">Christoph Deil</span><sup class="font-tiny">4</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="Caltech/IPAC" href="/search?q=metadata.creators.person_or_org.name:%22Brigitta+Sip%C5%91cz%22" > <span class="creatibutor-name">Brigitta Sip艖cz</span><sup class="font-tiny">5</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22Johannes+Buchner%22" > <span class="creatibutor-name">Johannes Buchner</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22nplee%22" > <span class="creatibutor-name">nplee</span></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="Center for Astrophysics | Harvard & Smithsonian" href="/search?q=metadata.creators.person_or_org.name:%22Axel+Donath%22" > <span class="creatibutor-name">Axel Donath</span><sup class="font-tiny">3</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="@spacetelescope" href="/search?q=metadata.creators.person_or_org.name:%22Iva+Laginja%22" > <span class="creatibutor-name">Iva Laginja</span><sup class="font-tiny">6</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" data-tooltip="@gitlabhq" href="/search?q=metadata.creators.person_or_org.name:%22Katrin+Leinweber%22" > <span class="creatibutor-name">Katrin Leinweber</span><sup class="font-tiny">7</sup></a> <i class="user icon"></i> </li> <li class="creatibutor-wrap separated"> <a class="ui creatibutor-link" href="/search?q=metadata.creators.person_or_org.name:%22Todd%22" > <span class="creatibutor-name">Todd</span></a> <i class="user icon"></i> </li> </ul> </div> <div class="ui sixteen wide tablet three wide computer column title right aligned bottom aligned"> <button class="ui affiliations-button trigger button mini mr-0" aria-controls="creators-affiliations" data-open-text="Show affiliations" data-close-text="Hide affiliations" aria-expanded="false" > Show affiliations </button> </div> <section class="ui sixteen wide column content" id="creators-affiliations" aria-label="Affiliations for creators"> <ul> <li> 1. Smithsonian Astrophysical Observatory </li> <li> 2. MIT </li> <li> 3. Center for Astrophysics | Harvard & Smithsonian </li> <li> 4. HeidelbergCement </li> <li> 5. Caltech/IPAC </li> <li> 6. @spacetelescope </li> <li> 7. @gitlabhq </li> </ul> </section> </div> </div> </section> </section> <section id="description" class="rel-mt-2 rich-input-content" aria-label="Record description"> <h2 id="description-heading" class="sr-only">Description</h2> <div style="word-wrap: break-word;"> <h1>Sherpa 4.17.0</h1> <p>This release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes.</p> <ul> <li>enhancements:<ul> <li>add calc_model and calc_source functions to return an evaluated model/source array</li> <li>added wstat to plot_pvalue for the likelihood ratio test</li> <li>changed XSpec interface to use FunctionUtility C++ API instead of XSFortran API</li> <li>improved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0</li> <li>improved guess for complex models</li> <li>improved filtering handling</li> <li>several updates to enhance plotting capabilities and layout</li> </ul> </li> <li>documentation changes:<ul> <li>added paper citations to front page of Sherpa Read the Docs documentation</li> <li>cleaned up various typos and URL references</li> <li>added examples such as use of set_x/y_label</li> </ul> </li> <li>infrastructure and testing:<ul> <li>improved test coverage</li> <li>many updates to CI</li> <li>drop support for Python 3.9 and numpy <1.24</li> <li>initial/experimental support for Python 3.12</li> </ul> </li> <li>bug fixes:<ul> <li>fixed an issue with plotting 1D data with asymmetric errs after filter</li> <li>include the default identifier in save_all output if it has been changed</li> </ul> </li> </ul> <h2>Details</h2> <p>#1757 - Allow the wstat statistic to be used in the likelihood-ratio test Allow the Likelihood Ratio Test (as used by plot_value) to be run when using the WStat statistic. Fix #1745.</p> <p>#1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible) Internal change to the XSPEC interface to use the FunctionUtility C++ API rather than the XSFortran API. Fix #1225.</p> <p>#1921 - Clean up of the IO code Rework the astro data input and output code so that they take advantage of the new data representation in sherpa.astro.io.types</p> <p>#1949 - Initial support for Python 3.12 Initial support for building with Python 3.12</p> <p>#1997 - Add support for XSPEC 12.14.0 Allow building with XSPEC 12.14.0 and include the 50 new models in it.</p> <p>#2017 - IO: separate pack and set commands Replace the logic of the packup argument to the set I/O commands</p> <p>#2033 - utils: add typing rules to random and parallel Add typing statements to the sherpa.utils.parallel and sherpa.utils.random modules</p> <p>#2035 - stats: add typing rules Add typing rules to sherpa.stats and minor internal clean up to the module.</p> <p>#2036 - Update sherpa citations Add Sherpa 4.16.1 to the citation data.</p> <p>#2045 - Mark code as deprecated in sherpa.utils Rework sherpa.utils and mark some symbols as deprecated - func_counter, is_in, and mysgn - along with suggested replacements.</p> <p>#2046- Post 4.16.1 update to add DOI info Adds the Sherpa 4.16.1 DOI info to the README.md.</p> <p>#2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version Support the weekly test builds using aarch64 and ppc46le architectures. This support is considered experimental.</p> <p>#2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used Avoid testing the XSbvvnei model if XSPEC <= 12.14.0i is in use, as the model can cause a crash in this case.</p> <p>#2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit The fit call can now be sent a Path object or a file handle, as well as a string. Fix issue #2063</p> <p>#2056 - tests: fix fake_pha test failure on crates Address test failures when using crates after merging #1684 and to address a numerical tolerance issue on macOS ARM.</p> <p>#2057 - Improve the guess routine for PHA data Allow guess to work for composite models, including those with responses, and improve the guess routine used for the norm parameter of XSPEC additive models.</p> <p>#2058 - Address an error introduced in PR 2025 Fix an error made when addressing NumPy 2.0 changes in issue #2025.</p> <p>#2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines Ensure that annotations are added to the sherpa.ui and sherpa.astro.ui routines. Fix #2053</p> <p>#2060 - Simple typing support for sherpa.data Add some basic typing rules to the sherpa.data module.</p> <p>#2061 - Avoid warning messages from AstroPy about unclosed files Initial cleanup of the astro IO code in preparation for future changes. This fixes an issue when using the AstroPy IO backend (pyfits) which could cause Python to report an unclosed file on exit</p> <p>#2065 - CI: enforce NumPy does not use version 2.0 for the builds Ensure the CI builds use numpy<2</p> <p>#2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0 This ups the actions macOS Intel version to 12, and updates the macOS SDK to version 11.0, which is consistent with CIAO.</p> <p>#2069 - Allow the tests to pass with NumPy 2.0 Allow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus is not installed.</p> <p>#2070 - Migrate to cxc xspec conda test channel Use the cxc xspec test channel for Sherpa test workflows.</p> <p>#2072 - Use the correct case for the symbol name in the parameter warning message Change how the warning message for deprecated parameter names for models is displayed</p> <p>#2078 - Include the default identifier in save_all output if it has been changed Record the default identifier in save_all output if the user has changed it. Fix #2077</p> <p>#2079 - minor cleanup of sherpa.optmethods Internal clean up of the sherpa.optmethods code.</p> <p>#2081 - minor plot cleanup Clean up some plot code to make better use of modern Python idioms.</p> <p>#2086 - data: allow axis labels to be changed Allow the independent and dependent axis labels to be changed. Addresses #2083</p> <p>#2089 - minor cleanup of sherpa.optmethods Internal change to handling of the optional output file option when calling fit. There is no functional change.</p> <p>#2091 - Asymmetric filter plot Allow 1D data with asymmetric errors to be plotted after a filter. Fixes #2090.</p> <p>#2092 - Add a name field to the IO backends Add a name field to the I/O backends. This is mainly useful for testing and debugging.</p> <p>#2094 - Improve messages about invalid file types (PHA) Tweak the warning messages when files can not be read to better indicate the type of file being loaded (for PHA related files).</p> <p>#2102 - Change the URL for XPA Change the URL used for XPA. Fix #2100.</p> <p>#2103 - Ensure crates file reads are read-only Ensure that we read in table data as read-only when using the crates I/O backend.</p> <p>#2105 - docs: typo fixes and remove some references. Fix a typo in a docstring and change how two references are included in the text.</p> <p>#2107 - XSPEC: add show_xsabund command Add the show_xsabund command to the sherpa.astro.ui module and get_xsabundances to sherpa.astro.xspec.</p> <p>#2108 - Asymmetric settings Allow the statistic and optimizer to be changed when re-sampling data with asymmetric errors. Fixes #2093.</p> <p>#2109 - Add a set_xsabundances call for XSPEC users Add a set_xsabundances call to make it easier to change one or more elemental abundances for the XSPEC models and ensure that both the get and set calls are available from the sherpa.astro.ui module.</p> <p>#2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header Ensure the NUMELT and NUMGRP keywords for RMF files are written out as integers.</p> <p>#2112 - Minor typing cleanup Clean up some of the recently-added typing rules.</p> <p>#2115 - doc: add examples of using set_xlabel/ylabel Add documentation showing the new set_xlabel/ylabel functionality from #2086</p> <p>#2118 - Improve support for PHA data starting at channel 0 Improve the handling of PHA files that start at channel 0. PHA data that are read in from such a file no longer renumber the CHANNEL column to start at 0 rather than 1, which will mean that notice and ignore filter ranges that are given in channel units will need to be reduced by 1.</p> <p>#2120 - Improve handling of STAT/SYS_ERR PHA columns Improve handling of STAT_ERR and SYS_ERR PHA columns which are set to 0.</p> <p>#2121 - UI: add calc_model/source commands Add calc_model and calc_source routines to return the model expression evaluated per bin.</p> <p>#2123 - Data cleanups Internal clean up of some of the data code.</p> <p>#2125 - Allow per plot kwargs for plot_xxx_components calls Allow per-plot keyword arguments for plot_model_components and plot_source_components.</p> <p>#2126 - Allow plot and contour to change the plot layout and have per-plot settings. Expand the plot and contour commands to allow per-plot options to be given, matching the plot_model_components/plot_source_components commands.</p> <p>#2129 - Fix plot overplot Improve the behaviour of plot() and contour() when called with overplot=True or overcontour=True respectively. Fix #2128.</p> <p>#2130 - data: fixup numpy import Fix up several typing annotations from a recent refactoring.</p> <p>#2133 - UI: add format and delim arguments to get_filter. Allow the get_filter call to override the format and delim arguments. Fix #1277</p> <p>#2135 - Tests: tweak tolerances for macOS ARM #2135 Updated macOS ARM test tolerances</p> <p>#2137 - Fix doctests in <code>sherpa.plot.__init__</code> Changed documentation to match backends as objects instead of modules</p> <p>#2138 - UI: add documentation for table to show_xsabund The show_xsabund command now includes a description of the abundance table.</p> <p>#2139 - Update helpdesk URL Changed helpdesk link - fixes issue #1931</p> <p>#2140 - Updated docs for asymmetric errors Expanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings.</p> <p>#2141 - Update LaTeX labels and docs for bokeh Correctly render LaTeX labels in bokeh</p> <p>#2144 - Fix xspec missing doc Add get_xsabund_doc to the list of functions in the documentation. There is no functional change.</p> <p>#2147 - Improve corner-case handling of filtering and empty data handling A clean-up pass for the data classes, in particular DataPHA, to normalize the filtering and handling of an empty object</p> <p>#2151 - updating Sherpa citations Added a citation to the most recent sherpa paper</p> <p>#2152 - DATA: clean up DataPHA.get_x Internal clean up of the DataPHA.get_x method.</p> <p>#2153 - updated the front page of Sherpa RTD with references Added references to three sherpa papers in the sherpa docs</p> <p>#2154 - Update README Added additional text regarding acknowledging/citing sherpa</p> <p>#2155 - Drop support for Python 3.9 and add 3.12 Drop support for Python 3.9 and numpy < 1.24 and note Python 3.12 experimental support.</p> <p>#2157 - Improve test coverage of ignore_bad Add more corner-case of quality channel handling for PHA data. There is no functional change here.</p> <p>#2160 - Fixup test failures from #2118 Fix up a test case when writing out the range of a FITS column.</p> <p>#2161 - UI: note when a 1D filter command has failed Provide more information for the UI user if a filter command has failed.</p> <p>#2162 - TEST: ignore fork deprecation warnings Ignore the deprecation warnings about the use of the fork method for multiprocessing.</p> <p>#2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning Specify sphinx < 8 for the read the doc environment and remove the call to get_html_theme_path no longer needed.</p> </div> </section> <section id="record-files" class="rel-mt-2 rel-mb-3" aria-label="Files" ><h2 id="files-heading">Files</h2> <div class="ui accordion panel mb-10 open" href="#files-preview-accordion-panel"> <h3 class="active title panel-heading open m-0"> <div role="button" id="files-preview-accordion-trigger" aria-controls="files-preview-accordion-panel" aria-expanded="true" tabindex="0" class="trigger" aria-label="File preview" > <span id="preview-file-title">sherpa/sherpa-4.17.0.zip</span> <i class="angle right icon" aria-hidden="true"></i> </div> </h3> <div role="region" id="files-preview-accordion-panel" aria-labelledby="files-preview-accordion-trigger" class="active content preview-container pt-0 open" > <div> <iframe title="Preview" class="preview-iframe" id="preview-iframe" name="preview-iframe" src="/records/13909532/preview/sherpa/sherpa-4.17.0.zip?include_deleted=0" > </iframe> </div> </div> </div> <div class="ui accordion panel mb-10 open" href="#files-list-accordion-panel"> <h3 class="active title panel-heading open m-0"> <div role="button" id="files-list-accordion-trigger" aria-controls="files-list-accordion-panel" aria-expanded="true" tabindex="0" class="trigger"> Files <small class="text-muted"> (16.4 MB)</small> <i class="angle right icon" aria-hidden="true"></i> </div> </h3> <div role="region" id="files-list-accordion-panel" aria-labelledby="files-list-accordion-trigger" class="active content pt-0"> <div> <table class="ui striped table files fluid open"> <thead> <tr> <th>Name</th> <th>Size</th> <th class> <a role="button" class="ui compact mini button right floated archive-link" href="https://zenodo.org/api/records/13909532/files-archive"> <i class="file archive icon button" aria-hidden="true"></i> Download all </a> </th> </tr> </thead> <tbody> <tr> <td class="ten wide"> <div> <a href="/records/13909532/files/sherpa/sherpa-4.17.0.zip?download=1">sherpa/sherpa-4.17.0.zip</a> </div> <small class="ui text-muted font-tiny">md5:3330ee192f0c8d92c39cd74849f41e7d <div class="ui icon inline-block" data-tooltip="This is the file fingerprint (checksum), which can be used to verify the file integrity."> <i class="question circle checksum icon"></i> </div> </small> </td> <td>16.4 MB</td> <td class="right aligned"> <span> <a role="button" class="ui compact mini button preview-link" href="/records/13909532/preview/sherpa/sherpa-4.17.0.zip?include_deleted=0" target="preview-iframe" data-file-key="sherpa/sherpa-4.17.0.zip"> <i class="eye icon" aria-hidden="true"></i>Preview </a> <a role="button" class="ui compact mini button" href="/records/13909532/files/sherpa/sherpa-4.17.0.zip?download=1"> <i class="download icon" aria-hidden="true"></i>Download </a> </span> </td> </tr> </tbody> </table> </div> </div> </div> </section> <section id="additional-details" class="rel-mt-2" aria-label="Additional record details"> <h2 id="record-details-heading">Additional details</h2> <div class="ui divider"></div> <div class="ui grid"> <div class="sixteen wide mobile four wide tablet three wide computer column"> <h3 class="ui header">Related works</h3> </div> <div class="sixteen wide mobile twelve wide tablet thirteen wide computer column"> <dl class="details-list"> <dt class="ui tiny header">Is supplement to</dt> <dd> Software: <a href="https://github.com/sherpa/sherpa/tree/4.17.0" target="_blank" title="Opens in new tab"> https://github.com/sherpa/sherpa/tree/4.17.0 </a> (URL) </dd> </dl> </div> </div> <div class="ui divider"></div> </section> <section id="citations-search" data-record-pids='{"doi": {"client": "datacite", "identifier": "10.5281/zenodo.13909532", "provider": "datacite"}, "oai": {"identifier": "oai:zenodo.org:13909532", "provider": "oai"}}' data-record-parent-pids='{"doi": {"client": "datacite", "identifier": "10.5281/zenodo.593753", "provider": "datacite"}}' data-citations-endpoint="https://zenodo-broker.web.cern.ch/api/relationships" aria-label="Record citations" class="rel-mb-1" > </section> </article> <aside class="sixteen wide tablet five wide computer column sidebar" aria-label="Record details"> <section id="metrics" aria-label="Metrics" class="ui segment rdm-sidebar sidebar-container"> <div class="ui tiny two statistics rel-mt-1"> <div class="ui statistic"> <div class="value">10K</div> <div class="label"> <i aria-hidden="true" class="eye icon"></i> Views </div> </div> <div class="ui statistic"> <div class="value">544</div> <div class="label"> <i aria-hidden="true" class="download icon"></i> Downloads </div> </div> </div> <div class="ui accordion rel-mt-1 centered"> <div class="title"> <i class="caret right icon" aria-hidden="true"></i> <span tabindex="0" class="trigger" data-open-text="Show more details" data-close-text="Show less details" > Show more details </span> </div> <div class="content"> <table id="record-statistics" class="ui definition table fluid"> <thead> <tr> <th></th> <th class="right aligned">All versions</th> <th class="right aligned">This version</th> </tr> </thead> <tbody> <tr> <td> Views <i tabindex="0" role="button" style="position:relative" class="popup-trigger question circle small icon" aria-expanded="false" aria-label="More info" data-variation="mini inverted" > </i> <p role="tooltip" class="popup-content ui flowing popup transition hidden"> Total views </p> </td> <td data-label="All versions" class="right aligned"> 9,800 </td> <td data-label="This version" class="right aligned"> 1,007 </td> </tr> <tr> <td> Downloads <i tabindex="0" role="button" style="position:relative" class="popup-trigger question circle small icon" aria-expanded="false" aria-label="More info" data-variation="mini inverted" > </i> <p role="tooltip" class="popup-content ui flowing popup transition hidden"> Total downloads </p> </td> <td data-label="All versions" class="right aligned"> 544 </td> <td data-label="This version" class="right aligned"> 23 </td> </tr> <tr> <td> Data volume <i tabindex="0" role="button" style="position:relative" class="popup-trigger question circle small icon" aria-expanded="false" aria-label="More info" data-variation="mini inverted" > </i> <p role="tooltip" class="popup-content ui flowing popup transition hidden"> Total data volume </p> </td> <td data-label="All versions" class="right aligned">8.1 GB</td> <td data-label="This version" class="right aligned">394.1 MB</td> </tr> </tbody> </table> <p class="text-align-center rel-mt-1"> <small> <a href="/help/statistics">More info on how stats are collected....</a> </small> </p> </div> </div> </section> <div class="sidebar-container"> <h2 class="ui medium top attached header mt-0">Versions</h2> <div id="record-versions" class="ui segment rdm-sidebar bottom attached pl-0 pr-0 pt-0"> <div class="versions"> <div id="recordVersions" data-record='{"access": {"embargo": {"active": false, "reason": null}, "files": "public", "record": "public", "status": "open"}, "created": "2024-10-09T16:55:12.906565+00:00", "custom_fields": {}, "deletion_status": {"is_deleted": false, "status": "P"}, "expanded": {"parent": {"access": {"owned_by": {"active": null, "blocked_at": null, "confirmed_at": null, "email": "", "id": "683", "is_current_user": false, "links": {"avatar": "https://zenodo.org/api/users/683/avatar.svg", "records_html": "https://zenodo.org/search/records?q=parent.access.owned_by.user:683", "self": "https://zenodo.org/api/users/683"}, "profile": {"affiliations": "", "full_name": ""}, "username": "olaurino", "verified_at": null}}}}, "files": {"count": 1, "enabled": true, "entries": {"sherpa/sherpa-4.17.0.zip": {"access": {"hidden": false}, "checksum": "md5:3330ee192f0c8d92c39cd74849f41e7d", "ext": "zip", "id": "4a74ce40-3b15-4f9d-94b8-be5d6f4761fd", "key": "sherpa/sherpa-4.17.0.zip", "links": {"content": "https://zenodo.org/api/records/13909532/files/sherpa/sherpa-4.17.0.zip/content", "self": "https://zenodo.org/api/records/13909532/files/sherpa/sherpa-4.17.0.zip"}, "metadata": null, "mimetype": "application/zip", "size": 16420660, "storage_class": "L"}}, "order": [], "total_bytes": 16420660}, "id": "13909532", "is_draft": false, "is_published": true, "links": {"access": "https://zenodo.org/api/records/13909532/access", "access_grants": "https://zenodo.org/api/records/13909532/access/grants", "access_links": "https://zenodo.org/api/records/13909532/access/links", "access_request": "https://zenodo.org/api/records/13909532/access/request", "access_users": "https://zenodo.org/api/records/13909532/access/users", "archive": "https://zenodo.org/api/records/13909532/files-archive", "archive_media": "https://zenodo.org/api/records/13909532/media-files-archive", "communities": "https://zenodo.org/api/records/13909532/communities", "communities-suggestions": "https://zenodo.org/api/records/13909532/communities-suggestions", "doi": "https://doi.org/10.5281/zenodo.13909532", "draft": "https://zenodo.org/api/records/13909532/draft", "files": "https://zenodo.org/api/records/13909532/files", "latest": "https://zenodo.org/api/records/13909532/versions/latest", "latest_html": "https://zenodo.org/records/13909532/latest", "media_files": "https://zenodo.org/api/records/13909532/media-files", "parent": "https://zenodo.org/api/records/593753", "parent_doi": "https://doi.org/10.5281/zenodo.593753", "parent_doi_html": "https://zenodo.org/doi/10.5281/zenodo.593753", "parent_html": "https://zenodo.org/records/593753", "preview_html": "https://zenodo.org/records/13909532?preview=1", "requests": "https://zenodo.org/api/records/13909532/requests", "reserve_doi": "https://zenodo.org/api/records/13909532/draft/pids/doi", "self": "https://zenodo.org/api/records/13909532", "self_doi": "https://doi.org/10.5281/zenodo.13909532", "self_doi_html": "https://zenodo.org/doi/10.5281/zenodo.13909532", "self_html": "https://zenodo.org/records/13909532", "self_iiif_manifest": "https://zenodo.org/api/iiif/record:13909532/manifest", "self_iiif_sequence": "https://zenodo.org/api/iiif/record:13909532/sequence/default", "versions": "https://zenodo.org/api/records/13909532/versions"}, "media_files": {"count": 0, "enabled": false, "entries": {}, "order": [], "total_bytes": 0}, "metadata": {"creators": [{"person_or_org": {"family_name": "Doug Burke", "name": "Doug Burke", "type": "personal"}}, {"affiliations": [{"name": "Smithsonian Astrophysical Observatory"}], "person_or_org": {"family_name": "Omar Laurino", "name": "Omar Laurino", "type": "personal"}}, {"person_or_org": {"family_name": "wmclaugh", "name": "wmclaugh", "type": "personal"}}, {"affiliations": [{"name": "MIT"}], "person_or_org": {"family_name": "Hans Moritz G\u00fcnther", "name": "Hans Moritz G\u00fcnther", "type": "personal"}}, {"person_or_org": {"family_name": "Marie-Terrell", "name": "Marie-Terrell", "type": "personal"}}, {"person_or_org": {"family_name": "dtnguyen2", "name": "dtnguyen2", "type": "personal"}}, {"person_or_org": {"family_name": "Aneta Siemiginowska", "name": "Aneta Siemiginowska", "type": "personal"}}, {"person_or_org": {"family_name": "Harlan Cheer", "name": "Harlan Cheer", "type": "personal"}}, {"affiliations": [{"name": "Smithsonian Astrophysical Observatory"}], "person_or_org": {"family_name": "Jamie Budynkiewicz", "name": "Jamie Budynkiewicz", "type": "personal"}}, {"affiliations": [{"name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "person_or_org": {"family_name": "Tom Aldcroft", "name": "Tom Aldcroft", "type": "personal"}}, {"person_or_org": {"family_name": "luzpaz", "name": "luzpaz", "type": "personal"}}, {"affiliations": [{"name": "HeidelbergCement"}], "person_or_org": {"family_name": "Christoph Deil", "name": "Christoph Deil", "type": "personal"}}, {"affiliations": [{"name": "Caltech/IPAC"}], "person_or_org": {"family_name": "Brigitta Sip\u0151cz", "name": "Brigitta Sip\u0151cz", "type": "personal"}}, {"person_or_org": {"family_name": "Johannes Buchner", "name": "Johannes Buchner", "type": "personal"}}, {"person_or_org": {"family_name": "nplee", "name": "nplee", "type": "personal"}}, {"affiliations": [{"name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "person_or_org": {"family_name": "Axel Donath", "name": "Axel Donath", "type": "personal"}}, {"affiliations": [{"name": "@spacetelescope"}], "person_or_org": {"family_name": "Iva Laginja", "name": "Iva Laginja", "type": "personal"}}, {"affiliations": [{"name": "@gitlabhq"}], "person_or_org": {"family_name": "Katrin Leinweber", "name": "Katrin Leinweber", "type": "personal"}}, {"person_or_org": {"family_name": "Todd", "name": "Todd", "type": "personal"}}], "description": "\u003ch1\u003eSherpa 4.17.0\u003c/h1\u003e\n\u003cp\u003eThis release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eenhancements:\u003cul\u003e\n\u003cli\u003eadd calc_model and calc_source functions to return an evaluated model/source array\u003c/li\u003e\n\u003cli\u003eadded wstat to plot_pvalue for the likelihood ratio test\u003c/li\u003e\n\u003cli\u003echanged XSpec interface to use FunctionUtility C++ API instead of XSFortran API\u003c/li\u003e\n\u003cli\u003eimproved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0\u003c/li\u003e\n\u003cli\u003eimproved guess for complex models\u003c/li\u003e\n\u003cli\u003eimproved filtering handling\u003c/li\u003e\n\u003cli\u003eseveral updates to enhance plotting capabilities and layout\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edocumentation changes:\u003cul\u003e\n\u003cli\u003eadded paper citations to front page of Sherpa Read the Docs documentation\u003c/li\u003e\n\u003cli\u003ecleaned up various typos and URL references\u003c/li\u003e\n\u003cli\u003eadded examples such as use of set_x/y_label\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003einfrastructure and testing:\u003cul\u003e\n\u003cli\u003eimproved test coverage\u003c/li\u003e\n\u003cli\u003emany updates to CI\u003c/li\u003e\n\u003cli\u003edrop support for Python 3.9 and numpy \u0026lt;1.24\u003c/li\u003e\n\u003cli\u003einitial/experimental support for Python 3.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ebug fixes:\u003cul\u003e\n\u003cli\u003efixed an issue with plotting 1D data with asymmetric errs after filter\u003c/li\u003e\n\u003cli\u003einclude the default identifier in save_all output if it has been changed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDetails\u003c/h2\u003e\n\u003cp\u003e#1757 - Allow the wstat statistic to be used in the likelihood-ratio test\nAllow the Likelihood Ratio Test (as used by plot_value) to be run when\nusing the WStat statistic. Fix #1745.\u003c/p\u003e\n\u003cp\u003e#1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible)\nInternal change to the XSPEC interface to use the FunctionUtility C++ API\nrather than the XSFortran API. Fix #1225.\u003c/p\u003e\n\u003cp\u003e#1921 - Clean up of the IO code\nRework the astro data input and output code so that they take advantage of\nthe new data representation in sherpa.astro.io.types\u003c/p\u003e\n\u003cp\u003e#1949 - Initial support for Python 3.12\nInitial support for building with Python 3.12\u003c/p\u003e\n\u003cp\u003e#1997 - Add support for XSPEC 12.14.0\nAllow building with XSPEC 12.14.0 and include the 50 new models in it.\u003c/p\u003e\n\u003cp\u003e#2017 - IO: separate pack and set commands\nReplace the logic of the packup argument to the set I/O commands\u003c/p\u003e\n\u003cp\u003e#2033 - utils: add typing rules to random and parallel\nAdd typing statements to the sherpa.utils.parallel and sherpa.utils.random\nmodules\u003c/p\u003e\n\u003cp\u003e#2035 - stats: add typing rules\nAdd typing rules to sherpa.stats and minor internal clean up to the module.\u003c/p\u003e\n\u003cp\u003e#2036 - Update sherpa citations\nAdd Sherpa 4.16.1 to the citation data.\u003c/p\u003e\n\u003cp\u003e#2045 - Mark code as deprecated in sherpa.utils\nRework sherpa.utils and mark some symbols as deprecated - func_counter,\nis_in, and mysgn - along with suggested replacements.\u003c/p\u003e\n\u003cp\u003e#2046- Post 4.16.1 update to add DOI info\nAdds the Sherpa 4.16.1 DOI info to the README.md.\u003c/p\u003e\n\u003cp\u003e#2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version\nSupport the weekly test builds using aarch64 and ppc46le architectures.\nThis support is considered experimental.\u003c/p\u003e\n\u003cp\u003e#2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used\nAvoid testing the XSbvvnei model if XSPEC \u0026lt;= 12.14.0i is in use, as the\nmodel can cause a crash in this case.\u003c/p\u003e\n\u003cp\u003e#2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit\nThe fit call can now be sent a Path object or a file handle, as well as a\nstring. Fix issue #2063\u003c/p\u003e\n\u003cp\u003e#2056 - tests: fix fake_pha test failure on crates\nAddress test failures when using crates after merging #1684 and to address\na numerical tolerance issue on macOS ARM.\u003c/p\u003e\n\u003cp\u003e#2057 - Improve the guess routine for PHA data\nAllow guess to work for composite models, including those with responses,\nand improve the guess routine used for the norm parameter of XSPEC additive\nmodels.\u003c/p\u003e\n\u003cp\u003e#2058 - Address an error introduced in PR 2025\nFix an error made when addressing NumPy 2.0 changes in issue #2025.\u003c/p\u003e\n\u003cp\u003e#2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines\nEnsure that annotations are added to the sherpa.ui and sherpa.astro.ui\nroutines. Fix #2053\u003c/p\u003e\n\u003cp\u003e#2060 - Simple typing support for sherpa.data\nAdd some basic typing rules to the sherpa.data module.\u003c/p\u003e\n\u003cp\u003e#2061 - Avoid warning messages from AstroPy about unclosed files\nInitial cleanup of the astro IO code in preparation for future changes.\nThis fixes an issue when using the AstroPy IO backend (pyfits) which could\ncause Python to report an unclosed file on exit\u003c/p\u003e\n\u003cp\u003e#2065 - CI: enforce NumPy does not use version 2.0 for the builds\nEnsure the CI builds use numpy\u0026lt;2\u003c/p\u003e\n\u003cp\u003e#2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0\nThis ups the actions macOS Intel version to 12, and updates the macOS SDK\nto version 11.0, which is consistent with CIAO.\u003c/p\u003e\n\u003cp\u003e#2069 - Allow the tests to pass with NumPy 2.0\nAllow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus\nis not installed.\u003c/p\u003e\n\u003cp\u003e#2070 - Migrate to cxc xspec conda test channel\nUse the cxc xspec test channel for Sherpa test workflows.\u003c/p\u003e\n\u003cp\u003e#2072 - Use the correct case for the symbol name in the parameter warning message\nChange how the warning message for deprecated parameter names for models\nis displayed\u003c/p\u003e\n\u003cp\u003e#2078 - Include the default identifier in save_all output if it has been changed\nRecord the default identifier in save_all output if the user has changed\nit. Fix #2077\u003c/p\u003e\n\u003cp\u003e#2079 - minor cleanup of sherpa.optmethods\nInternal clean up of the sherpa.optmethods code.\u003c/p\u003e\n\u003cp\u003e#2081 - minor plot cleanup\nClean up some plot code to make better use of modern Python idioms.\u003c/p\u003e\n\u003cp\u003e#2086 - data: allow axis labels to be changed\nAllow the independent and dependent axis labels to be changed. Addresses\n#2083\u003c/p\u003e\n\u003cp\u003e#2089 - minor cleanup of sherpa.optmethods\nInternal change to handling of the optional output file option when calling\nfit. There is no functional change.\u003c/p\u003e\n\u003cp\u003e#2091 - Asymmetric filter plot\nAllow 1D data with asymmetric errors to be plotted after a filter. Fixes\n#2090.\u003c/p\u003e\n\u003cp\u003e#2092 - Add a name field to the IO backends\nAdd a name field to the I/O backends. This is mainly useful for testing\nand debugging.\u003c/p\u003e\n\u003cp\u003e#2094 - Improve messages about invalid file types (PHA)\nTweak the warning messages when files can not be read to better indicate\nthe type of file being loaded (for PHA related files).\u003c/p\u003e\n\u003cp\u003e#2102 - Change the URL for XPA\nChange the URL used for XPA. Fix #2100.\u003c/p\u003e\n\u003cp\u003e#2103 - Ensure crates file reads are read-only\nEnsure that we read in table data as read-only when using the crates I/O\nbackend.\u003c/p\u003e\n\u003cp\u003e#2105 - docs: typo fixes and remove some references.\nFix a typo in a docstring and change how two references are included in\nthe text.\u003c/p\u003e\n\u003cp\u003e#2107 - XSPEC: add show_xsabund command\nAdd the show_xsabund command to the sherpa.astro.ui module and\nget_xsabundances to sherpa.astro.xspec.\u003c/p\u003e\n\u003cp\u003e#2108 - Asymmetric settings\nAllow the statistic and optimizer to be changed when re-sampling data with\nasymmetric errors. Fixes #2093.\u003c/p\u003e\n\u003cp\u003e#2109 - Add a set_xsabundances call for XSPEC users\nAdd a set_xsabundances call to make it easier to change one or more\nelemental abundances for the XSPEC models and ensure that both the get\nand set calls are available from the sherpa.astro.ui module.\u003c/p\u003e\n\u003cp\u003e#2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header\nEnsure the NUMELT and NUMGRP keywords for RMF files are written out as\nintegers.\u003c/p\u003e\n\u003cp\u003e#2112 - Minor typing cleanup\nClean up some of the recently-added typing rules.\u003c/p\u003e\n\u003cp\u003e#2115 - doc: add examples of using set_xlabel/ylabel\nAdd documentation showing the new set_xlabel/ylabel functionality from\n#2086\u003c/p\u003e\n\u003cp\u003e#2118 - Improve support for PHA data starting at channel 0\nImprove the handling of PHA files that start at channel 0. PHA data that\nare read in from such a file no longer renumber the CHANNEL column to start\nat 0 rather than 1, which will mean that notice and ignore filter ranges\nthat are given in channel units will need to be reduced by 1.\u003c/p\u003e\n\u003cp\u003e#2120 - Improve handling of STAT/SYS_ERR PHA columns\nImprove handling of STAT_ERR and SYS_ERR PHA columns which are set to 0.\u003c/p\u003e\n\u003cp\u003e#2121 - UI: add calc_model/source commands\nAdd calc_model and calc_source routines to return the model expression\nevaluated per bin.\u003c/p\u003e\n\u003cp\u003e#2123 - Data cleanups\nInternal clean up of some of the data code.\u003c/p\u003e\n\u003cp\u003e#2125 - Allow per plot kwargs for plot_xxx_components calls\nAllow per-plot keyword arguments for plot_model_components and\nplot_source_components.\u003c/p\u003e\n\u003cp\u003e#2126 - Allow plot and contour to change the plot layout and have per-plot settings.\nExpand the plot and contour commands to allow per-plot options to be given,\nmatching the plot_model_components/plot_source_components commands.\u003c/p\u003e\n\u003cp\u003e#2129 - Fix plot overplot\nImprove the behaviour of plot() and contour() when called with\noverplot=True or overcontour=True respectively. Fix #2128.\u003c/p\u003e\n\u003cp\u003e#2130 - data: fixup numpy import\nFix up several typing annotations from a recent refactoring.\u003c/p\u003e\n\u003cp\u003e#2133 - UI: add format and delim arguments to get_filter.\nAllow the get_filter call to override the format and delim arguments. Fix\n#1277\u003c/p\u003e\n\u003cp\u003e#2135 - Tests: tweak tolerances for macOS ARM #2135\nUpdated macOS ARM test tolerances\u003c/p\u003e\n\u003cp\u003e#2137 - Fix doctests in \u003ccode\u003esherpa.plot.__init__\u003c/code\u003e\nChanged documentation to match backends as objects instead of modules\u003c/p\u003e\n\u003cp\u003e#2138 - UI: add documentation for table to show_xsabund\nThe show_xsabund command now includes a description of the abundance table.\u003c/p\u003e\n\u003cp\u003e#2139 - Update helpdesk URL\nChanged helpdesk link - fixes issue #1931\u003c/p\u003e\n\u003cp\u003e#2140 - Updated docs for asymmetric errors\nExpanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings.\u003c/p\u003e\n\u003cp\u003e#2141 - Update LaTeX labels and docs for bokeh\nCorrectly render LaTeX labels in bokeh\u003c/p\u003e\n\u003cp\u003e#2144 - Fix xspec missing doc\nAdd get_xsabund_doc to the list of functions in the documentation. There\nis no functional change.\u003c/p\u003e\n\u003cp\u003e#2147 - Improve corner-case handling of filtering and empty data handling\nA clean-up pass for the data classes, in particular DataPHA, to normalize\nthe filtering and handling of an empty object\u003c/p\u003e\n\u003cp\u003e#2151 - updating Sherpa citations\nAdded a citation to the most recent sherpa paper\u003c/p\u003e\n\u003cp\u003e#2152 - DATA: clean up DataPHA.get_x\nInternal clean up of the DataPHA.get_x method.\u003c/p\u003e\n\u003cp\u003e#2153 - updated the front page of Sherpa RTD with references\nAdded references to three sherpa papers in the sherpa docs\u003c/p\u003e\n\u003cp\u003e#2154 - Update README\nAdded additional text regarding acknowledging/citing sherpa\u003c/p\u003e\n\u003cp\u003e#2155 - Drop support for Python 3.9 and add 3.12\nDrop support for Python 3.9 and numpy \u0026lt; 1.24 and note Python 3.12\nexperimental support.\u003c/p\u003e\n\u003cp\u003e#2157 - Improve test coverage of ignore_bad\nAdd more corner-case of quality channel handling for PHA data. There is no\nfunctional change here.\u003c/p\u003e\n\u003cp\u003e#2160 - Fixup test failures from #2118\nFix up a test case when writing out the range of a FITS column.\u003c/p\u003e\n\u003cp\u003e#2161 - UI: note when a 1D filter command has failed\nProvide more information for the UI user if a filter command has failed.\u003c/p\u003e\n\u003cp\u003e#2162 - TEST: ignore fork deprecation warnings\nIgnore the deprecation warnings about the use of the fork method for\nmultiprocessing.\u003c/p\u003e\n\u003cp\u003e#2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning\nSpecify sphinx \u0026lt; 8 for the read the doc environment and remove the call\nto get_html_theme_path no longer needed.\u003c/p\u003e", "publication_date": "2024-10-09", "publisher": "Zenodo", "related_identifiers": [{"identifier": "https://github.com/sherpa/sherpa/tree/4.17.0", "relation_type": {"id": "issupplementto", "title": {"de": "Erg\u00e4nzt", "en": "Is supplement to"}}, "resource_type": {"id": "software", "title": {"de": "Software", "en": "Software"}}, "scheme": "url"}], "resource_type": {"id": "software", "title": {"de": "Software", "en": "Software"}}, "rights": [{"description": {"en": "The Creative Commons Attribution license allows re-distribution and re-use of a licensed work on the condition that the creator is appropriately credited."}, "icon": "cc-by-icon", "id": "cc-by-4.0", "props": {"scheme": "spdx", "url": "https://creativecommons.org/licenses/by/4.0/legalcode"}, "title": {"en": "Creative Commons Attribution 4.0 International"}}], "title": "sherpa/sherpa: Sherpa 4.17.0", "version": "4.17.0"}, "parent": {"access": {"owned_by": {"user": "683"}, "settings": {"accept_conditions_text": null, "allow_guest_requests": false, "allow_user_requests": false, "secret_link_expiration": 0}}, "communities": {}, "id": "593753", "pids": {"doi": {"client": "datacite", "identifier": "10.5281/zenodo.593753", "provider": "datacite"}}}, "pids": {"doi": {"client": "datacite", "identifier": "10.5281/zenodo.13909532", "provider": "datacite"}, "oai": {"identifier": "oai:zenodo.org:13909532", "provider": "oai"}}, "revision_id": 4, "stats": {"all_versions": {"data_volume": 8073918312.0, "downloads": 590, "unique_downloads": 544, "unique_views": 9800, "views": 10427}, "this_version": {"data_volume": 394095840.0, "downloads": 24, "unique_downloads": 23, "unique_views": 1007, "views": 1044}}, "status": "published", "swh": {}, "ui": {"access_status": {"description_l10n": "The record and files are publicly accessible.", "embargo_date_l10n": null, "icon": "unlock", "id": "open", "message_class": "", "title_l10n": "Open"}, "created_date_l10n_long": "October 9, 2024", "creators": {"affiliations": [[1, "Smithsonian Astrophysical Observatory", null], [2, "MIT", null], [3, "Center for Astrophysics | Harvard \u0026 Smithsonian", null], [4, "HeidelbergCement", null], [5, "Caltech/IPAC", null], [6, "@spacetelescope", null], [7, "@gitlabhq", null]], "creators": [{"person_or_org": {"family_name": "Doug Burke", "name": "Doug Burke", "type": "personal"}}, {"affiliations": [[1, "Smithsonian Astrophysical Observatory"]], "person_or_org": {"family_name": "Omar Laurino", "name": "Omar Laurino", "type": "personal"}}, {"person_or_org": {"family_name": "wmclaugh", "name": "wmclaugh", "type": "personal"}}, {"affiliations": [[2, "MIT"]], "person_or_org": {"family_name": "Hans Moritz G\u00fcnther", "name": "Hans Moritz G\u00fcnther", "type": "personal"}}, {"person_or_org": {"family_name": "Marie-Terrell", "name": "Marie-Terrell", "type": "personal"}}, {"person_or_org": {"family_name": "dtnguyen2", "name": "dtnguyen2", "type": "personal"}}, {"person_or_org": {"family_name": "Aneta Siemiginowska", "name": "Aneta Siemiginowska", "type": "personal"}}, {"person_or_org": {"family_name": "Harlan Cheer", "name": "Harlan Cheer", "type": "personal"}}, {"affiliations": [[1, "Smithsonian Astrophysical Observatory"]], "person_or_org": {"family_name": "Jamie Budynkiewicz", "name": "Jamie Budynkiewicz", "type": "personal"}}, {"affiliations": [[3, "Center for Astrophysics | Harvard \u0026 Smithsonian"]], "person_or_org": {"family_name": "Tom Aldcroft", "name": "Tom Aldcroft", "type": "personal"}}, {"person_or_org": {"family_name": "luzpaz", "name": "luzpaz", "type": "personal"}}, {"affiliations": [[4, "HeidelbergCement"]], "person_or_org": {"family_name": "Christoph Deil", "name": "Christoph Deil", "type": "personal"}}, {"affiliations": [[5, "Caltech/IPAC"]], "person_or_org": {"family_name": "Brigitta Sip\u0151cz", "name": "Brigitta Sip\u0151cz", "type": "personal"}}, {"person_or_org": {"family_name": "Johannes Buchner", "name": "Johannes Buchner", "type": "personal"}}, {"person_or_org": {"family_name": "nplee", "name": "nplee", "type": "personal"}}, {"affiliations": [[3, "Center for Astrophysics | Harvard \u0026 Smithsonian"]], "person_or_org": {"family_name": "Axel Donath", "name": "Axel Donath", "type": "personal"}}, {"affiliations": [[6, "@spacetelescope"]], "person_or_org": {"family_name": "Iva Laginja", "name": "Iva Laginja", "type": "personal"}}, {"affiliations": [[7, "@gitlabhq"]], "person_or_org": {"family_name": "Katrin Leinweber", "name": "Katrin Leinweber", "type": "personal"}}, {"person_or_org": {"family_name": "Todd", "name": "Todd", "type": "personal"}}]}, "custom_fields": {}, "description_stripped": "Sherpa 4.17.0\n\nThis release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes.\n\n\n\nenhancements:\n\n\nadd calc_model and calc_source functions to return an evaluated model/source array\n\nadded wstat to plot_pvalue for the likelihood ratio test\n\nchanged XSpec interface to use FunctionUtility C++ API instead of XSFortran API\n\nimproved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0\n\nimproved guess for complex models\n\nimproved filtering handling\n\nseveral updates to enhance plotting capabilities and layout\n\n\n\ndocumentation changes:\n\n\nadded paper citations to front page of Sherpa Read the Docs documentation\n\ncleaned up various typos and URL references\n\nadded examples such as use of set_x/y_label\n\n\n\ninfrastructure and testing:\n\n\nimproved test coverage\n\nmany updates to CI\n\ndrop support for Python 3.9 and numpy \u003c1.24\n\ninitial/experimental support for Python 3.12\n\n\n\nbug fixes:\n\n\nfixed an issue with plotting 1D data with asymmetric errs after filter\n\ninclude the default identifier in save_all output if it has been changed\n\n\n\n\nDetails\n\n#1757 - Allow the wstat statistic to be used in the likelihood-ratio test\nAllow the Likelihood Ratio Test (as used by plot_value) to be run when\nusing the WStat statistic. Fix #1745.\n\n#1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible)\nInternal change to the XSPEC interface to use the FunctionUtility C++ API\nrather than the XSFortran API. Fix #1225.\n\n#1921 - Clean up of the IO code\nRework the astro data input and output code so that they take advantage of\nthe new data representation in sherpa.astro.io.types\n\n#1949 - Initial support for Python 3.12\nInitial support for building with Python 3.12\n\n#1997 - Add support for XSPEC 12.14.0\nAllow building with XSPEC 12.14.0 and include the 50 new models in it.\n\n#2017 - IO: separate pack and set commands\nReplace the logic of the packup argument to the set I/O commands\n\n#2033 - utils: add typing rules to random and parallel\nAdd typing statements to the sherpa.utils.parallel and sherpa.utils.random\nmodules\n\n#2035 - stats: add typing rules\nAdd typing rules to sherpa.stats and minor internal clean up to the module.\n\n#2036 - Update sherpa citations\nAdd Sherpa 4.16.1 to the citation data.\n\n#2045 - Mark code as deprecated in sherpa.utils\nRework sherpa.utils and mark some symbols as deprecated - func_counter,\nis_in, and mysgn - along with suggested replacements.\n\n#2046- Post 4.16.1 update to add DOI info\nAdds the Sherpa 4.16.1 DOI info to the README.md.\n\n#2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version\nSupport the weekly test builds using aarch64 and ppc46le architectures.\nThis support is considered experimental.\n\n#2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used\nAvoid testing the XSbvvnei model if XSPEC \u003c= 12.14.0i is in use, as the\nmodel can cause a crash in this case.\n\n#2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit\nThe fit call can now be sent a Path object or a file handle, as well as a\nstring. Fix issue #2063\n\n#2056 - tests: fix fake_pha test failure on crates\nAddress test failures when using crates after merging #1684 and to address\na numerical tolerance issue on macOS ARM.\n\n#2057 - Improve the guess routine for PHA data\nAllow guess to work for composite models, including those with responses,\nand improve the guess routine used for the norm parameter of XSPEC additive\nmodels.\n\n#2058 - Address an error introduced in PR 2025\nFix an error made when addressing NumPy 2.0 changes in issue #2025.\n\n#2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines\nEnsure that annotations are added to the sherpa.ui and sherpa.astro.ui\nroutines. Fix #2053\n\n#2060 - Simple typing support for sherpa.data\nAdd some basic typing rules to the sherpa.data module.\n\n#2061 - Avoid warning messages from AstroPy about unclosed files\nInitial cleanup of the astro IO code in preparation for future changes.\nThis fixes an issue when using the AstroPy IO backend (pyfits) which could\ncause Python to report an unclosed file on exit\n\n#2065 - CI: enforce NumPy does not use version 2.0 for the builds\nEnsure the CI builds use numpy\u003c2\n\n#2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0\nThis ups the actions macOS Intel version to 12, and updates the macOS SDK\nto version 11.0, which is consistent with CIAO.\n\n#2069 - Allow the tests to pass with NumPy 2.0\nAllow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus\nis not installed.\n\n#2070 - Migrate to cxc xspec conda test channel\nUse the cxc xspec test channel for Sherpa test workflows.\n\n#2072 - Use the correct case for the symbol name in the parameter warning message\nChange how the warning message for deprecated parameter names for models\nis displayed\n\n#2078 - Include the default identifier in save_all output if it has been changed\nRecord the default identifier in save_all output if the user has changed\nit. Fix #2077\n\n#2079 - minor cleanup of sherpa.optmethods\nInternal clean up of the sherpa.optmethods code.\n\n#2081 - minor plot cleanup\nClean up some plot code to make better use of modern Python idioms.\n\n#2086 - data: allow axis labels to be changed\nAllow the independent and dependent axis labels to be changed. Addresses\n#2083\n\n#2089 - minor cleanup of sherpa.optmethods\nInternal change to handling of the optional output file option when calling\nfit. There is no functional change.\n\n#2091 - Asymmetric filter plot\nAllow 1D data with asymmetric errors to be plotted after a filter. Fixes\n#2090.\n\n#2092 - Add a name field to the IO backends\nAdd a name field to the I/O backends. This is mainly useful for testing\nand debugging.\n\n#2094 - Improve messages about invalid file types (PHA)\nTweak the warning messages when files can not be read to better indicate\nthe type of file being loaded (for PHA related files).\n\n#2102 - Change the URL for XPA\nChange the URL used for XPA. Fix #2100.\n\n#2103 - Ensure crates file reads are read-only\nEnsure that we read in table data as read-only when using the crates I/O\nbackend.\n\n#2105 - docs: typo fixes and remove some references.\nFix a typo in a docstring and change how two references are included in\nthe text.\n\n#2107 - XSPEC: add show_xsabund command\nAdd the show_xsabund command to the sherpa.astro.ui module and\nget_xsabundances to sherpa.astro.xspec.\n\n#2108 - Asymmetric settings\nAllow the statistic and optimizer to be changed when re-sampling data with\nasymmetric errors. Fixes #2093.\n\n#2109 - Add a set_xsabundances call for XSPEC users\nAdd a set_xsabundances call to make it easier to change one or more\nelemental abundances for the XSPEC models and ensure that both the get\nand set calls are available from the sherpa.astro.ui module.\n\n#2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header\nEnsure the NUMELT and NUMGRP keywords for RMF files are written out as\nintegers.\n\n#2112 - Minor typing cleanup\nClean up some of the recently-added typing rules.\n\n#2115 - doc: add examples of using set_xlabel/ylabel\nAdd documentation showing the new set_xlabel/ylabel functionality from\n#2086\n\n#2118 - Improve support for PHA data starting at channel 0\nImprove the handling of PHA files that start at channel 0. PHA data that\nare read in from such a file no longer renumber the CHANNEL column to start\nat 0 rather than 1, which will mean that notice and ignore filter ranges\nthat are given in channel units will need to be reduced by 1.\n\n#2120 - Improve handling of STAT/SYS_ERR PHA columns\nImprove handling of STAT_ERR and SYS_ERR PHA columns which are set to 0.\n\n#2121 - UI: add calc_model/source commands\nAdd calc_model and calc_source routines to return the model expression\nevaluated per bin.\n\n#2123 - Data cleanups\nInternal clean up of some of the data code.\n\n#2125 - Allow per plot kwargs for plot_xxx_components calls\nAllow per-plot keyword arguments for plot_model_components and\nplot_source_components.\n\n#2126 - Allow plot and contour to change the plot layout and have per-plot settings.\nExpand the plot and contour commands to allow per-plot options to be given,\nmatching the plot_model_components/plot_source_components commands.\n\n#2129 - Fix plot overplot\nImprove the behaviour of plot() and contour() when called with\noverplot=True or overcontour=True respectively. Fix #2128.\n\n#2130 - data: fixup numpy import\nFix up several typing annotations from a recent refactoring.\n\n#2133 - UI: add format and delim arguments to get_filter.\nAllow the get_filter call to override the format and delim arguments. Fix\n#1277\n\n#2135 - Tests: tweak tolerances for macOS ARM #2135\nUpdated macOS ARM test tolerances\n\n#2137 - Fix doctests in sherpa.plot.__init__\nChanged documentation to match backends as objects instead of modules\n\n#2138 - UI: add documentation for table to show_xsabund\nThe show_xsabund command now includes a description of the abundance table.\n\n#2139 - Update helpdesk URL\nChanged helpdesk link - fixes issue #1931\n\n#2140 - Updated docs for asymmetric errors\nExpanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings.\n\n#2141 - Update LaTeX labels and docs for bokeh\nCorrectly render LaTeX labels in bokeh\n\n#2144 - Fix xspec missing doc\nAdd get_xsabund_doc to the list of functions in the documentation. There\nis no functional change.\n\n#2147 - Improve corner-case handling of filtering and empty data handling\nA clean-up pass for the data classes, in particular DataPHA, to normalize\nthe filtering and handling of an empty object\n\n#2151 - updating Sherpa citations\nAdded a citation to the most recent sherpa paper\n\n#2152 - DATA: clean up DataPHA.get_x\nInternal clean up of the DataPHA.get_x method.\n\n#2153 - updated the front page of Sherpa RTD with references\nAdded references to three sherpa papers in the sherpa docs\n\n#2154 - Update README\nAdded additional text regarding acknowledging/citing sherpa\n\n#2155 - Drop support for Python 3.9 and add 3.12\nDrop support for Python 3.9 and numpy \u003c 1.24 and note Python 3.12\nexperimental support.\n\n#2157 - Improve test coverage of ignore_bad\nAdd more corner-case of quality channel handling for PHA data. There is no\nfunctional change here.\n\n#2160 - Fixup test failures from #2118\nFix up a test case when writing out the range of a FITS column.\n\n#2161 - UI: note when a 1D filter command has failed\nProvide more information for the UI user if a filter command has failed.\n\n#2162 - TEST: ignore fork deprecation warnings\nIgnore the deprecation warnings about the use of the fork method for\nmultiprocessing.\n\n#2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning\nSpecify sphinx \u003c 8 for the read the doc environment and remove the call\nto get_html_theme_path no longer needed.", "is_draft": false, "publication_date_l10n_long": "October 9, 2024", "publication_date_l10n_medium": "Oct 9, 2024", "related_identifiers": [{"identifier": "https://github.com/sherpa/sherpa/tree/4.17.0", "relation_type": {"id": "issupplementto", "title_l10n": "Is supplement to"}, "resource_type": {"id": "software", "title_l10n": "Software"}, "scheme": "url"}], "resource_type": {"id": "software", "title_l10n": "Software"}, "rights": [{"description_l10n": "The Creative Commons Attribution license allows re-distribution and re-use of a licensed work on the condition that the creator is appropriately credited.", "icon": "cc-by-icon", "id": "cc-by-4.0", "props": {"scheme": "spdx", "url": "https://creativecommons.org/licenses/by/4.0/legalcode"}, "title_l10n": "Creative Commons Attribution 4.0 International"}], "updated_date_l10n_long": "October 9, 2024", "version": "4.17.0"}, "updated": "2024-10-09T16:55:13.058351+00:00", "versions": {"index": 23, "is_latest": true}}' data-preview='false'> <div class="rel-p-1"></div> <div class="ui fluid placeholder rel-mr-1 rel-ml-1"></div> <div class="header"> <div class="line"></div> <div class="line"></div> <div class="line"></div> </div> </div> </div> </div> </div><div class="sidebar-container"> <h2 class="ui small top attached header">External resources</h2> <div id="external-resource" aria-label="External resources" class="ui bottom attached segment rdm-sidebar external resource"> <h3 class="ui small header">Available in</h3> <ul class="ui relaxed list no-bullet"> <li class="item flex align-items-center"> <img class="ui image" src="/static/images/github.svg" alt="" width="32"> <div class="content"> <a class="header" href="https://github.com/sherpa/sherpa/tree/4.17.0" target="_blank" rel="noreferrer" >sherpa/sherpa </a> <p class="description"> Release: 4.17.0 </p></div> </li></ul><h3 class="ui small header">Indexed in</h3> <ul class="ui relaxed list no-bullet"> <li class="item flex align-items-center"> <img class="ui image" src="/static/images/openaire.svg" alt="" width="32"> <div class="content"> <a class="header" href="https://explore.openaire.eu/search/software?pid=10.5281/zenodo.13909532" target="_blank" rel="noreferrer" >OpenAIRE </a> </div> </li></ul></div> </div><div id="sidebar-communities-manage" data-user-communities-memberships='{}' data-record-community-endpoint="https://zenodo.org/api/records/13909532/communities" data-record-community-search-endpoint="https://zenodo.org/api/records/13909532/communities-suggestions" data-record-user-community-search-endpoint="" data-pending-communities-search-config='{"aggs": [{"aggName": "type", "field": "type", "title": "Type"}, {"aggName": "status", "field": "status", "title": "Status"}], "appId": "InvenioAppRdm.RecordRequests", "defaultSortingOnEmptyQueryString": [{"sortBy": "newest"}], "initialQueryState": {"filters": [], "hiddenParams": [["expand", "1"], ["is_open", "true"], ["type", "community-inclusion"], ["type", "community-submission"]], "layout": "list", "page": 1, "size": 10, "sortBy": "bestmatch"}, "layoutOptions": {"gridView": false, "listView": true}, "paginationOptions": {"defaultValue": 10, "maxTotalResults": 10000, "resultsPerPage": [{"text": "10", "value": 10}, {"text": "20", "value": 20}, {"text": "50", "value": 50}]}, "searchApi": {"axios": {"headers": {"Accept": "application/json"}, "url": "https://zenodo.org/api/records/13909532/requests", "withCredentials": true}, "invenio": {"requestSerializer": "InvenioRecordsResourcesRequestSerializer"}}, "sortOptions": [{"sortBy": "bestmatch", "text": "Best match"}, {"sortBy": "newest", "text": "Newest"}, {"sortBy": "oldest", "text": "Oldest"}], "sortOrderDisabled": true}' data-record-community-search-config='{"aggs": [{"aggName": "type", "field": "type", "title": "Type"}, {"aggName": "funder", "field": "metadata.funding.funder", "title": "Funders"}, {"aggName": "organization", "field": "metadata.organizations", "title": "Organizations"}], "appId": "InvenioAppRdm.RecordCommunitiesSuggestions", "defaultSortingOnEmptyQueryString": [{"sortBy": "newest"}], "initialQueryState": {"filters": [], "hiddenParams": null, "layout": "list", "page": 1, "size": 10, "sortBy": "bestmatch"}, "layoutOptions": {"gridView": false, "listView": true}, "paginationOptions": {"defaultValue": 10, "maxTotalResults": 10000, "resultsPerPage": [{"text": "10", "value": 10}, {"text": "20", "value": 20}]}, "searchApi": {"axios": {"headers": {"Accept": "application/vnd.inveniordm.v1+json"}, "url": "https://zenodo.org/api/records/13909532/communities-suggestions", "withCredentials": true}, "invenio": {"requestSerializer": "InvenioRecordsResourcesRequestSerializer"}}, "sortOptions": [{"sortBy": "bestmatch", "text": "Best match"}, {"sortBy": "newest", "text": "Newest"}, {"sortBy": "oldest", "text": "Oldest"}], "sortOrderDisabled": true}' data-record-user-community-search-config='{"aggs": [{"aggName": "type", "field": "type", "title": "Type"}, {"aggName": "funder", "field": "metadata.funding.funder", "title": "Funders"}, {"aggName": "organization", "field": "metadata.organizations", "title": "Organizations"}], "appId": "InvenioAppRdm.RecordUserCommunitiesSuggestions", "defaultSortingOnEmptyQueryString": [{"sortBy": "newest"}], "initialQueryState": {"filters": [], "hiddenParams": [["membership", "true"]], "layout": "list", "page": 1, "size": 10, "sortBy": "bestmatch"}, "layoutOptions": {"gridView": false, "listView": true}, "paginationOptions": {"defaultValue": 10, "maxTotalResults": 10000, "resultsPerPage": [{"text": "10", "value": 10}, {"text": "20", "value": 20}]}, "searchApi": {"axios": {"headers": {"Accept": "application/vnd.inveniordm.v1+json"}, "url": "https://zenodo.org/api/records/13909532/communities-suggestions", "withCredentials": true}, "invenio": {"requestSerializer": "InvenioRecordsResourcesRequestSerializer"}}, "sortOptions": [{"sortBy": "bestmatch", "text": "Best match"}, {"sortBy": "newest", "text": "Newest"}, {"sortBy": "oldest", "text": "Oldest"}], "sortOrderDisabled": true}' data-permissions='{"can_edit": false, "can_manage": false, "can_media_read_files": true, "can_moderate": false, "can_new_version": false, "can_read_files": true, "can_review": false, "can_update_draft": false, "can_view": false}' class="sidebar-container" > <h2 class="ui medium top attached header">Communities</h2> <div class="ui segment bottom attached rdm-sidebar"> <div class="ui fluid placeholder"> <div class="image header"> <div class="line"></div> <div class="line"></div> </div> <div class="image header"> <div class="line"></div> <div class="line"></div> </div> <div class="image header"> <div class="line"></div> <div class="line"></div> </div> </div> </div> </div> <div class="sidebar-container"> <h2 class="ui medium top attached header mt-0">Details</h2> <div id="record-details" class="ui segment bottom attached rdm-sidebar"> <dl class="details-list"> <dt class="ui tiny header">DOI <dd> <span class="get-badge" data-toggle="tooltip" data-placement="bottom" style="cursor: pointer;" title="Get the DOI badge!"> <img id='record-doi-badge' data-target="[data-modal='10.5281/zenodo.13909532']" src="/badge/DOI/10.5281/zenodo.13909532.svg" alt="10.5281/zenodo.13909532" /> </span> <div id="doi-modal" class="ui modal fade badge-modal" data-modal="10.5281/zenodo.13909532"> <div class="header">DOI Badge</div> <div class="content"> <h4> <small>DOI</small> </h4> <h4> <pre>10.5281/zenodo.13909532</pre> </h4> <h3 class="ui small header"> Markdown </h3> <div class="ui message code"> <pre>[](https://doi.org/10.5281/zenodo.13909532)</pre> </div> <h3 class="ui small header"> reStructuredText </h3> <div class="ui message code"> <pre>.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.13909532.svg :target: https://doi.org/10.5281/zenodo.13909532</pre> </div> <h3 class="ui small header"> HTML </h3> <div class="ui message code"> <pre><a href="https://doi.org/10.5281/zenodo.13909532"><img src="https://zenodo.org/badge/DOI/10.5281/zenodo.13909532.svg" alt="DOI"></a></pre> </div> <h3 class="ui small header"> Image URL </h3> <div class="ui message code"> <pre>https://zenodo.org/badge/DOI/10.5281/zenodo.13909532.svg</pre> </div> <h3 class="ui small header"> Target URL </h3> <div class="ui message code"> <pre>https://doi.org/10.5281/zenodo.13909532</pre> </div> </div> </div> </dd> <dt class="ui tiny header">Resource type</dt> <dd>Software</dd> <dt class="ui tiny header">Publisher</dt> <dd>Zenodo</dd> </dl> </div> </div> <div class="sidebar-container"> <h2 class="ui medium top attached header mt-0">Rights</h2> <div id="licenses" class="ui segment bottom attached rdm-sidebar"> <ul class="details-list m-0 p-0"> <li id="license-cc-by-4.0-1" class="has-popup"> <div id="title-cc-by-4.0-1" class="license clickable" tabindex="0" aria-haspopup="dialog" aria-expanded="false" role="button" aria-label="Creative Commons Attribution 4.0 International" > <span class="icon-wrap"> <img class="icon" src="/static/icons/licenses/cc-by-icon.svg" alt="cc-by-4.0 icon"/> </span> <span class="title-text"> Creative Commons Attribution 4.0 International </span> </div> <div id="description-cc-by-4.0-1" class="licenses-description ui flowing popup transition hidden" role="dialog" aria-labelledby="title-cc-by-4.0-1" > <i role="button" tabindex="0" class="close icon text-muted" aria-label="Close"></i> <div id="license-description-1" class="description"> <span class="text-muted"> The Creative Commons Attribution license allows re-distribution and re-use of a licensed work on the condition that the creator is appropriately credited. </span> <a class="license-link" href="https://creativecommons.org/licenses/by/4.0/legalcode" target="_blank" title="Opens in new tab">Read more</a> </div> </div> </li> </ul> </div> </div> <div class="sidebar-container"> <h2 class="ui medium top attached header mt-0">Citation</h2> <div id="citation" class="ui segment bottom attached rdm-sidebar"> <div id="recordCitation" data-record='{"access": {"embargo": {"active": false, "reason": null}, "files": "public", "record": "public", "status": "open"}, "created": "2024-10-09T16:55:12.906565+00:00", "custom_fields": {}, "deletion_status": {"is_deleted": false, "status": "P"}, "expanded": {"parent": {"access": {"owned_by": {"active": null, "blocked_at": null, "confirmed_at": null, "email": "", "id": "683", "is_current_user": false, "links": {"avatar": "https://zenodo.org/api/users/683/avatar.svg", "records_html": "https://zenodo.org/search/records?q=parent.access.owned_by.user:683", "self": "https://zenodo.org/api/users/683"}, "profile": {"affiliations": "", "full_name": ""}, "username": "olaurino", "verified_at": null}}}}, "files": {"count": 1, "enabled": true, "entries": {"sherpa/sherpa-4.17.0.zip": {"access": {"hidden": false}, "checksum": "md5:3330ee192f0c8d92c39cd74849f41e7d", "ext": "zip", "id": "4a74ce40-3b15-4f9d-94b8-be5d6f4761fd", "key": "sherpa/sherpa-4.17.0.zip", "links": {"content": "https://zenodo.org/api/records/13909532/files/sherpa/sherpa-4.17.0.zip/content", "self": "https://zenodo.org/api/records/13909532/files/sherpa/sherpa-4.17.0.zip"}, "metadata": null, "mimetype": "application/zip", "size": 16420660, "storage_class": "L"}}, "order": [], "total_bytes": 16420660}, "id": "13909532", "is_draft": false, "is_published": true, "links": {"access": "https://zenodo.org/api/records/13909532/access", "access_grants": "https://zenodo.org/api/records/13909532/access/grants", "access_links": "https://zenodo.org/api/records/13909532/access/links", "access_request": "https://zenodo.org/api/records/13909532/access/request", "access_users": "https://zenodo.org/api/records/13909532/access/users", "archive": "https://zenodo.org/api/records/13909532/files-archive", "archive_media": "https://zenodo.org/api/records/13909532/media-files-archive", "communities": "https://zenodo.org/api/records/13909532/communities", "communities-suggestions": "https://zenodo.org/api/records/13909532/communities-suggestions", "doi": "https://doi.org/10.5281/zenodo.13909532", "draft": "https://zenodo.org/api/records/13909532/draft", "files": "https://zenodo.org/api/records/13909532/files", "latest": "https://zenodo.org/api/records/13909532/versions/latest", "latest_html": "https://zenodo.org/records/13909532/latest", "media_files": "https://zenodo.org/api/records/13909532/media-files", "parent": "https://zenodo.org/api/records/593753", "parent_doi": "https://doi.org/10.5281/zenodo.593753", "parent_doi_html": "https://zenodo.org/doi/10.5281/zenodo.593753", "parent_html": "https://zenodo.org/records/593753", "preview_html": "https://zenodo.org/records/13909532?preview=1", "requests": "https://zenodo.org/api/records/13909532/requests", "reserve_doi": "https://zenodo.org/api/records/13909532/draft/pids/doi", "self": "https://zenodo.org/api/records/13909532", "self_doi": "https://doi.org/10.5281/zenodo.13909532", "self_doi_html": "https://zenodo.org/doi/10.5281/zenodo.13909532", "self_html": "https://zenodo.org/records/13909532", "self_iiif_manifest": "https://zenodo.org/api/iiif/record:13909532/manifest", "self_iiif_sequence": "https://zenodo.org/api/iiif/record:13909532/sequence/default", "versions": "https://zenodo.org/api/records/13909532/versions"}, "media_files": {"count": 0, "enabled": false, "entries": {}, "order": [], "total_bytes": 0}, "metadata": {"creators": [{"person_or_org": {"family_name": "Doug Burke", "name": "Doug Burke", "type": "personal"}}, {"affiliations": [{"name": "Smithsonian Astrophysical Observatory"}], "person_or_org": {"family_name": "Omar Laurino", "name": "Omar Laurino", "type": "personal"}}, {"person_or_org": {"family_name": "wmclaugh", "name": "wmclaugh", "type": "personal"}}, {"affiliations": [{"name": "MIT"}], "person_or_org": {"family_name": "Hans Moritz G\u00fcnther", "name": "Hans Moritz G\u00fcnther", "type": "personal"}}, {"person_or_org": {"family_name": "Marie-Terrell", "name": "Marie-Terrell", "type": "personal"}}, {"person_or_org": {"family_name": "dtnguyen2", "name": "dtnguyen2", "type": "personal"}}, {"person_or_org": {"family_name": "Aneta Siemiginowska", "name": "Aneta Siemiginowska", "type": "personal"}}, {"person_or_org": {"family_name": "Harlan Cheer", "name": "Harlan Cheer", "type": "personal"}}, {"affiliations": [{"name": "Smithsonian Astrophysical Observatory"}], "person_or_org": {"family_name": "Jamie Budynkiewicz", "name": "Jamie Budynkiewicz", "type": "personal"}}, {"affiliations": [{"name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "person_or_org": {"family_name": "Tom Aldcroft", "name": "Tom Aldcroft", "type": "personal"}}, {"person_or_org": {"family_name": "luzpaz", "name": "luzpaz", "type": "personal"}}, {"affiliations": [{"name": "HeidelbergCement"}], "person_or_org": {"family_name": "Christoph Deil", "name": "Christoph Deil", "type": "personal"}}, {"affiliations": [{"name": "Caltech/IPAC"}], "person_or_org": {"family_name": "Brigitta Sip\u0151cz", "name": "Brigitta Sip\u0151cz", "type": "personal"}}, {"person_or_org": {"family_name": "Johannes Buchner", "name": "Johannes Buchner", "type": "personal"}}, {"person_or_org": {"family_name": "nplee", "name": "nplee", "type": "personal"}}, {"affiliations": [{"name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "person_or_org": {"family_name": "Axel Donath", "name": "Axel Donath", "type": "personal"}}, {"affiliations": [{"name": "@spacetelescope"}], "person_or_org": {"family_name": "Iva Laginja", "name": "Iva Laginja", "type": "personal"}}, {"affiliations": [{"name": "@gitlabhq"}], "person_or_org": {"family_name": "Katrin Leinweber", "name": "Katrin Leinweber", "type": "personal"}}, {"person_or_org": {"family_name": "Todd", "name": "Todd", "type": "personal"}}], "description": "\u003ch1\u003eSherpa 4.17.0\u003c/h1\u003e\n\u003cp\u003eThis release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eenhancements:\u003cul\u003e\n\u003cli\u003eadd calc_model and calc_source functions to return an evaluated model/source array\u003c/li\u003e\n\u003cli\u003eadded wstat to plot_pvalue for the likelihood ratio test\u003c/li\u003e\n\u003cli\u003echanged XSpec interface to use FunctionUtility C++ API instead of XSFortran API\u003c/li\u003e\n\u003cli\u003eimproved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0\u003c/li\u003e\n\u003cli\u003eimproved guess for complex models\u003c/li\u003e\n\u003cli\u003eimproved filtering handling\u003c/li\u003e\n\u003cli\u003eseveral updates to enhance plotting capabilities and layout\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edocumentation changes:\u003cul\u003e\n\u003cli\u003eadded paper citations to front page of Sherpa Read the Docs documentation\u003c/li\u003e\n\u003cli\u003ecleaned up various typos and URL references\u003c/li\u003e\n\u003cli\u003eadded examples such as use of set_x/y_label\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003einfrastructure and testing:\u003cul\u003e\n\u003cli\u003eimproved test coverage\u003c/li\u003e\n\u003cli\u003emany updates to CI\u003c/li\u003e\n\u003cli\u003edrop support for Python 3.9 and numpy \u0026lt;1.24\u003c/li\u003e\n\u003cli\u003einitial/experimental support for Python 3.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ebug fixes:\u003cul\u003e\n\u003cli\u003efixed an issue with plotting 1D data with asymmetric errs after filter\u003c/li\u003e\n\u003cli\u003einclude the default identifier in save_all output if it has been changed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDetails\u003c/h2\u003e\n\u003cp\u003e#1757 - Allow the wstat statistic to be used in the likelihood-ratio test\nAllow the Likelihood Ratio Test (as used by plot_value) to be run when\nusing the WStat statistic. Fix #1745.\u003c/p\u003e\n\u003cp\u003e#1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible)\nInternal change to the XSPEC interface to use the FunctionUtility C++ API\nrather than the XSFortran API. Fix #1225.\u003c/p\u003e\n\u003cp\u003e#1921 - Clean up of the IO code\nRework the astro data input and output code so that they take advantage of\nthe new data representation in sherpa.astro.io.types\u003c/p\u003e\n\u003cp\u003e#1949 - Initial support for Python 3.12\nInitial support for building with Python 3.12\u003c/p\u003e\n\u003cp\u003e#1997 - Add support for XSPEC 12.14.0\nAllow building with XSPEC 12.14.0 and include the 50 new models in it.\u003c/p\u003e\n\u003cp\u003e#2017 - IO: separate pack and set commands\nReplace the logic of the packup argument to the set I/O commands\u003c/p\u003e\n\u003cp\u003e#2033 - utils: add typing rules to random and parallel\nAdd typing statements to the sherpa.utils.parallel and sherpa.utils.random\nmodules\u003c/p\u003e\n\u003cp\u003e#2035 - stats: add typing rules\nAdd typing rules to sherpa.stats and minor internal clean up to the module.\u003c/p\u003e\n\u003cp\u003e#2036 - Update sherpa citations\nAdd Sherpa 4.16.1 to the citation data.\u003c/p\u003e\n\u003cp\u003e#2045 - Mark code as deprecated in sherpa.utils\nRework sherpa.utils and mark some symbols as deprecated - func_counter,\nis_in, and mysgn - along with suggested replacements.\u003c/p\u003e\n\u003cp\u003e#2046- Post 4.16.1 update to add DOI info\nAdds the Sherpa 4.16.1 DOI info to the README.md.\u003c/p\u003e\n\u003cp\u003e#2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version\nSupport the weekly test builds using aarch64 and ppc46le architectures.\nThis support is considered experimental.\u003c/p\u003e\n\u003cp\u003e#2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used\nAvoid testing the XSbvvnei model if XSPEC \u0026lt;= 12.14.0i is in use, as the\nmodel can cause a crash in this case.\u003c/p\u003e\n\u003cp\u003e#2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit\nThe fit call can now be sent a Path object or a file handle, as well as a\nstring. Fix issue #2063\u003c/p\u003e\n\u003cp\u003e#2056 - tests: fix fake_pha test failure on crates\nAddress test failures when using crates after merging #1684 and to address\na numerical tolerance issue on macOS ARM.\u003c/p\u003e\n\u003cp\u003e#2057 - Improve the guess routine for PHA data\nAllow guess to work for composite models, including those with responses,\nand improve the guess routine used for the norm parameter of XSPEC additive\nmodels.\u003c/p\u003e\n\u003cp\u003e#2058 - Address an error introduced in PR 2025\nFix an error made when addressing NumPy 2.0 changes in issue #2025.\u003c/p\u003e\n\u003cp\u003e#2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines\nEnsure that annotations are added to the sherpa.ui and sherpa.astro.ui\nroutines. Fix #2053\u003c/p\u003e\n\u003cp\u003e#2060 - Simple typing support for sherpa.data\nAdd some basic typing rules to the sherpa.data module.\u003c/p\u003e\n\u003cp\u003e#2061 - Avoid warning messages from AstroPy about unclosed files\nInitial cleanup of the astro IO code in preparation for future changes.\nThis fixes an issue when using the AstroPy IO backend (pyfits) which could\ncause Python to report an unclosed file on exit\u003c/p\u003e\n\u003cp\u003e#2065 - CI: enforce NumPy does not use version 2.0 for the builds\nEnsure the CI builds use numpy\u0026lt;2\u003c/p\u003e\n\u003cp\u003e#2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0\nThis ups the actions macOS Intel version to 12, and updates the macOS SDK\nto version 11.0, which is consistent with CIAO.\u003c/p\u003e\n\u003cp\u003e#2069 - Allow the tests to pass with NumPy 2.0\nAllow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus\nis not installed.\u003c/p\u003e\n\u003cp\u003e#2070 - Migrate to cxc xspec conda test channel\nUse the cxc xspec test channel for Sherpa test workflows.\u003c/p\u003e\n\u003cp\u003e#2072 - Use the correct case for the symbol name in the parameter warning message\nChange how the warning message for deprecated parameter names for models\nis displayed\u003c/p\u003e\n\u003cp\u003e#2078 - Include the default identifier in save_all output if it has been changed\nRecord the default identifier in save_all output if the user has changed\nit. Fix #2077\u003c/p\u003e\n\u003cp\u003e#2079 - minor cleanup of sherpa.optmethods\nInternal clean up of the sherpa.optmethods code.\u003c/p\u003e\n\u003cp\u003e#2081 - minor plot cleanup\nClean up some plot code to make better use of modern Python idioms.\u003c/p\u003e\n\u003cp\u003e#2086 - data: allow axis labels to be changed\nAllow the independent and dependent axis labels to be changed. Addresses\n#2083\u003c/p\u003e\n\u003cp\u003e#2089 - minor cleanup of sherpa.optmethods\nInternal change to handling of the optional output file option when calling\nfit. There is no functional change.\u003c/p\u003e\n\u003cp\u003e#2091 - Asymmetric filter plot\nAllow 1D data with asymmetric errors to be plotted after a filter. Fixes\n#2090.\u003c/p\u003e\n\u003cp\u003e#2092 - Add a name field to the IO backends\nAdd a name field to the I/O backends. This is mainly useful for testing\nand debugging.\u003c/p\u003e\n\u003cp\u003e#2094 - Improve messages about invalid file types (PHA)\nTweak the warning messages when files can not be read to better indicate\nthe type of file being loaded (for PHA related files).\u003c/p\u003e\n\u003cp\u003e#2102 - Change the URL for XPA\nChange the URL used for XPA. Fix #2100.\u003c/p\u003e\n\u003cp\u003e#2103 - Ensure crates file reads are read-only\nEnsure that we read in table data as read-only when using the crates I/O\nbackend.\u003c/p\u003e\n\u003cp\u003e#2105 - docs: typo fixes and remove some references.\nFix a typo in a docstring and change how two references are included in\nthe text.\u003c/p\u003e\n\u003cp\u003e#2107 - XSPEC: add show_xsabund command\nAdd the show_xsabund command to the sherpa.astro.ui module and\nget_xsabundances to sherpa.astro.xspec.\u003c/p\u003e\n\u003cp\u003e#2108 - Asymmetric settings\nAllow the statistic and optimizer to be changed when re-sampling data with\nasymmetric errors. Fixes #2093.\u003c/p\u003e\n\u003cp\u003e#2109 - Add a set_xsabundances call for XSPEC users\nAdd a set_xsabundances call to make it easier to change one or more\nelemental abundances for the XSPEC models and ensure that both the get\nand set calls are available from the sherpa.astro.ui module.\u003c/p\u003e\n\u003cp\u003e#2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header\nEnsure the NUMELT and NUMGRP keywords for RMF files are written out as\nintegers.\u003c/p\u003e\n\u003cp\u003e#2112 - Minor typing cleanup\nClean up some of the recently-added typing rules.\u003c/p\u003e\n\u003cp\u003e#2115 - doc: add examples of using set_xlabel/ylabel\nAdd documentation showing the new set_xlabel/ylabel functionality from\n#2086\u003c/p\u003e\n\u003cp\u003e#2118 - Improve support for PHA data starting at channel 0\nImprove the handling of PHA files that start at channel 0. PHA data that\nare read in from such a file no longer renumber the CHANNEL column to start\nat 0 rather than 1, which will mean that notice and ignore filter ranges\nthat are given in channel units will need to be reduced by 1.\u003c/p\u003e\n\u003cp\u003e#2120 - Improve handling of STAT/SYS_ERR PHA columns\nImprove handling of STAT_ERR and SYS_ERR PHA columns which are set to 0.\u003c/p\u003e\n\u003cp\u003e#2121 - UI: add calc_model/source commands\nAdd calc_model and calc_source routines to return the model expression\nevaluated per bin.\u003c/p\u003e\n\u003cp\u003e#2123 - Data cleanups\nInternal clean up of some of the data code.\u003c/p\u003e\n\u003cp\u003e#2125 - Allow per plot kwargs for plot_xxx_components calls\nAllow per-plot keyword arguments for plot_model_components and\nplot_source_components.\u003c/p\u003e\n\u003cp\u003e#2126 - Allow plot and contour to change the plot layout and have per-plot settings.\nExpand the plot and contour commands to allow per-plot options to be given,\nmatching the plot_model_components/plot_source_components commands.\u003c/p\u003e\n\u003cp\u003e#2129 - Fix plot overplot\nImprove the behaviour of plot() and contour() when called with\noverplot=True or overcontour=True respectively. Fix #2128.\u003c/p\u003e\n\u003cp\u003e#2130 - data: fixup numpy import\nFix up several typing annotations from a recent refactoring.\u003c/p\u003e\n\u003cp\u003e#2133 - UI: add format and delim arguments to get_filter.\nAllow the get_filter call to override the format and delim arguments. Fix\n#1277\u003c/p\u003e\n\u003cp\u003e#2135 - Tests: tweak tolerances for macOS ARM #2135\nUpdated macOS ARM test tolerances\u003c/p\u003e\n\u003cp\u003e#2137 - Fix doctests in \u003ccode\u003esherpa.plot.__init__\u003c/code\u003e\nChanged documentation to match backends as objects instead of modules\u003c/p\u003e\n\u003cp\u003e#2138 - UI: add documentation for table to show_xsabund\nThe show_xsabund command now includes a description of the abundance table.\u003c/p\u003e\n\u003cp\u003e#2139 - Update helpdesk URL\nChanged helpdesk link - fixes issue #1931\u003c/p\u003e\n\u003cp\u003e#2140 - Updated docs for asymmetric errors\nExpanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings.\u003c/p\u003e\n\u003cp\u003e#2141 - Update LaTeX labels and docs for bokeh\nCorrectly render LaTeX labels in bokeh\u003c/p\u003e\n\u003cp\u003e#2144 - Fix xspec missing doc\nAdd get_xsabund_doc to the list of functions in the documentation. There\nis no functional change.\u003c/p\u003e\n\u003cp\u003e#2147 - Improve corner-case handling of filtering and empty data handling\nA clean-up pass for the data classes, in particular DataPHA, to normalize\nthe filtering and handling of an empty object\u003c/p\u003e\n\u003cp\u003e#2151 - updating Sherpa citations\nAdded a citation to the most recent sherpa paper\u003c/p\u003e\n\u003cp\u003e#2152 - DATA: clean up DataPHA.get_x\nInternal clean up of the DataPHA.get_x method.\u003c/p\u003e\n\u003cp\u003e#2153 - updated the front page of Sherpa RTD with references\nAdded references to three sherpa papers in the sherpa docs\u003c/p\u003e\n\u003cp\u003e#2154 - Update README\nAdded additional text regarding acknowledging/citing sherpa\u003c/p\u003e\n\u003cp\u003e#2155 - Drop support for Python 3.9 and add 3.12\nDrop support for Python 3.9 and numpy \u0026lt; 1.24 and note Python 3.12\nexperimental support.\u003c/p\u003e\n\u003cp\u003e#2157 - Improve test coverage of ignore_bad\nAdd more corner-case of quality channel handling for PHA data. There is no\nfunctional change here.\u003c/p\u003e\n\u003cp\u003e#2160 - Fixup test failures from #2118\nFix up a test case when writing out the range of a FITS column.\u003c/p\u003e\n\u003cp\u003e#2161 - UI: note when a 1D filter command has failed\nProvide more information for the UI user if a filter command has failed.\u003c/p\u003e\n\u003cp\u003e#2162 - TEST: ignore fork deprecation warnings\nIgnore the deprecation warnings about the use of the fork method for\nmultiprocessing.\u003c/p\u003e\n\u003cp\u003e#2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning\nSpecify sphinx \u0026lt; 8 for the read the doc environment and remove the call\nto get_html_theme_path no longer needed.\u003c/p\u003e", "publication_date": "2024-10-09", "publisher": "Zenodo", "related_identifiers": [{"identifier": "https://github.com/sherpa/sherpa/tree/4.17.0", "relation_type": {"id": "issupplementto", "title": {"de": "Erg\u00e4nzt", "en": "Is supplement to"}}, "resource_type": {"id": "software", "title": {"de": "Software", "en": "Software"}}, "scheme": "url"}], "resource_type": {"id": "software", "title": {"de": "Software", "en": "Software"}}, "rights": [{"description": {"en": "The Creative Commons Attribution license allows re-distribution and re-use of a licensed work on the condition that the creator is appropriately credited."}, "icon": "cc-by-icon", "id": "cc-by-4.0", "props": {"scheme": "spdx", "url": "https://creativecommons.org/licenses/by/4.0/legalcode"}, "title": {"en": "Creative Commons Attribution 4.0 International"}}], "title": "sherpa/sherpa: Sherpa 4.17.0", "version": "4.17.0"}, "parent": {"access": {"owned_by": {"user": "683"}, "settings": {"accept_conditions_text": null, "allow_guest_requests": false, "allow_user_requests": false, "secret_link_expiration": 0}}, "communities": {}, "id": "593753", "pids": {"doi": {"client": "datacite", "identifier": "10.5281/zenodo.593753", "provider": "datacite"}}}, "pids": {"doi": {"client": "datacite", "identifier": "10.5281/zenodo.13909532", "provider": "datacite"}, "oai": {"identifier": "oai:zenodo.org:13909532", "provider": "oai"}}, "revision_id": 4, "stats": {"all_versions": {"data_volume": 8073918312.0, "downloads": 590, "unique_downloads": 544, "unique_views": 9800, "views": 10427}, "this_version": {"data_volume": 394095840.0, "downloads": 24, "unique_downloads": 23, "unique_views": 1007, "views": 1044}}, "status": "published", "swh": {}, "ui": {"access_status": {"description_l10n": "The record and files are publicly accessible.", "embargo_date_l10n": null, "icon": "unlock", "id": "open", "message_class": "", "title_l10n": "Open"}, "created_date_l10n_long": "October 9, 2024", "creators": {"affiliations": [[1, "Smithsonian Astrophysical Observatory", null], [2, "MIT", null], [3, "Center for Astrophysics | Harvard \u0026 Smithsonian", null], [4, "HeidelbergCement", null], [5, "Caltech/IPAC", null], [6, "@spacetelescope", null], [7, "@gitlabhq", null]], "creators": [{"person_or_org": {"family_name": "Doug Burke", "name": "Doug Burke", "type": "personal"}}, {"affiliations": [[1, "Smithsonian Astrophysical Observatory"]], "person_or_org": {"family_name": "Omar Laurino", "name": "Omar Laurino", "type": "personal"}}, {"person_or_org": {"family_name": "wmclaugh", "name": "wmclaugh", "type": "personal"}}, {"affiliations": [[2, "MIT"]], "person_or_org": {"family_name": "Hans Moritz G\u00fcnther", "name": "Hans Moritz G\u00fcnther", "type": "personal"}}, {"person_or_org": {"family_name": "Marie-Terrell", "name": "Marie-Terrell", "type": "personal"}}, {"person_or_org": {"family_name": "dtnguyen2", "name": "dtnguyen2", "type": "personal"}}, {"person_or_org": {"family_name": "Aneta Siemiginowska", "name": "Aneta Siemiginowska", "type": "personal"}}, {"person_or_org": {"family_name": "Harlan Cheer", "name": "Harlan Cheer", "type": "personal"}}, {"affiliations": [[1, "Smithsonian Astrophysical Observatory"]], "person_or_org": {"family_name": "Jamie Budynkiewicz", "name": "Jamie Budynkiewicz", "type": "personal"}}, {"affiliations": [[3, "Center for Astrophysics | Harvard \u0026 Smithsonian"]], "person_or_org": {"family_name": "Tom Aldcroft", "name": "Tom Aldcroft", "type": "personal"}}, {"person_or_org": {"family_name": "luzpaz", "name": "luzpaz", "type": "personal"}}, {"affiliations": [[4, "HeidelbergCement"]], "person_or_org": {"family_name": "Christoph Deil", "name": "Christoph Deil", "type": "personal"}}, {"affiliations": [[5, "Caltech/IPAC"]], "person_or_org": {"family_name": "Brigitta Sip\u0151cz", "name": "Brigitta Sip\u0151cz", "type": "personal"}}, {"person_or_org": {"family_name": "Johannes Buchner", "name": "Johannes Buchner", "type": "personal"}}, {"person_or_org": {"family_name": "nplee", "name": "nplee", "type": "personal"}}, {"affiliations": [[3, "Center for Astrophysics | Harvard \u0026 Smithsonian"]], "person_or_org": {"family_name": "Axel Donath", "name": "Axel Donath", "type": "personal"}}, {"affiliations": [[6, "@spacetelescope"]], "person_or_org": {"family_name": "Iva Laginja", "name": "Iva Laginja", "type": "personal"}}, {"affiliations": [[7, "@gitlabhq"]], "person_or_org": {"family_name": "Katrin Leinweber", "name": "Katrin Leinweber", "type": "personal"}}, {"person_or_org": {"family_name": "Todd", "name": "Todd", "type": "personal"}}]}, "custom_fields": {}, "description_stripped": "Sherpa 4.17.0\n\nThis release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes.\n\n\n\nenhancements:\n\n\nadd calc_model and calc_source functions to return an evaluated model/source array\n\nadded wstat to plot_pvalue for the likelihood ratio test\n\nchanged XSpec interface to use FunctionUtility C++ API instead of XSFortran API\n\nimproved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0\n\nimproved guess for complex models\n\nimproved filtering handling\n\nseveral updates to enhance plotting capabilities and layout\n\n\n\ndocumentation changes:\n\n\nadded paper citations to front page of Sherpa Read the Docs documentation\n\ncleaned up various typos and URL references\n\nadded examples such as use of set_x/y_label\n\n\n\ninfrastructure and testing:\n\n\nimproved test coverage\n\nmany updates to CI\n\ndrop support for Python 3.9 and numpy \u003c1.24\n\ninitial/experimental support for Python 3.12\n\n\n\nbug fixes:\n\n\nfixed an issue with plotting 1D data with asymmetric errs after filter\n\ninclude the default identifier in save_all output if it has been changed\n\n\n\n\nDetails\n\n#1757 - Allow the wstat statistic to be used in the likelihood-ratio test\nAllow the Likelihood Ratio Test (as used by plot_value) to be run when\nusing the WStat statistic. Fix #1745.\n\n#1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible)\nInternal change to the XSPEC interface to use the FunctionUtility C++ API\nrather than the XSFortran API. Fix #1225.\n\n#1921 - Clean up of the IO code\nRework the astro data input and output code so that they take advantage of\nthe new data representation in sherpa.astro.io.types\n\n#1949 - Initial support for Python 3.12\nInitial support for building with Python 3.12\n\n#1997 - Add support for XSPEC 12.14.0\nAllow building with XSPEC 12.14.0 and include the 50 new models in it.\n\n#2017 - IO: separate pack and set commands\nReplace the logic of the packup argument to the set I/O commands\n\n#2033 - utils: add typing rules to random and parallel\nAdd typing statements to the sherpa.utils.parallel and sherpa.utils.random\nmodules\n\n#2035 - stats: add typing rules\nAdd typing rules to sherpa.stats and minor internal clean up to the module.\n\n#2036 - Update sherpa citations\nAdd Sherpa 4.16.1 to the citation data.\n\n#2045 - Mark code as deprecated in sherpa.utils\nRework sherpa.utils and mark some symbols as deprecated - func_counter,\nis_in, and mysgn - along with suggested replacements.\n\n#2046- Post 4.16.1 update to add DOI info\nAdds the Sherpa 4.16.1 DOI info to the README.md.\n\n#2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version\nSupport the weekly test builds using aarch64 and ppc46le architectures.\nThis support is considered experimental.\n\n#2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used\nAvoid testing the XSbvvnei model if XSPEC \u003c= 12.14.0i is in use, as the\nmodel can cause a crash in this case.\n\n#2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit\nThe fit call can now be sent a Path object or a file handle, as well as a\nstring. Fix issue #2063\n\n#2056 - tests: fix fake_pha test failure on crates\nAddress test failures when using crates after merging #1684 and to address\na numerical tolerance issue on macOS ARM.\n\n#2057 - Improve the guess routine for PHA data\nAllow guess to work for composite models, including those with responses,\nand improve the guess routine used for the norm parameter of XSPEC additive\nmodels.\n\n#2058 - Address an error introduced in PR 2025\nFix an error made when addressing NumPy 2.0 changes in issue #2025.\n\n#2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines\nEnsure that annotations are added to the sherpa.ui and sherpa.astro.ui\nroutines. Fix #2053\n\n#2060 - Simple typing support for sherpa.data\nAdd some basic typing rules to the sherpa.data module.\n\n#2061 - Avoid warning messages from AstroPy about unclosed files\nInitial cleanup of the astro IO code in preparation for future changes.\nThis fixes an issue when using the AstroPy IO backend (pyfits) which could\ncause Python to report an unclosed file on exit\n\n#2065 - CI: enforce NumPy does not use version 2.0 for the builds\nEnsure the CI builds use numpy\u003c2\n\n#2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0\nThis ups the actions macOS Intel version to 12, and updates the macOS SDK\nto version 11.0, which is consistent with CIAO.\n\n#2069 - Allow the tests to pass with NumPy 2.0\nAllow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus\nis not installed.\n\n#2070 - Migrate to cxc xspec conda test channel\nUse the cxc xspec test channel for Sherpa test workflows.\n\n#2072 - Use the correct case for the symbol name in the parameter warning message\nChange how the warning message for deprecated parameter names for models\nis displayed\n\n#2078 - Include the default identifier in save_all output if it has been changed\nRecord the default identifier in save_all output if the user has changed\nit. Fix #2077\n\n#2079 - minor cleanup of sherpa.optmethods\nInternal clean up of the sherpa.optmethods code.\n\n#2081 - minor plot cleanup\nClean up some plot code to make better use of modern Python idioms.\n\n#2086 - data: allow axis labels to be changed\nAllow the independent and dependent axis labels to be changed. Addresses\n#2083\n\n#2089 - minor cleanup of sherpa.optmethods\nInternal change to handling of the optional output file option when calling\nfit. There is no functional change.\n\n#2091 - Asymmetric filter plot\nAllow 1D data with asymmetric errors to be plotted after a filter. Fixes\n#2090.\n\n#2092 - Add a name field to the IO backends\nAdd a name field to the I/O backends. This is mainly useful for testing\nand debugging.\n\n#2094 - Improve messages about invalid file types (PHA)\nTweak the warning messages when files can not be read to better indicate\nthe type of file being loaded (for PHA related files).\n\n#2102 - Change the URL for XPA\nChange the URL used for XPA. Fix #2100.\n\n#2103 - Ensure crates file reads are read-only\nEnsure that we read in table data as read-only when using the crates I/O\nbackend.\n\n#2105 - docs: typo fixes and remove some references.\nFix a typo in a docstring and change how two references are included in\nthe text.\n\n#2107 - XSPEC: add show_xsabund command\nAdd the show_xsabund command to the sherpa.astro.ui module and\nget_xsabundances to sherpa.astro.xspec.\n\n#2108 - Asymmetric settings\nAllow the statistic and optimizer to be changed when re-sampling data with\nasymmetric errors. Fixes #2093.\n\n#2109 - Add a set_xsabundances call for XSPEC users\nAdd a set_xsabundances call to make it easier to change one or more\nelemental abundances for the XSPEC models and ensure that both the get\nand set calls are available from the sherpa.astro.ui module.\n\n#2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header\nEnsure the NUMELT and NUMGRP keywords for RMF files are written out as\nintegers.\n\n#2112 - Minor typing cleanup\nClean up some of the recently-added typing rules.\n\n#2115 - doc: add examples of using set_xlabel/ylabel\nAdd documentation showing the new set_xlabel/ylabel functionality from\n#2086\n\n#2118 - Improve support for PHA data starting at channel 0\nImprove the handling of PHA files that start at channel 0. PHA data that\nare read in from such a file no longer renumber the CHANNEL column to start\nat 0 rather than 1, which will mean that notice and ignore filter ranges\nthat are given in channel units will need to be reduced by 1.\n\n#2120 - Improve handling of STAT/SYS_ERR PHA columns\nImprove handling of STAT_ERR and SYS_ERR PHA columns which are set to 0.\n\n#2121 - UI: add calc_model/source commands\nAdd calc_model and calc_source routines to return the model expression\nevaluated per bin.\n\n#2123 - Data cleanups\nInternal clean up of some of the data code.\n\n#2125 - Allow per plot kwargs for plot_xxx_components calls\nAllow per-plot keyword arguments for plot_model_components and\nplot_source_components.\n\n#2126 - Allow plot and contour to change the plot layout and have per-plot settings.\nExpand the plot and contour commands to allow per-plot options to be given,\nmatching the plot_model_components/plot_source_components commands.\n\n#2129 - Fix plot overplot\nImprove the behaviour of plot() and contour() when called with\noverplot=True or overcontour=True respectively. Fix #2128.\n\n#2130 - data: fixup numpy import\nFix up several typing annotations from a recent refactoring.\n\n#2133 - UI: add format and delim arguments to get_filter.\nAllow the get_filter call to override the format and delim arguments. Fix\n#1277\n\n#2135 - Tests: tweak tolerances for macOS ARM #2135\nUpdated macOS ARM test tolerances\n\n#2137 - Fix doctests in sherpa.plot.__init__\nChanged documentation to match backends as objects instead of modules\n\n#2138 - UI: add documentation for table to show_xsabund\nThe show_xsabund command now includes a description of the abundance table.\n\n#2139 - Update helpdesk URL\nChanged helpdesk link - fixes issue #1931\n\n#2140 - Updated docs for asymmetric errors\nExpanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings.\n\n#2141 - Update LaTeX labels and docs for bokeh\nCorrectly render LaTeX labels in bokeh\n\n#2144 - Fix xspec missing doc\nAdd get_xsabund_doc to the list of functions in the documentation. There\nis no functional change.\n\n#2147 - Improve corner-case handling of filtering and empty data handling\nA clean-up pass for the data classes, in particular DataPHA, to normalize\nthe filtering and handling of an empty object\n\n#2151 - updating Sherpa citations\nAdded a citation to the most recent sherpa paper\n\n#2152 - DATA: clean up DataPHA.get_x\nInternal clean up of the DataPHA.get_x method.\n\n#2153 - updated the front page of Sherpa RTD with references\nAdded references to three sherpa papers in the sherpa docs\n\n#2154 - Update README\nAdded additional text regarding acknowledging/citing sherpa\n\n#2155 - Drop support for Python 3.9 and add 3.12\nDrop support for Python 3.9 and numpy \u003c 1.24 and note Python 3.12\nexperimental support.\n\n#2157 - Improve test coverage of ignore_bad\nAdd more corner-case of quality channel handling for PHA data. There is no\nfunctional change here.\n\n#2160 - Fixup test failures from #2118\nFix up a test case when writing out the range of a FITS column.\n\n#2161 - UI: note when a 1D filter command has failed\nProvide more information for the UI user if a filter command has failed.\n\n#2162 - TEST: ignore fork deprecation warnings\nIgnore the deprecation warnings about the use of the fork method for\nmultiprocessing.\n\n#2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning\nSpecify sphinx \u003c 8 for the read the doc environment and remove the call\nto get_html_theme_path no longer needed.", "is_draft": false, "publication_date_l10n_long": "October 9, 2024", "publication_date_l10n_medium": "Oct 9, 2024", "related_identifiers": [{"identifier": "https://github.com/sherpa/sherpa/tree/4.17.0", "relation_type": {"id": "issupplementto", "title_l10n": "Is supplement to"}, "resource_type": {"id": "software", "title_l10n": "Software"}, "scheme": "url"}], "resource_type": {"id": "software", "title_l10n": "Software"}, "rights": [{"description_l10n": "The Creative Commons Attribution license allows re-distribution and re-use of a licensed work on the condition that the creator is appropriately credited.", "icon": "cc-by-icon", "id": "cc-by-4.0", "props": {"scheme": "spdx", "url": "https://creativecommons.org/licenses/by/4.0/legalcode"}, "title_l10n": "Creative Commons Attribution 4.0 International"}], "updated_date_l10n_long": "October 9, 2024", "version": "4.17.0"}, "updated": "2024-10-09T16:55:13.058351+00:00", "versions": {"index": 23, "is_latest": true}}' data-styles='[["apa", "APA"], ["harvard-cite-them-right", "Harvard"], ["modern-language-association", "MLA"], ["vancouver", "Vancouver"], ["chicago-fullnote-bibliography", "Chicago"], ["ieee", "IEEE"]]' data-defaultstyle='"apa"' data-include-deleted='false'> </div> </div> </div> <div class="sidebar-container"> <h2 class="ui medium top attached header mt-0">Export</h2> <div id="export-record" class="ui segment bottom attached exports rdm-sidebar"> <div id="recordExportDownload" data-formats='[{"export_url": "/records/13909532/export/json", "name": "JSON"}, {"export_url": "/records/13909532/export/json-ld", "name": "JSON-LD"}, {"export_url": "/records/13909532/export/csl", "name": "CSL"}, {"export_url": "/records/13909532/export/datacite-json", "name": "DataCite JSON"}, {"export_url": "/records/13909532/export/datacite-xml", "name": "DataCite XML"}, {"export_url": "/records/13909532/export/dublincore", "name": "Dublin Core XML"}, {"export_url": "/records/13909532/export/marcxml", "name": "MARCXML"}, {"export_url": "/records/13909532/export/bibtex", "name": "BibTeX"}, {"export_url": "/records/13909532/export/geojson", "name": "GeoJSON"}, {"export_url": "/records/13909532/export/dcat-ap", "name": "DCAT"}, {"export_url": "/records/13909532/export/codemeta", "name": "Codemeta"}, {"export_url": "/records/13909532/export/cff", "name": "Citation File Format"}]'></div> </div> </div> <section id="upload-info" role="note" aria-label="Upload information" class="sidebar-container ui segment rdm-sidebar text-muted" > <h2 class="ui small header text-muted p-0 mb-5"><small>Technical metadata</small></h2> <dl class="m-0"> <dt class="inline"><small>Created</small></dt> <dd class="inline"> <small>October 9, 2024</small> </dd> <div> <dt class="rel-mt-1 inline"><small>Modified</small></dt> <dd class="inline"> <small>October 9, 2024</small> </dd> </div> </dl> </section> </aside> </div> </div> <div class="ui container"> <div class="ui relaxed grid"> <div class="two column row"> <div class="sixteen wide tablet eleven wide computer column"> <div class="ui grid"> <div class="centered row rel-mt-1"> <button id="jump-btn" class="jump-to-top ui button labeled icon" aria-label="Jump to top of page"> <i class="arrow alternate circle up outline icon"></i> Jump up </button> </div> </div></div> </div> </div> </div> </div> </div> </main> <footer id="rdm-footer-element"> <div class="footer-top"> <div class="ui container app-rdm-footer"> <div class="ui equal width stackable grid zenodo-footer"> <div class="column"> <h2 class="ui inverted tiny header">About</h2> <ul class="ui inverted link list"> <li class="item"> <a href="https://about.zenodo.org">About</a> </li> <li class="item"> <a href="https://about.zenodo.org/policies">Policies</a> </li> <li class="item"> <a href="https://about.zenodo.org/infrastructure">Infrastructure</a> </li> <li class="item"> <a href="https://about.zenodo.org/principles">Principles</a> </li> <li class="item"> <a href="https://about.zenodo.org/projects/">Projects</a> </li> <li class="item"> <a href="https://about.zenodo.org/roadmap/">Roadmap</a> </li> <li class="item"> <a href="https://about.zenodo.org/contact">Contact</a> </li> </ul> </div> <div class="column"> <h2 class="ui inverted tiny header">Blog</h2> <ul class="ui inverted link list"> <li class="item"> <a href="https://blog.zenodo.org">Blog</a> </li> </ul> </div> <div class="column"> <h2 class="ui inverted tiny header">Help</h2> <ul class="ui inverted link list"> <li class="item"> <a href="https://help.zenodo.org">FAQ</a> </li> <li class="item"> <a href="https://help.zenodo.org/docs/">Docs</a> </li> <li class="item"> <a href="https://help.zenodo.org/guides/">Guides</a> </li> <li class="item"> <a href="https://zenodo.org/support">Support</a> </li> </ul> </div> <div class="column"> <h2 class="ui inverted tiny header">Developers</h2> <ul class="ui inverted link list"> <li class="item"> <a href="https://developers.zenodo.org">REST API</a> </li> <li class="item"> <a href="https://developers.zenodo.org#oai-pmh">OAI-PMH</a> </li> </ul> </div> <div class="column"> <h2 class="ui inverted tiny header">Contribute</h2> <ul class="ui inverted link list"> <li class="item"> <a href="https://github.com/zenodo/zenodo-rdm"> <i class="icon external" aria-hidden="true"></i> GitHub </a> </li> <li class="item"> <a href="/donate"> <i class="icon external" aria-hidden="true"></i> Donate </a> </li> </ul> </div> <div class="six wide column right aligned"> <h2 class="ui inverted tiny header">Funded by</h2> <ul class="ui horizontal link list"> <li class="item"> <a href="https://home.cern" aria-label="CERN"> <img src="/static/images/cern.png" width="60" height="60" alt="" /> </a> </li> <li class="item"> <a href="https://www.openaire.eu" aria-label="OpenAIRE"> <img src="/static/images/openaire.png" width="60" height="60" alt="" /> </a> </li> <li class="item"> <a href="https://commission.europa.eu/index_en" aria-label="European Commission"> <img src="/static/images/eu.png" width="88" height="60" alt="" /> </a> </li> </ul> </div> </div> </div> </div> <div class="footer-bottom"> <div class="ui inverted container"> <div class="ui grid"> <div class="eight wide column left middle aligned"> <p class="m-0"> Powered by <a href="http://information-technology.web.cern.ch/about/computer-centre">CERN Data Centre</a> & <a href="https://inveniordm.docs.cern.ch/">InvenioRDM</a> </p> </div> <div class="eight wide column right aligned"> <ul class="ui inverted horizontal link list"> <li class="item"> <a href="https://stats.uptimerobot.com/vlYOVuWgM/">Status</a> </li> <li class="item"> <a href="https://about.zenodo.org/privacy-policy">Privacy policy</a> </li> <li class="item"> <a href="https://about.zenodo.org/cookie-policy">Cookie policy</a> </li> <li class="item"> <a href="https://about.zenodo.org/terms">Terms of Use</a> </li> <li class="item"> <a href="/support">Support</a> </li> </ul> </div> </div> </div> </div> </footer> <script type="text/javascript"> window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], processEscapes: true // Allows escaping $ signs if needed } }; </script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.2/es5/tex-mml-chtml.js?config=TeX-AMS-MML_HTMLorMML"></script> <script src="/static/dist/js/manifest.72cfa35c718a31310304.js"></script> <script src="/static/dist/js/73.b6b9397a87d45e8c7e79.js"></script> <script src="/static/dist/js/3526.2347557a1de793133f34.js"></script> <script src="/static/dist/js/theme.11978575020ef7cbe61f.js"></script> <script src="/static/dist/js/3378.93fc672107d4be20d65d.js"></script> <script src="/static/dist/js/1057.f8d1f68e2637564e0767.js"></script> <script src="/static/dist/js/7655.080424d0b9a5a7a5a9b1.js"></script> <script src="/static/dist/js/6506.9170dec9c316b2a1f3ff.js"></script> <script src="/static/dist/js/8871.c8ee8d1254dad3f50a71.js"></script> <script src="/static/dist/js/621.9e1000a5f039459a7477.js"></script> <script src="/static/dist/js/9827.d79bd24bd351ce24ee65.js"></script> <script src="/static/dist/js/742.a643c720ee5af43fd5bd.js"></script> <script src="/static/dist/js/base-theme-rdm.75cb08732d7d870443b0.js"></script> <script src="/static/dist/js/i18n_app.87c128dd93a480df8ee1.js"></script> <script src="/static/dist/js/4709.edb227953b4ff98d5ce6.js"></script> <script src="/static/dist/js/5941.45000a5fd4c17fad73d2.js"></script> <script src="/static/dist/js/9736.0fcd1f1a5978e6cd4ba7.js"></script> <script src="/static/dist/js/5965.81d9be87d398c617d6ec.js"></script> <script src="/static/dist/js/1677.19620b78a544d8c65459.js"></script> <script src="/static/dist/js/8102.95da350bf4dfcd36d527.js"></script> <script src="/static/dist/js/5368.ba18b2cfb9816bc5d9c6.js"></script> <script src="/static/dist/js/8585.3daf14f95b79861b6e55.js"></script> <script src="/static/dist/js/1990.b5183092e2854c3879f6.js"></script> <script src="/static/dist/js/7579.e23e20257609698e9d8b.js"></script> <script src="/static/dist/js/overridable-registry.46fc4ea5bd8520b8ac92.js"></script> <script type='application/ld+json'>{"@context": "http://schema.org", "@id": "https://doi.org/10.5281/zenodo.13909532", "@type": "https://schema.org/SoftwareSourceCode", "author": [{"@type": "Person", "familyName": "Doug Burke", "name": "Doug Burke"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Smithsonian Astrophysical Observatory"}], "familyName": "Omar Laurino", "name": "Omar Laurino"}, {"@type": "Person", "familyName": "wmclaugh", "name": "wmclaugh"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "MIT"}], "familyName": "Hans Moritz G\u00fcnther", "name": "Hans Moritz G\u00fcnther"}, {"@type": "Person", "familyName": "Marie-Terrell", "name": "Marie-Terrell"}, {"@type": "Person", "familyName": "dtnguyen2", "name": "dtnguyen2"}, {"@type": "Person", "familyName": "Aneta Siemiginowska", "name": "Aneta Siemiginowska"}, {"@type": "Person", "familyName": "Harlan Cheer", "name": "Harlan Cheer"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Smithsonian Astrophysical Observatory"}], "familyName": "Jamie Budynkiewicz", "name": "Jamie Budynkiewicz"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "familyName": "Tom Aldcroft", "name": "Tom Aldcroft"}, {"@type": "Person", "familyName": "luzpaz", "name": "luzpaz"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "HeidelbergCement"}], "familyName": "Christoph Deil", "name": "Christoph Deil"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Caltech/IPAC"}], "familyName": "Brigitta Sip\u0151cz", "name": "Brigitta Sip\u0151cz"}, {"@type": "Person", "familyName": "Johannes Buchner", "name": "Johannes Buchner"}, {"@type": "Person", "familyName": "nplee", "name": "nplee"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "familyName": "Axel Donath", "name": "Axel Donath"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "@spacetelescope"}], "familyName": "Iva Laginja", "name": "Iva Laginja"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "@gitlabhq"}], "familyName": "Katrin Leinweber", "name": "Katrin Leinweber"}, {"@type": "Person", "familyName": "Todd", "name": "Todd"}], "contentSize": "15.66 MB", "creator": [{"@type": "Person", "familyName": "Doug Burke", "name": "Doug Burke"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Smithsonian Astrophysical Observatory"}], "familyName": "Omar Laurino", "name": "Omar Laurino"}, {"@type": "Person", "familyName": "wmclaugh", "name": "wmclaugh"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "MIT"}], "familyName": "Hans Moritz G\u00fcnther", "name": "Hans Moritz G\u00fcnther"}, {"@type": "Person", "familyName": "Marie-Terrell", "name": "Marie-Terrell"}, {"@type": "Person", "familyName": "dtnguyen2", "name": "dtnguyen2"}, {"@type": "Person", "familyName": "Aneta Siemiginowska", "name": "Aneta Siemiginowska"}, {"@type": "Person", "familyName": "Harlan Cheer", "name": "Harlan Cheer"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Smithsonian Astrophysical Observatory"}], "familyName": "Jamie Budynkiewicz", "name": "Jamie Budynkiewicz"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "familyName": "Tom Aldcroft", "name": "Tom Aldcroft"}, {"@type": "Person", "familyName": "luzpaz", "name": "luzpaz"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "HeidelbergCement"}], "familyName": "Christoph Deil", "name": "Christoph Deil"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Caltech/IPAC"}], "familyName": "Brigitta Sip\u0151cz", "name": "Brigitta Sip\u0151cz"}, {"@type": "Person", "familyName": "Johannes Buchner", "name": "Johannes Buchner"}, {"@type": "Person", "familyName": "nplee", "name": "nplee"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "Center for Astrophysics | Harvard \u0026 Smithsonian"}], "familyName": "Axel Donath", "name": "Axel Donath"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "@spacetelescope"}], "familyName": "Iva Laginja", "name": "Iva Laginja"}, {"@type": "Person", "affiliation": [{"@type": "Organization", "name": "@gitlabhq"}], "familyName": "Katrin Leinweber", "name": "Katrin Leinweber"}, {"@type": "Person", "familyName": "Todd", "name": "Todd"}], "dateCreated": "2024-10-09T16:55:12.906565+00:00", "dateModified": "2024-10-09T16:55:13.058351+00:00", "datePublished": "2024-10-09", "description": "\u003ch1\u003eSherpa 4.17.0\u003c/h1\u003e\n\u003cp\u003eThis release of Sherpa includes various enhancements, documentation updates, bug fixes, and infrastructure changes.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eenhancements:\u003cul\u003e\n\u003cli\u003eadd calc_model and calc_source functions to return an evaluated model/source array\u003c/li\u003e\n\u003cli\u003eadded wstat to plot_pvalue for the likelihood ratio test\u003c/li\u003e\n\u003cli\u003echanged XSpec interface to use FunctionUtility C++ API instead of XSFortran API\u003c/li\u003e\n\u003cli\u003eimproved support for PHA data starting at channel 0 and handling of STAT_ERR and SYS_ERR PHA columns which are set to 0\u003c/li\u003e\n\u003cli\u003eimproved guess for complex models\u003c/li\u003e\n\u003cli\u003eimproved filtering handling\u003c/li\u003e\n\u003cli\u003eseveral updates to enhance plotting capabilities and layout\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edocumentation changes:\u003cul\u003e\n\u003cli\u003eadded paper citations to front page of Sherpa Read the Docs documentation\u003c/li\u003e\n\u003cli\u003ecleaned up various typos and URL references\u003c/li\u003e\n\u003cli\u003eadded examples such as use of set_x/y_label\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003einfrastructure and testing:\u003cul\u003e\n\u003cli\u003eimproved test coverage\u003c/li\u003e\n\u003cli\u003emany updates to CI\u003c/li\u003e\n\u003cli\u003edrop support for Python 3.9 and numpy \u0026lt;1.24\u003c/li\u003e\n\u003cli\u003einitial/experimental support for Python 3.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ebug fixes:\u003cul\u003e\n\u003cli\u003efixed an issue with plotting 1D data with asymmetric errs after filter\u003c/li\u003e\n\u003cli\u003einclude the default identifier in save_all output if it has been changed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDetails\u003c/h2\u003e\n\u003cp\u003e#1757 - Allow the wstat statistic to be used in the likelihood-ratio test\nAllow the Likelihood Ratio Test (as used by plot_value) to be run when\nusing the WStat statistic. Fix #1745.\u003c/p\u003e\n\u003cp\u003e#1793 - XSPEC move from the xsFortran API to the FunctionUtility API (where possible)\nInternal change to the XSPEC interface to use the FunctionUtility C++ API\nrather than the XSFortran API. Fix #1225.\u003c/p\u003e\n\u003cp\u003e#1921 - Clean up of the IO code\nRework the astro data input and output code so that they take advantage of\nthe new data representation in sherpa.astro.io.types\u003c/p\u003e\n\u003cp\u003e#1949 - Initial support for Python 3.12\nInitial support for building with Python 3.12\u003c/p\u003e\n\u003cp\u003e#1997 - Add support for XSPEC 12.14.0\nAllow building with XSPEC 12.14.0 and include the 50 new models in it.\u003c/p\u003e\n\u003cp\u003e#2017 - IO: separate pack and set commands\nReplace the logic of the packup argument to the set I/O commands\u003c/p\u003e\n\u003cp\u003e#2033 - utils: add typing rules to random and parallel\nAdd typing statements to the sherpa.utils.parallel and sherpa.utils.random\nmodules\u003c/p\u003e\n\u003cp\u003e#2035 - stats: add typing rules\nAdd typing rules to sherpa.stats and minor internal clean up to the module.\u003c/p\u003e\n\u003cp\u003e#2036 - Update sherpa citations\nAdd Sherpa 4.16.1 to the citation data.\u003c/p\u003e\n\u003cp\u003e#2045 - Mark code as deprecated in sherpa.utils\nRework sherpa.utils and mark some symbols as deprecated - func_counter,\nis_in, and mysgn - along with suggested replacements.\u003c/p\u003e\n\u003cp\u003e#2046- Post 4.16.1 update to add DOI info\nAdds the Sherpa 4.16.1 DOI info to the README.md.\u003c/p\u003e\n\u003cp\u003e#2048 - CI: update the weekly arch run to add ppc64le and to use a supported python version\nSupport the weekly test builds using aarch64 and ppc46le architectures.\nThis support is considered experimental.\u003c/p\u003e\n\u003cp\u003e#2052 - XSPEC: do not test bvvnei unless 12.14.0i or later is used\nAvoid testing the XSbvvnei model if XSPEC \u0026lt;= 12.14.0i is in use, as the\nmodel can cause a crash in this case.\u003c/p\u003e\n\u003cp\u003e#2054 - Allow a file handle or Path object to be sent to the outfile parameter of fit\nThe fit call can now be sent a Path object or a file handle, as well as a\nstring. Fix issue #2063\u003c/p\u003e\n\u003cp\u003e#2056 - tests: fix fake_pha test failure on crates\nAddress test failures when using crates after merging #1684 and to address\na numerical tolerance issue on macOS ARM.\u003c/p\u003e\n\u003cp\u003e#2057 - Improve the guess routine for PHA data\nAllow guess to work for composite models, including those with responses,\nand improve the guess routine used for the norm parameter of XSPEC additive\nmodels.\u003c/p\u003e\n\u003cp\u003e#2058 - Address an error introduced in PR 2025\nFix an error made when addressing NumPy 2.0 changes in issue #2025.\u003c/p\u003e\n\u003cp\u003e#2059 - Copy over typing annotations to the sherpa.ui and sherpa.astro.ui routines\nEnsure that annotations are added to the sherpa.ui and sherpa.astro.ui\nroutines. Fix #2053\u003c/p\u003e\n\u003cp\u003e#2060 - Simple typing support for sherpa.data\nAdd some basic typing rules to the sherpa.data module.\u003c/p\u003e\n\u003cp\u003e#2061 - Avoid warning messages from AstroPy about unclosed files\nInitial cleanup of the astro IO code in preparation for future changes.\nThis fixes an issue when using the AstroPy IO backend (pyfits) which could\ncause Python to report an unclosed file on exit\u003c/p\u003e\n\u003cp\u003e#2065 - CI: enforce NumPy does not use version 2.0 for the builds\nEnsure the CI builds use numpy\u0026lt;2\u003c/p\u003e\n\u003cp\u003e#2068 - CM-887: Updating macos gitlab runner images to version 12 and update the MacOS SDK to version 11.0\nThis ups the actions macOS Intel version to 12, and updates the macOS SDK\nto version 11.0, which is consistent with CIAO.\u003c/p\u003e\n\u003cp\u003e#2069 - Allow the tests to pass with NumPy 2.0\nAllow the tests to pass when using NumPy 2.0, as long as pytest-doctestplus\nis not installed.\u003c/p\u003e\n\u003cp\u003e#2070 - Migrate to cxc xspec conda test channel\nUse the cxc xspec test channel for Sherpa test workflows.\u003c/p\u003e\n\u003cp\u003e#2072 - Use the correct case for the symbol name in the parameter warning message\nChange how the warning message for deprecated parameter names for models\nis displayed\u003c/p\u003e\n\u003cp\u003e#2078 - Include the default identifier in save_all output if it has been changed\nRecord the default identifier in save_all output if the user has changed\nit. Fix #2077\u003c/p\u003e\n\u003cp\u003e#2079 - minor cleanup of sherpa.optmethods\nInternal clean up of the sherpa.optmethods code.\u003c/p\u003e\n\u003cp\u003e#2081 - minor plot cleanup\nClean up some plot code to make better use of modern Python idioms.\u003c/p\u003e\n\u003cp\u003e#2086 - data: allow axis labels to be changed\nAllow the independent and dependent axis labels to be changed. Addresses\n#2083\u003c/p\u003e\n\u003cp\u003e#2089 - minor cleanup of sherpa.optmethods\nInternal change to handling of the optional output file option when calling\nfit. There is no functional change.\u003c/p\u003e\n\u003cp\u003e#2091 - Asymmetric filter plot\nAllow 1D data with asymmetric errors to be plotted after a filter. Fixes\n#2090.\u003c/p\u003e\n\u003cp\u003e#2092 - Add a name field to the IO backends\nAdd a name field to the I/O backends. This is mainly useful for testing\nand debugging.\u003c/p\u003e\n\u003cp\u003e#2094 - Improve messages about invalid file types (PHA)\nTweak the warning messages when files can not be read to better indicate\nthe type of file being loaded (for PHA related files).\u003c/p\u003e\n\u003cp\u003e#2102 - Change the URL for XPA\nChange the URL used for XPA. Fix #2100.\u003c/p\u003e\n\u003cp\u003e#2103 - Ensure crates file reads are read-only\nEnsure that we read in table data as read-only when using the crates I/O\nbackend.\u003c/p\u003e\n\u003cp\u003e#2105 - docs: typo fixes and remove some references.\nFix a typo in a docstring and change how two references are included in\nthe text.\u003c/p\u003e\n\u003cp\u003e#2107 - XSPEC: add show_xsabund command\nAdd the show_xsabund command to the sherpa.astro.ui module and\nget_xsabundances to sherpa.astro.xspec.\u003c/p\u003e\n\u003cp\u003e#2108 - Asymmetric settings\nAllow the statistic and optimizer to be changed when re-sampling data with\nasymmetric errors. Fixes #2093.\u003c/p\u003e\n\u003cp\u003e#2109 - Add a set_xsabundances call for XSPEC users\nAdd a set_xsabundances call to make it easier to change one or more\nelemental abundances for the XSPEC models and ensure that both the get\nand set calls are available from the sherpa.astro.ui module.\u003c/p\u003e\n\u003cp\u003e#2111 - IO: ensure NUMELT/GRP are written out as integers for RMF header\nEnsure the NUMELT and NUMGRP keywords for RMF files are written out as\nintegers.\u003c/p\u003e\n\u003cp\u003e#2112 - Minor typing cleanup\nClean up some of the recently-added typing rules.\u003c/p\u003e\n\u003cp\u003e#2115 - doc: add examples of using set_xlabel/ylabel\nAdd documentation showing the new set_xlabel/ylabel functionality from\n#2086\u003c/p\u003e\n\u003cp\u003e#2118 - Improve support for PHA data starting at channel 0\nImprove the handling of PHA files that start at channel 0. PHA data that\nare read in from such a file no longer renumber the CHANNEL column to start\nat 0 rather than 1, which will mean that notice and ignore filter ranges\nthat are given in channel units will need to be reduced by 1.\u003c/p\u003e\n\u003cp\u003e#2120 - Improve handling of STAT/SYS_ERR PHA columns\nImprove handling of STAT_ERR and SYS_ERR PHA columns which are set to 0.\u003c/p\u003e\n\u003cp\u003e#2121 - UI: add calc_model/source commands\nAdd calc_model and calc_source routines to return the model expression\nevaluated per bin.\u003c/p\u003e\n\u003cp\u003e#2123 - Data cleanups\nInternal clean up of some of the data code.\u003c/p\u003e\n\u003cp\u003e#2125 - Allow per plot kwargs for plot_xxx_components calls\nAllow per-plot keyword arguments for plot_model_components and\nplot_source_components.\u003c/p\u003e\n\u003cp\u003e#2126 - Allow plot and contour to change the plot layout and have per-plot settings.\nExpand the plot and contour commands to allow per-plot options to be given,\nmatching the plot_model_components/plot_source_components commands.\u003c/p\u003e\n\u003cp\u003e#2129 - Fix plot overplot\nImprove the behaviour of plot() and contour() when called with\noverplot=True or overcontour=True respectively. Fix #2128.\u003c/p\u003e\n\u003cp\u003e#2130 - data: fixup numpy import\nFix up several typing annotations from a recent refactoring.\u003c/p\u003e\n\u003cp\u003e#2133 - UI: add format and delim arguments to get_filter.\nAllow the get_filter call to override the format and delim arguments. Fix\n#1277\u003c/p\u003e\n\u003cp\u003e#2135 - Tests: tweak tolerances for macOS ARM #2135\nUpdated macOS ARM test tolerances\u003c/p\u003e\n\u003cp\u003e#2137 - Fix doctests in \u003ccode\u003esherpa.plot.__init__\u003c/code\u003e\nChanged documentation to match backends as objects instead of modules\u003c/p\u003e\n\u003cp\u003e#2138 - UI: add documentation for table to show_xsabund\nThe show_xsabund command now includes a description of the abundance table.\u003c/p\u003e\n\u003cp\u003e#2139 - Update helpdesk URL\nChanged helpdesk link - fixes issue #1931\u003c/p\u003e\n\u003cp\u003e#2140 - Updated docs for asymmetric errors\nExpanded documentation for load_ascii_with_errors to clarify assumptions for elo and ehi settings.\u003c/p\u003e\n\u003cp\u003e#2141 - Update LaTeX labels and docs for bokeh\nCorrectly render LaTeX labels in bokeh\u003c/p\u003e\n\u003cp\u003e#2144 - Fix xspec missing doc\nAdd get_xsabund_doc to the list of functions in the documentation. There\nis no functional change.\u003c/p\u003e\n\u003cp\u003e#2147 - Improve corner-case handling of filtering and empty data handling\nA clean-up pass for the data classes, in particular DataPHA, to normalize\nthe filtering and handling of an empty object\u003c/p\u003e\n\u003cp\u003e#2151 - updating Sherpa citations\nAdded a citation to the most recent sherpa paper\u003c/p\u003e\n\u003cp\u003e#2152 - DATA: clean up DataPHA.get_x\nInternal clean up of the DataPHA.get_x method.\u003c/p\u003e\n\u003cp\u003e#2153 - updated the front page of Sherpa RTD with references\nAdded references to three sherpa papers in the sherpa docs\u003c/p\u003e\n\u003cp\u003e#2154 - Update README\nAdded additional text regarding acknowledging/citing sherpa\u003c/p\u003e\n\u003cp\u003e#2155 - Drop support for Python 3.9 and add 3.12\nDrop support for Python 3.9 and numpy \u0026lt; 1.24 and note Python 3.12\nexperimental support.\u003c/p\u003e\n\u003cp\u003e#2157 - Improve test coverage of ignore_bad\nAdd more corner-case of quality channel handling for PHA data. There is no\nfunctional change here.\u003c/p\u003e\n\u003cp\u003e#2160 - Fixup test failures from #2118\nFix up a test case when writing out the range of a FITS column.\u003c/p\u003e\n\u003cp\u003e#2161 - UI: note when a 1D filter command has failed\nProvide more information for the UI user if a filter command has failed.\u003c/p\u003e\n\u003cp\u003e#2162 - TEST: ignore fork deprecation warnings\nIgnore the deprecation warnings about the use of the fork method for\nmultiprocessing.\u003c/p\u003e\n\u003cp\u003e#2177 - Read the Docs build failures with newer sphinx versions and sphinx_rtd_theme deprecation warning\nSpecify sphinx \u0026lt; 8 for the read the doc environment and remove the call\nto get_html_theme_path no longer needed.\u003c/p\u003e", "identifier": "https://doi.org/10.5281/zenodo.13909532", "license": "https://creativecommons.org/licenses/by/4.0/legalcode", "name": "sherpa/sherpa: Sherpa 4.17.0", "publisher": {"@type": "Organization", "name": "Zenodo"}, "size": "15.66 MB", "url": "https://zenodo.org/records/13909532", "version": "4.17.0"}</script> <script src="/static/dist/js/invenio-app-rdm-landing-page-theme.3b272942835c0a00f70d.js"></script> <script src="/static/dist/js/9945.a92c05fa251cdd46af39.js"></script> <script src="/static/dist/js/1357.a797e799edacc635aff6.js"></script> <script src="/static/dist/js/1644.1058f060212ca16b6b1b.js"></script> <script src="/static/dist/js/8962.d3c63b5b1bf1be14b08f.js"></script> <script src="/static/dist/js/9300.47bba80029a7c79a1cef.js"></script> <script src="/static/dist/js/5680.fe8049296074c5f486f1.js"></script> <script src="/static/dist/js/invenio-app-rdm-landing-page.c52645bb89cdcbf5dcbf.js"></script> <script src="/static/dist/js/previewer_theme.a4cb12f2f2d734727d26.js"></script> <script src="/static/dist/js/zenodo-rdm-citations.fec7f37f1c6823bc87e7.js"></script> <div class="ui container info message cookie-banner hidden"> <i class="close icon"></i> <div> <i aria-hidden="true" class="info icon"></i> <p class="inline">This site uses cookies. Find out more on <a href="https://about.zenodo.org/cookie-policy">how we use cookies</a></p> </div> <div class="buttons"> <button class="ui button small primary" id="cookies-all">Accept all cookies</button> <button class="ui button small" id="cookies-essential">Accept only essential cookies</button> </div> </div> <script> var _paq = window._paq = window._paq || []; _paq.push(['requireCookieConsent']); (function() { var u="https://webanalytics.web.cern.ch/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '366']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); const cookieConsent = document.cookie .split("; ") .find((row) => row.startsWith("cookie_consent=")) ?.split("=")[1]; if (cookieConsent) { if (cookieConsent === "all") { matomo(); } } else { document.querySelector(".cookie-banner").classList.remove("hidden") _paq.push(['forgetConsentGiven']); } $('.cookie-banner .close') .on('click', function () { $(this) .closest('.message') .transition('fade'); setCookie("cookie_consent","essential"); }); $('#cookies-essential') .on('click', function () { $(this) .closest('.message') .transition('fade'); setCookie("cookie_consent","essential"); }); $('#cookies-all') .on('click', function () { $(this) .closest('.message') .transition('fade'); setCookie("cookie_consent","all"); _paq.push(['rememberCookieConsentGiven']); matomo(); }); function matomo() { /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); } function setCookie(cname, cvalue) { var d = new Date(); d.setTime(d.getTime() + (365 * 24 * 60 * 60 * 1000)); // one year var expires = "expires=" + d.toUTCString(); var cookie = cname + "=" + cvalue + ";" + expires + ";" cookie += "Domain=zenodo.org;Path=/;SameSite=None; Secure"; document.cookie = cookie; } </script> </body> </html>