sgnax 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. sgnax-0.1.0/.gitignore +21 -0
  2. sgnax-0.1.0/.gitlab-ci.yml +59 -0
  3. sgnax-0.1.0/CHANGELOG.md +17 -0
  4. sgnax-0.1.0/LICENSE +674 -0
  5. sgnax-0.1.0/Makefile +42 -0
  6. sgnax-0.1.0/PKG-INFO +140 -0
  7. sgnax-0.1.0/README.md +61 -0
  8. sgnax-0.1.0/conftest.py +17 -0
  9. sgnax-0.1.0/docs/gen_ref_nav.py +57 -0
  10. sgnax-0.1.0/docs/index.md +55 -0
  11. sgnax-0.1.0/docs/user/channel-config.md +79 -0
  12. sgnax-0.1.0/docs/user/data-sources.md +68 -0
  13. sgnax-0.1.0/docs/user/getting-started.md +64 -0
  14. sgnax-0.1.0/docs/user/template-banks.md +61 -0
  15. sgnax-0.1.0/docs/user/triggers.md +93 -0
  16. sgnax-0.1.0/examples/channels.toml +27 -0
  17. sgnax-0.1.0/mkdocs.yml +65 -0
  18. sgnax-0.1.0/pyproject.toml +222 -0
  19. sgnax-0.1.0/src/sgnax/__init__.py +6 -0
  20. sgnax-0.1.0/src/sgnax/_version.py +24 -0
  21. sgnax-0.1.0/src/sgnax/bin/__init__.py +1 -0
  22. sgnax-0.1.0/src/sgnax/bin/extract.py +645 -0
  23. sgnax-0.1.0/src/sgnax/bin/qtransform.py +305 -0
  24. sgnax-0.1.0/src/sgnax/py.typed +0 -0
  25. sgnax-0.1.0/src/sgnax/sinks/__init__.py +0 -0
  26. sgnax-0.1.0/src/sgnax/sinks/event_sink.py +144 -0
  27. sgnax-0.1.0/src/sgnax/sinks/print_event_sink.py +29 -0
  28. sgnax-0.1.0/src/sgnax/sources/__init__.py +0 -0
  29. sgnax-0.1.0/src/sgnax/sources/channel_config.py +253 -0
  30. sgnax-0.1.0/src/sgnax/sources/datasource.py +548 -0
  31. sgnax-0.1.0/src/sgnax/transforms/__init__.py +11 -0
  32. sgnax-0.1.0/src/sgnax/transforms/qtransform.py +526 -0
  33. sgnax-0.1.0/src/sgnax/transforms/trigger.py +171 -0
  34. sgnax-0.1.0/src/sgnax/transforms/trigger_aggregator.py +151 -0
  35. sgnax-0.1.0/src/sgnax/transforms/trigger_clusterer.py +140 -0
  36. sgnax-0.1.0/src/sgnax/waveforms/__init__.py +0 -0
  37. sgnax-0.1.0/src/sgnax/waveforms/waveform_generator.py +383 -0
  38. sgnax-0.1.0/tests/__init__.py +1 -0
  39. sgnax-0.1.0/tests/test_channel_config.py +257 -0
  40. sgnax-0.1.0/tests/test_correlate_snr.py +304 -0
  41. sgnax-0.1.0/tests/test_datasource.py +432 -0
  42. sgnax-0.1.0/tests/test_event_sink.py +189 -0
  43. sgnax-0.1.0/tests/test_extract.py +560 -0
  44. sgnax-0.1.0/tests/test_print_event_sink.py +24 -0
  45. sgnax-0.1.0/tests/test_qtransform.py +720 -0
  46. sgnax-0.1.0/tests/test_qtransform_cli.py +416 -0
  47. sgnax-0.1.0/tests/test_trigger.py +183 -0
  48. sgnax-0.1.0/tests/test_trigger_aggregator.py +190 -0
  49. sgnax-0.1.0/tests/test_trigger_clusterer.py +275 -0
  50. sgnax-0.1.0/tests/test_waveform_generator.py +207 -0
  51. sgnax-0.1.0/tests/test_whiten_variance.py +658 -0
  52. sgnax-0.1.0/tests/validate_waveforms.py +321 -0
sgnax-0.1.0/.gitignore ADDED
@@ -0,0 +1,21 @@
1
+ *.egg-info
2
+ build/
3
+ dist/
4
+ site/
5
+ __pycache__
6
+ _version.py
7
+ .coverage
8
+ .vscode/
9
+ .idea/
10
+ *.patch
11
+ *.pyc
12
+ *.pyo
13
+ .DS_Store
14
+ .pytest_cache/
15
+ .mypy_cache/
16
+ .ruff_cache/
17
+ **/.claude/settings.local.json
18
+ docs/changelog.md
19
+ htmlcov/
20
+ src/sgnax/bin/old/
21
+ src/sgnax/transforms/old/
@@ -0,0 +1,59 @@
1
+ include:
2
+ # -- python
3
+ - component: git.ligo.org/computing/gitlab/components/python/sdist@1
4
+ - component: git.ligo.org/computing/gitlab/components/python/wheel@1
5
+ - component: git.ligo.org/computing/gitlab/components/python/code-quality@1
6
+ inputs:
7
+ analyzer: "ruff"
8
+ requirements: "-r requirements-lint.txt"
9
+ - component: git.ligo.org/computing/gitlab/components/python/dependency-scanning@1
10
+ - component: git.ligo.org/computing/gitlab/components/python/type-checking@1
11
+ inputs:
12
+ project_dir: "src"
13
+ - component: git.ligo.org/computing/gitlab/components/python/test@1
14
+ inputs:
15
+ install_extra: test
16
+ python_versions:
17
+ - "3.11"
18
+ - "3.12"
19
+ # -- docs
20
+ - component: git.ligo.org/computing/gitlab/components/mkdocs/build@1
21
+ inputs:
22
+ requirements: "-r requirements-docs.txt"
23
+ - component: git.ligo.org/computing/gitlab/components/mkdocs/pages@1
24
+ inputs:
25
+ pages_when: "default"
26
+
27
+ # -- customizations
28
+ ruff:
29
+ needs:
30
+ - requirements
31
+
32
+ mkdocs:
33
+ needs:
34
+ - requirements
35
+
36
+ # -- requirements
37
+ requirements:
38
+ stage: build
39
+ image: python:3.12
40
+ script:
41
+ - python -m pip install pipx
42
+ - pipx ensurepath
43
+ - source ~/.bashrc
44
+ - pipx install hatch
45
+ - hatch dep show requirements --feature docs > requirements-docs.txt
46
+ - hatch dep show requirements --feature lint > requirements-lint.txt
47
+ artifacts:
48
+ paths:
49
+ - requirements-*.txt
50
+
51
+ #review:
52
+ # stage: test
53
+ # image: python:3.12
54
+ # script:
55
+ # - pip install glreview
56
+ # - glreview ci --report REVIEW_COVERAGE.md
57
+ # artifacts:
58
+ # paths:
59
+ # - REVIEW_COVERAGE.md
@@ -0,0 +1,17 @@
1
+ # Changelog
2
+
3
+ ## [Unreleased]
4
+
5
+ ### Added
6
+ - `--channel-config` CLI option for `sgnax-extract`, accepting a TOML file that
7
+ specifies per-channel `fsamp`, `flow`, `fhigh`, `qhigh`, and optional rate
8
+ overrides alongside run-wide defaults. Mirrors the per-channel behavior of
9
+ the original snax channel list.
10
+ - `DataSourceInfo.channel_configs` and `DataSourceInfo.input_sample_rate_for(channel)`
11
+ so the datasource graph (in particular the whitener chain and segment gate)
12
+ consumes each channel's own sample rate.
13
+ - Template-bank deduplication: channels that resolve to identical search
14
+ parameters share a single `SineGaussianBank` across a run.
15
+
16
+ ### Changed
17
+ - Bumped minimum Python version from 3.10 to 3.11 to use stdlib `tomllib`.