# ExoIris: Transmission Spectroscopy Made Easy
[![Docs](https://readthedocs.org/projects/exoiris/badge/)](https://exoiris.readthedocs.io)
![Python package](https://github.com/hpparvi/EasyTS/actions/workflows/python-package.yml/badge.svg)
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg)](CODE_OF_CONDUCT.md)
[![Licence](http://img.shields.io/badge/license-GPLv3-blue.svg?style=flat)](http://www.gnu.org/licenses/gpl-3.0.html)
[![PyPI version](https://badge.fury.io/py/easyts.svg)](https://pypi.org/project/EasyTS/)
**ExoIris** is a user-friendly Python package designed to simplify and accelerate the analysis of transmission
spectroscopy data for exoplanets. The package can estimate a self-consistent medium-resolution transmission spectrum
with uncertainties from JWST NIRISS data in minutes, even when using a Gaussian Process-based noise model.
![](doc/source/examples/e01/example1.png)
## Documentation
Read the docs at [exoiris.readthedocs.io](https://exoiris.readthedocs.io).
## Key Features
- **Fast modelling of spectroscopic transit time series**: ExoIris uses PyTransit's advanced `TSModel` transit
model that is specially tailored for fast and efficient modelling of spectroscopic transit (or eclipse) time series.
- **Flexible handling of limb darkening**: The stellar limb darkening can be modelled freely either by any of the standard
limb darkening laws (quadratic, power-2, non-linear, etc.), by numerical stellar intensity profiles obtained
directly from stellar atmosphere models, or by an arbitrary ser-defined radially symmetric function.
- **Handling of Correlated noise**: The noise model can be chosen between white or time-correlated noise, where the
time-correlated noise is modelled as a Gaussian process.
- **Model saving and loading**: Seamless model saving and loading allows one to create a high-resolution analysis starting
from a saved low-resolution analysis.
- **Full control of resolution**: ExoIris represents the transmission spectrum as a cubic spline, with complete
flexibility to set and modify the number and placement of spline knots, allowing variable resolution throughout the
analysis.
## Details
ExoIris uses PyTransit's `TSModel`, a transit model that is specially optimised for transmission spectroscopy and allows
for simultaneous modelling of hundreds to thousands of spectroscopic light curves 20-30 times faster than when using
standard transit models not explicitly designed for transmission spectroscopy.
A complete posterior solution for a low-resolution transmission spectrum with a data resolution of R=100
takes 3-5 minutes to estimate assuming white noise, or 5-15 minutes if using a Gaussian process-based likelihood
model powered by the celerite2 package. A high-resolution spectrum of the JWST NIRISS WASP-39 b observations
by [Feinstein et al. (2023)](https://ui.adsabs.harvard.edu/abs/2023Natur.614..670F/abstract) with ~3800
spectroscopic light curves (as shown above) takes about 1.5 hours to optimise and sample on a three-year-old
AMD Ryzen 7 5800X with eight cores.
---
© 2024 Hannu Parviainen
Raw data
{
"_id": null,
"home_page": null,
"name": "ExoIris",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "astronomy, astrophysics, exoplanets",
"author": null,
"author_email": "Hannu Parviainen <hannu@iac.es>",
"download_url": "https://files.pythonhosted.org/packages/17/22/ce83af3c3ab4eab7ce17dfb7582dc40f19370e3a27690adc27e9d4217189/exoiris-0.14.1.tar.gz",
"platform": null,
"description": "# ExoIris: Transmission Spectroscopy Made Easy\n\n[![Docs](https://readthedocs.org/projects/exoiris/badge/)](https://exoiris.readthedocs.io)\n![Python package](https://github.com/hpparvi/EasyTS/actions/workflows/python-package.yml/badge.svg)\n[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg)](CODE_OF_CONDUCT.md)\n[![Licence](http://img.shields.io/badge/license-GPLv3-blue.svg?style=flat)](http://www.gnu.org/licenses/gpl-3.0.html)\n[![PyPI version](https://badge.fury.io/py/easyts.svg)](https://pypi.org/project/EasyTS/)\n\n**ExoIris** is a user-friendly Python package designed to simplify and accelerate the analysis of transmission \nspectroscopy data for exoplanets. The package can estimate a self-consistent medium-resolution transmission spectrum \nwith uncertainties from JWST NIRISS data in minutes, even when using a Gaussian Process-based noise model.\n\n![](doc/source/examples/e01/example1.png)\n\n## Documentation\n\nRead the docs at [exoiris.readthedocs.io](https://exoiris.readthedocs.io).\n\n## Key Features\n\n- **Fast modelling of spectroscopic transit time series**: ExoIris uses PyTransit's advanced `TSModel` transit \n model that is specially tailored for fast and efficient modelling of spectroscopic transit (or eclipse) time series.\n- **Flexible handling of limb darkening**: The stellar limb darkening can be modelled freely either by any of the standard \n limb darkening laws (quadratic, power-2, non-linear, etc.), by numerical stellar intensity profiles obtained\n directly from stellar atmosphere models, or by an arbitrary ser-defined radially symmetric function.\n- **Handling of Correlated noise**: The noise model can be chosen between white or time-correlated noise, where the\n time-correlated noise is modelled as a Gaussian process.\n- **Model saving and loading**: Seamless model saving and loading allows one to create a high-resolution analysis starting\n from a saved low-resolution analysis.\n- **Full control of resolution**: ExoIris represents the transmission spectrum as a cubic spline, with complete \n flexibility to set and modify the number and placement of spline knots, allowing variable resolution throughout the \n analysis.\n\n## Details\n\nExoIris uses PyTransit's `TSModel`, a transit model that is specially optimised for transmission spectroscopy and allows\nfor simultaneous modelling of hundreds to thousands of spectroscopic light curves 20-30 times faster than when using \nstandard transit models not explicitly designed for transmission spectroscopy. \n\nA complete posterior solution for a low-resolution transmission spectrum with a data resolution of R=100 \ntakes 3-5 minutes to estimate assuming white noise, or 5-15 minutes if using a Gaussian process-based likelihood\nmodel powered by the celerite2 package. A high-resolution spectrum of the JWST NIRISS WASP-39 b observations \nby [Feinstein et al. (2023)](https://ui.adsabs.harvard.edu/abs/2023Natur.614..670F/abstract) with ~3800\nspectroscopic light curves (as shown above) takes about 1.5 hours to optimise and sample on a three-year-old \nAMD Ryzen 7 5800X with eight cores.\n\n---\n© 2024 Hannu Parviainen\n",
"bugtrack_url": null,
"license": "GPLv3",
"summary": "Easy and robust exoplanet transmission spectroscopy.",
"version": "0.14.1",
"project_urls": {
"homepage": "https://github.com/hpparvi/ExoIris"
},
"split_keywords": [
"astronomy",
" astrophysics",
" exoplanets"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "666d50f74234fc32e7e27e3dc15f447ad837d766c6265fd262578c5728678426",
"md5": "760192d645b730a68537279f5f10074b",
"sha256": "8346d26ba05156c6c86b31c0a656fa1d94108e5e425ce9b1eefd14d1537c8f41"
},
"downloads": -1,
"filename": "ExoIris-0.14.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "760192d645b730a68537279f5f10074b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 52164,
"upload_time": "2024-12-03T12:47:32",
"upload_time_iso_8601": "2024-12-03T12:47:32.869593Z",
"url": "https://files.pythonhosted.org/packages/66/6d/50f74234fc32e7e27e3dc15f447ad837d766c6265fd262578c5728678426/ExoIris-0.14.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1722ce83af3c3ab4eab7ce17dfb7582dc40f19370e3a27690adc27e9d4217189",
"md5": "1fb087cc905584fb23defdcba4d21988",
"sha256": "118a3185a21fd4589a2a563217f4a371f165aefac803903004d239bd59afaaa7"
},
"downloads": -1,
"filename": "exoiris-0.14.1.tar.gz",
"has_sig": false,
"md5_digest": "1fb087cc905584fb23defdcba4d21988",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 27831918,
"upload_time": "2024-12-03T12:47:44",
"upload_time_iso_8601": "2024-12-03T12:47:44.104503Z",
"url": "https://files.pythonhosted.org/packages/17/22/ce83af3c3ab4eab7ce17dfb7582dc40f19370e3a27690adc27e9d4217189/exoiris-0.14.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-03 12:47:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hpparvi",
"github_project": "ExoIris",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "pytransit",
"specs": [
[
">=",
"2.6.11"
]
]
},
{
"name": "ldtk",
"specs": [
[
">=",
"1.8.5"
]
]
},
{
"name": "numpy",
"specs": []
},
{
"name": "scipy",
"specs": []
},
{
"name": "numba",
"specs": []
},
{
"name": "matplotlib",
"specs": []
},
{
"name": "celerite2",
"specs": []
},
{
"name": "pandas",
"specs": []
},
{
"name": "xarray",
"specs": []
},
{
"name": "seaborn",
"specs": []
},
{
"name": "astropy",
"specs": []
},
{
"name": "uncertainties",
"specs": []
}
],
"lcname": "exoiris"
}