The iraf-free spectral data reduction toolkit.
Project description
Automated SpectroPhotometric Image REDuction (ASPIRED) -- A Python-based spectral data reduction toolkit
We aim to provide a suite of publicly available spectral data reduction software to facilitate rapid scientific outcomes from time-domain observations. For time resolved observations, an automated pipeline frees astronomers from performance of the routine data analysis tasks to concentrate on interpretation, planning future observations and communication with international collaborators. Part of the OPTICON project coordinates the operation of a network of largely self-funded European robotic and conventional telescopes, coordinating common science goals and providing the tools to deliver science-ready photometric and spectroscopic data. As part of this activity is SPRAT, a compact, reliable, low-cost and high-throughput spectrograph and appropriate for deployment on a wide range of 1-4m class telescopes. Installed on the Liverpool Telescope since 2014, the deployable slit and grating mechanism and optical fibre based calibration system make the instrument self-contained.
ASPIRED is written for use with python 3.7, 3.8, 3.9, 3.10 and 3.11, and is intentionally developed as a self-consistent reduction pipeline with its own diagnostics and error handling. The pipeline should be able to reduce 2D spectral data from raw image to wavelength and flux calibrated 1D spectrum automatically without any user input (quicklook quality). However, the real goal is to provide a set of easily configurable routines to build pipelines for long slit spectrographs on different telescopes (science quality). We use SPRAT as a test case for this development, but our aim is to support a much wider range of instruments. By delivering near real-time data reduction we will facilitate automated or interactive decision making, allowing "on-the-fly" modification of observing strategies and rapid triggering of other facilities.
Further information can be referred to this AJ article.
Early stage development efforts can be referred to this ASPC article and this arXiv article. This is in concurrent development with the automated wavelength calibration software RASCAL, further information can be referred to this ASPC article and it will appear in the same volume of ASPCS.
Example notebooks and scripts can be found at aspired-example. More examples can be found at the github repository of the journal article here, e.g.:
Use cases
We are to cover as many use cases as possible. If you would like to apply some reduction techniques that we have overseen, please use the issue tracker to request new features. The following is the list of scenarios that we can handle:
Spectrum - full reduction
- Dataset with science and standard field-flattened images and the respective arc image.
Spectrum - ADU spectrum extraction only (No flux calibration)
- Dataset with science field-flattened image and the arc image only.
Spectrum - wavelength calibration only (Pre wavelength-calibrated)
- Dataset with science and standard field-flattened images only.
Spectrum - other cases for full or partial reduction
- User supplied trace(s) for light spectrum extraction (only to extract ADU/s of the spectra).
- User supplied trace(s) for arc extraction (only to get wavelength calibration polynomial).
- User supplied wavelength calibration polynomial coefficients.
- User supplied line list.
- User supplied pixel-to-wavelength mapping (not fitted).
- User supplied sensitivity curve.
- Flux calibration for user supplied wavelength calibrated science and standard 1D spectra.
- Apply atmospheric extinction correction.
- Apply basic telluric absorption correction.
Output
- Save diagnostic plots in these formats.
- Save data in FITS (with header information) or ascii (csv).
See the examples of these use cases at aspired-example.
Dependencies
- python >= 3.8 (It should work on 3.6 and 3.7 if you can sort out the astropy (>=5.0) requirement of >=3.8)
- numpy >= 1.21
- scipy >= 1.7
- astropy >= 4.3
- astroscrappy >= 1.1
- ccdproc
- plotly >= 5.0
- rascal >= 0.3.10, < 4.0
- spectresc >= 1.0.2
- statsmodels >= 0.13
Installation
Instructions can be found here.
Reporting issues/feature requests
Please use the issue tracker to report any issues or support questions.
Getting started
The quickstart guide will show you how to reduce the example dataset.
Contributing Code/Documentation
If you are interested in contributing code to the project, thank you! For those unfamiliar with the process of contributing to an open-source project, you may want to read through Github’s own short informational section on how to submit a contribution or send me a message.
Style -- black. See the .pre-commit-config.yaml for the other requirements.
Funding bodies
- European Union’s Horizon 2020 research and innovation programme (grant agreement No. 730890) (January 2019 - March 2020)
- Polish NCN grant Daina No. 2017/27/L/ST9/03221 (May - June 2020)
- European Research Council Starting Grant (grant agreement No. 852097) (Sept 2020 - Current)
Citation
If you make use of the ASPIRED toolkit, we would appreciate if you can refernce the two articles and two pieces of software listed below:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file aspired-0.5.1.tar.gz
.
File metadata
- Download URL: aspired-0.5.1.tar.gz
- Upload date:
- Size: 12.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c014097bc871cbf6d06b75ddf28bc03012654be46a7fb404230f751c4c8397c |
|
MD5 | b388387a68a33c1b44a5e18a6623bf72 |
|
BLAKE2b-256 | e3b5aa17f58d1eeac914e06cb38303aae2046cccbb68d111b119bf5698381483 |
File details
Details for the file aspired-0.5.1-py3-none-any.whl
.
File metadata
- Download URL: aspired-0.5.1-py3-none-any.whl
- Upload date:
- Size: 12.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36502da058a3702ee44bd077e8c472cb33b13705e4c43fe6fe264b32797d9557 |
|
MD5 | 5536e1e4b944b7a5b47f3e9c21b5e341 |
|
BLAKE2b-256 | 53f8d3c646b6c3765655b319a2e765bae6f302f9a785d2845e92966610f1b9c5 |