User guide¶
gwmock-signal provides small, composable building blocks for time-domain GW signal simulation in Python, aligned with LALSimulation / optional PyCBC, GWpy, and typical LIGO/Virgo/KAGRA analysis habits. The parent gwmock package (separate repo) is intended to orchestrate full mock-data challenges; this library focuses on the physics-adjacent primitives.
Typical pipeline¶
flowchart LR
W[Waveforms] --> P[Projection]
P --> I[Injection]
I --> M[Multichannel]
User guide → Command-line interface documents the gwmock-signal
console script (inject cbc, logging). Use it when you want a shell-first
workflow; use the Python API when you are already inside a notebook or pipeline.
Under User guide → Examples in the sidebar:
- Waveforms — Produce \(h_{+}\), \(h_{\times}\) via LAL (default) or PyCBC (optional); registry for custom models.
- Detector projection — Map polarizations to each IFO strain using antenna patterns and delays.
- Strain injection — Add simulated strain into a longer GWpy segment (e.g. zeros or noise).
- Multichannel strains — Stack per-detector series in a fixed order for array-oriented code.
For cross-package extensibility, see Custom backends.
That page documents the stable
GWSimulator.simulate(...) -> DetectorStrainStack contract used by downstream
packages.
Example pages are narrative + copy-paste snippets. Authoritative API details (signatures, types, exceptions) are only in API (auto-generated from docstrings):
| Topic | Examples (this site) | Reference (signatures & types) |
|---|---|---|
| Waveforms | Waveforms | Waveform API |
| Projection | Detector projection | Projection API |
| Injection | Strain injection | Injection API |
| Multichannel | Multichannel strains | Multichannel API |
| CBC pipeline (Python) | (use strains + injection pages, or the CLI) | Pipeline API, Simulator API |
| Custom source backends | Custom backends | Simulator API, Registry API |
| gwmock-pop backends | README (resolve_simulator_backend example) |
Registry API |
| Detector networks (presets / files) | Command-line interface (--network) |
Network API |
| Shell / Typer CLI | Command-line interface | (no generated API page) |
Prerequisites¶
- Install the package (see Installation).
- For a minimal environment check, see Quick Start.
See also¶
- API overview — all reference sections
- Documentation home
- Contributing