Metadata-Version: 2.4
Name: sgnax
Version: 0.1.0
Summary: Multi-channel auxiliary burst search pipeline - a rewrite of snax using SGN framework
Project-URL: Homepage, https://git.ligo.org/snax/sgnax
Project-URL: Documentation, https://snax.docs.ligo.org/sgnax
Project-URL: Repository, https://git.ligo.org/snax/sgnax.git
Project-URL: Issues, https://git.ligo.org/snax/sgnax/-/issues
Author-email: Olivia Godwin <olivia.godwin@ligo.org>, Zach Yarbrough <zach.yarbrough@ligo.org>
Maintainer-email: Olivia Godwin <olivia.godwin@ligo.org>, Zach Yarbrough <zach.yarbrough@ligo.org>
License-Expression: GPL-3.0-or-later
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Astronomy
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.11
Requires-Dist: gwpy
Requires-Dist: h5py
Requires-Dist: igwn-ligolw
Requires-Dist: igwn-segments
Requires-Dist: lalsuite>=7.26
Requires-Dist: ligo-scald
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: psutil
Requires-Dist: scipy
Requires-Dist: sgn
Requires-Dist: sgn-arrakis
Requires-Dist: sgn-ligo
Requires-Dist: sgn-ts
Requires-Dist: torch
Provides-Extra: dev
Requires-Dist: graphviz; extra == 'dev'
Requires-Dist: markdown-callouts>=0.2; extra == 'dev'
Requires-Dist: markdown-exec>=0.5; extra == 'dev'
Requires-Dist: matplotlib; extra == 'dev'
Requires-Dist: mkdocs-coverage>=0.2; extra == 'dev'
Requires-Dist: mkdocs-gen-files>=0.3; extra == 'dev'
Requires-Dist: mkdocs-literate-nav>=0.4; extra == 'dev'
Requires-Dist: mkdocs-material-igwn; extra == 'dev'
Requires-Dist: mkdocs-section-index>=0.3; extra == 'dev'
Requires-Dist: mkdocs>=1.3; extra == 'dev'
Requires-Dist: mkdocstrings[python]; extra == 'dev'
Requires-Dist: mypy; extra == 'dev'
Requires-Dist: mypy-extensions; extra == 'dev'
Requires-Dist: pip; extra == 'dev'
Requires-Dist: pymdown-extensions; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: pytest-cov; extra == 'dev'
Requires-Dist: pytest-markdown-docs; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Provides-Extra: docs
Requires-Dist: markdown-callouts>=0.2; extra == 'docs'
Requires-Dist: markdown-exec>=0.5; extra == 'docs'
Requires-Dist: mkdocs-coverage>=0.2; extra == 'docs'
Requires-Dist: mkdocs-gen-files>=0.3; extra == 'docs'
Requires-Dist: mkdocs-literate-nav>=0.4; extra == 'docs'
Requires-Dist: mkdocs-material-igwn; extra == 'docs'
Requires-Dist: mkdocs-section-index>=0.3; extra == 'docs'
Requires-Dist: mkdocs>=1.3; extra == 'docs'
Requires-Dist: mkdocstrings[python]; extra == 'docs'
Requires-Dist: pymdown-extensions; extra == 'docs'
Provides-Extra: lint
Requires-Dist: mypy; extra == 'lint'
Requires-Dist: mypy-extensions; extra == 'lint'
Requires-Dist: pip; extra == 'lint'
Requires-Dist: ruff; extra == 'lint'
Provides-Extra: test
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pytest-markdown-docs; extra == 'test'
Provides-Extra: viz
Requires-Dist: graphviz; extra == 'viz'
Requires-Dist: matplotlib; extra == 'viz'
Description-Content-Type: text/markdown

# SGNAX

SGNAX is a multi-channel auxiliary burst search pipeline - a rewrite of SNAX using the SGN framework for LIGO gravitational wave detection.

## Overview

SGNAX performs matched-filter analysis on auxiliary channels to detect burst signals. It is built on the SGN (Stream Graph Navigator) family of libraries:

- [`sgn`](https://docs.ligo.org/greg/sgn/): Base streaming graph framework
- [`sgn-ts`](https://docs.ligo.org/greg/sgn-ts/): TimeSeries utilities
- [`sgn-ligo`](https://docs.ligo.org/greg/sgn-ligo/): LIGO-specific extensions

## Features

- Multi-rate sine-Gaussian template bank generation
- Flexible data source support (frames, devshm, arrakis, pre-whitened)
- GPU-accelerated correlation via PyTorch
- Windowed trigger aggregation across rates
- HDF5 output format

## Installation

```bash
pip install sgnax
```

For development:

```bash
pip install -e ".[dev]"
```

## Usage

Run the extraction pipeline:

```bash
sgnax-extract --help
```

## Development

Run the full test suite:

```bash
make all
```

Individual commands:

```bash
make test        # Run tests
make lint        # Run linter
make format      # Format code
make type-check  # Run type checker
make docs        # Build documentation
```

## License

GPL-3.0-or-later. See the [LICENSE](LICENSE) file for details.
