Skip to main content

Modeling and fitting package for scientific data analysis

Project description

Build Status: Conda Build Status: Pip Documentation Status DOI GPLv3+ License Python version

Table of Contents

Sherpa

Sherpa is a modeling and fitting application for Python. It contains a powerful language for combining simple models into complex expressions that can be fit to the data using a variety of statistics and optimization methods. It is easily extensible to include user models, statistics, and optimization methods. It provides a high-level User Interface for interactive data-analysis work, such as within a Jupyter notebook, and it can also be used as a library component, providing fitting and modeling capabilities to an application.

What can you do with Sherpa?

  • fit 1D (multiple) data including: spectra, surface brightness profiles, light curves, general ASCII arrays
  • fit 2D images/surfaces in Poisson/Gaussian regime
  • build complex model expressions
  • import and use your own models
  • use appropriate statistics for modeling Poisson or Gaussian data
  • import new statistics, with priors if required by analysis
  • visualize the parameter space with simulations or using 1D/2D cuts of the parameter space
  • calculate confidence levels on the best fit model parameters
  • choose a robust optimization method for the fit: Levenberg-Marquardt, Nelder-Mead Simplex or Monte Carlo/Differential Evolution.

Documentation for Sherpa is available at Read The Docs and also for Sherpa in CIAO.

A Quick Start Tutorial is included in the notebooks folder and can be opened with an ipython notebook.

Acknowledging or Citing Sherpa

If you use Sherpa for work/research presented in a publication please cite the Sherpa papers:

Sherpa Paper 2024 (ADS BibTex)

Sherpa Paper 2007 (ADS BibTex )

Sherpa Paper 2001 (ADS BibTex)

If you are using AASTeX and plan to submit an article to one of the AAS journals, we recommend adding a \software{...} tag to your manuscript that cites Sherpa (see the AASTeX guide for more information), e.g.:

\software{Sherpa \citep{2001SPIE.4477...76F,2007ASPC..376..543D,2024arXiv240910400S}}

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. A copy of the GNU General Public License can be found in the LICENSE file provided with the source code, or from the Free Software Foundation.

How To Install Sherpa

Full installation instructions are part of the Read The Docs documentation, and should be read if the following is not sufficient.

It is strongly recommended that some form of virtual environment is used with Sherpa.

Sherpa is tested against Python versions 3.10 and 3.11 with experimental support for Python 3.12.

The last version of Sherpa which supported Python 2.7 is Sherpa 4.11.1.

Using Conda

Sherpa is provided for both Linux and macOS operating systems running Python 3.10, 3.11, and (experimental) 3.12. It can be installed with the conda package manager by saying

$ conda install -c https://cxc.cfa.harvard.edu/conda/sherpa -c conda-forge sherpa

Using pip

Sherpa is also available on PyPI and so can be installed with the following command (which requires that the NumPy package is already installed).

% pip install sherpa

Building from source

Source installation is available for platforms incompatible with the binary builds, or for when the default build options are not sufficient (such as including support for the XSPEC model library). The steps are described in the building from source documentation.

History

Sherpa is developed by the Chandra X-ray Observatory to provide fitting and modelling capabilities to the CIAO analysis package. It has been released onto GitHub for users to extend (whether to other areas of Astronomy or in other domains).

Release History

4.16.1: 21 May 2024 DOI

4.16.0: 17 October 2023 DOI

4.15.1: 18 May 2023 DOI

4.15.0: 11 October 2022 DOI

4.14.1: 20 May 2022 DOI

4.14.0: 07 October 2021 DOI

4.13.1: 18 May 2021 DOI

4.13.0: 08 January 2021 DOI

4.12.2: 27 October 2020 DOI

4.12.1: 14 July 2020 DOI

4.12.0: 30 January 2020 DOI

4.11.1: 1 August 2019 DOI

4.11.0: 20 February 2019 DOI

4.10.2: 14 December 2018 DOI

4.10.1: 16 October 2018 DOI

4.10.0: 11 May 2018 DOI

4.9.1: 01 August 2017 DOI

4.9.0: 27 January 2017 DOI

4.8.2: 23 September 2016 DOI

4.8.1: 15 April 2016 DOI

4.8.0: 27 January 2016 DOI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sherpa-4.17.0.tar.gz (14.0 MB view details)

Uploaded Source

File details

Details for the file sherpa-4.17.0.tar.gz.

File metadata

  • Download URL: sherpa-4.17.0.tar.gz
  • Upload date:
  • Size: 14.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.15

File hashes

Hashes for sherpa-4.17.0.tar.gz
Algorithm Hash digest
SHA256 5cea2c4a4fc2d354ea6049e4d1a25d173001bb30c49d396761d93c1762a1f54e
MD5 323e475223c4a6bb8e17053b8d06937e
BLAKE2b-256 def4b9bf8a651b43732f952a2607a300d3ffb4a961d57a8b85c15892f374c5a6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page