A data reduction pipeline for echelle spectrographs (HARPS, UVES, XSHOOTER, CRIRES+, JWST/NIRISS, and more).
Based on the REDUCE package. See the papers:
- Piskunov & Valenti (2001) doi:10.1051/0004-6361:20020175
- Piskunov, Wehrhahn & Marquart (2021) doi:10.1051/0004-6361/202038293
# Using uv (recommended)
uv add pyreduce-astro
# Or pip
pip install pyreduce-astroFor development:
git clone https://github.com/ivh/PyReduce
cd PyReduce
uv sync# Download sample data
uv run reduce download UVES
# Run reduction
uv run reduce run UVES HD132205 --steps bias,flat,orders,science
# Or run individual steps
uv run reduce bias UVES HD132205
uv run reduce flat UVES HD132205Or use the Python API:
from pyreduce.pipeline import Pipeline
Pipeline.from_instrument(
instrument="UVES",
target="HD132205",
night="2010-04-01",
arm="middle",
).run()Full documentation at ReadTheDocs.
PyReduce creates .ech files (standard FITS with binary table extension). Headers include original keywords plus PyReduce-specific ones prefixed with e_.