Skip to content

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:

  1. Waveforms — Produce \(h_{+}\), \(h_{\times}\) via LAL (default) or PyCBC (optional); registry for custom models.
  2. Detector projection — Map polarizations to each IFO strain using antenna patterns and delays.
  3. Strain injection — Add simulated strain into a longer GWpy segment (e.g. zeros or noise).
  4. 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

See also