Metadata-Version: 2.3
Name: elisa-lib
Version: 0.1.11
Summary: Efficient library for spectral analysis in high-energy astrophysics.
Project-URL: Documentation, https://github.com/wcxve/elisa#readme
Project-URL: Issues, https://github.com/wcxve/elisa/issues
Project-URL: Source, https://github.com/wcxve/elisa
Author-email: Wang-Chen Xue <wcxuemail@gmail.com>
License-Expression: GPL-3.0-or-later
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: <3.12,>=3.9
Requires-Dist: arviz>=0.17.1; python_version < '3.10'
Requires-Dist: arviz>=0.18.0; python_version >= '3.10'
Requires-Dist: astropy>=5.3
Requires-Dist: corner>=2.2.2
Requires-Dist: h5py
Requires-Dist: iminuit
Requires-Dist: jax>=0.4.5
Requires-Dist: jaxlib>=0.4.5
Requires-Dist: jaxns>=2.4.8
Requires-Dist: matplotlib
Requires-Dist: nautilus-sampler
Requires-Dist: numpy
Requires-Dist: numpyro>=0.14.0
Requires-Dist: optimistix
Requires-Dist: prettytable
Requires-Dist: quadax>=0.2.1
Requires-Dist: scipy<=1.12.0,>=1.11.0; python_version < '3.10'
Requires-Dist: scipy>=1.11.0; python_version >= '3.10'
Requires-Dist: seaborn
Requires-Dist: tinygp
Requires-Dist: tqdm
Requires-Dist: ultranest
Provides-Extra: dev
Requires-Dist: pre-commit>=3.6.0; extra == 'dev'
Requires-Dist: ruff>=2.0; extra == 'dev'
Provides-Extra: docs
Requires-Dist: ipywidgets; extra == 'docs'
Requires-Dist: jupyter; extra == 'docs'
Requires-Dist: jupyterlab-widgets; extra == 'docs'
Requires-Dist: myst-nb; extra == 'docs'
Requires-Dist: numba; extra == 'docs'
Requires-Dist: numpydoc; extra == 'docs'
Requires-Dist: pydata-sphinx-theme; extra == 'docs'
Requires-Dist: sphinx-autodoc-typehints; extra == 'docs'
Requires-Dist: sphinx-codeautolink; extra == 'docs'
Requires-Dist: sphinx-copybutton; extra == 'docs'
Requires-Dist: sphinx-design; extra == 'docs'
Requires-Dist: sphinx>=7.4.0; extra == 'docs'
Requires-Dist: widgetsnbextension; extra == 'docs'
Provides-Extra: test
Requires-Dist: coverage[toml]; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Provides-Extra: xspec
Requires-Dist: xspex; extra == 'xspec'
Description-Content-Type: text/markdown

# ELISA: Efficient Library for Spectral Analysis in High-Energy Astrophysics

[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/elisa-lib?color=blue&logo=Python&logoColor=white&style=for-the-badge)](https://pypi.org/project/elisa-lib)
[![PyPI - Version](https://img.shields.io/pypi/v/elisa-lib?color=blue&logo=PyPI&logoColor=white&style=for-the-badge)](https://pypi.org/project/elisa-lib)
[![License: GPL v3](https://img.shields.io/github/license/wcxve/elisa?color=blue&logo=open-source-initiative&logoColor=white&style=for-the-badge)](https://www.gnu.org/licenses/gpl-3.0)<br>
[![Coverage Status](https://img.shields.io/coverallsCoverage/github/wcxve/elisa?logo=Coveralls&logoColor=white&style=for-the-badge)](https://coveralls.io/github/wcxve/elisa)
[![Documentation Status](https://img.shields.io/readthedocs/elisa-lib?logo=Read-the-Docs&logoColor=white&style=for-the-badge)](https://elisa-lib.readthedocs.io/en/latest/?badge=latest)

The aim of ``ELISA`` is to provide a modern and efficient tool to explore and
analyze the spectral data. It is designed to be user-friendly and flexible.
The key features of ``ELISA`` include:

- **Ease of Use**: Simple and intuitive interfaces
- **Robustness**: Utilizing the state-of-the-art algorithm to fit, test, and compare models
- **Performance**: Efficient computation backend based on [JAX](https://jax.readthedocs.io/en/latest/notebooks/quickstart.html)
- ...

**NOTE**: ``ELISA`` is currently under active development. Please be aware of
potential brittleness, bugs, and changes to the API as the design evolves.

-----

**Table of Contents**

- [Installation](#installation)
- [Documentation](#documentation)
- [License](#license)

## Installation

### Stable Version

It is recommended to install ``ELISA`` in a new [``conda``](https://docs.conda.io/projects/conda/en/stable/user-guide/getting-started.html)
environment as follows:

1. Create a new ``conda`` environment. The following command creates a new
   environment named "elisa" with ``Python`` 3.9:

    ```console
    conda create -n elisa python=3.9
    ```

   Note that you can customize the environment name to your preference,
   and the ``Python`` version should range from 3.9 to 3.11.

2. Activate the environment we just created:

    ```console
    conda activate elisa
    ```

3. Install ``ELISA`` using ``pip``:

    ```console
    pip install elisa-lib
    ```


## Use ``Xspec`` Models
   If you want to use models from [Xspec](https://heasarc.gsfc.nasa.gov/xanadu/xspec/manual/Models.html),
   make sure ``HEASoft`` and ``Xspec v12.12.1+`` are installed on your system,
   and the ``HEASoft`` environment is initialized, then use the following
   command to install [``xspex``](https://github.com/wcxve/xspex):

   ```console
   pip install xspex
   ```


### Development Version
The latest version of ``ELISA`` can be installed by the following command:

   ```console
   pip install -U git+https://github.com/wcxve/elisa.git
   ```


## Documentation

Read the documentation at: https://elisa-lib.readthedocs.io

## License

`ELISA` is distributed under the terms of the [GPL-3.0](https://www.gnu.org/licenses/gpl-3.0-standalone.html) license.
