Skip to content

Statement of need

Next-generation observatories such as the Einstein Telescope are expected to observe of order 10⁵ compact-binary coalescences per year, so mock data challenges must scale from a handful of injections to full catalogues across a detector network. Waveform physics is already well served by mature libraries (LALSuite, PyCBC, and the JAX-based ripple), but each exposes a different interface and none provides a single, batched assembly path from source parameters to multi-detector strain. gwmock-signal fills that gap: it wraps these generators behind one stable backend boundary (GWSimulator.simulate(...) -> DetectorStrainStack), so pipelines can switch waveform backends without code changes, and it adds a GPU-batched path that assembles many events onto a shared frequency grid for catalogue-scale runs. It is the signal layer of the gwmock mock-data-challenge ecosystem and can be used either standalone or through the gwmock orchestrator.