GWSpace is a multi-mission science data simulator for space-based gravitational wave detection. It is a Python package that can compute correlated gravitational wave signals that could be detected by TianQin, LISA and Taiji simultaneously in a possible joint detection scenario, either in time domain (GCB, EMRI and Burst) or in frequency domain (BHB and SGWB). For more details, see the GWSpace documentation, arXiv:2309.15020, or the published version in Classical and Quantum Gravity, 42, 165005 (2025) (DOI:10.1088/1361-6382/adf409).
GWSpace requires a C compiler and GSL to build its extension modules.
The environment file installs GSL with Conda and installs GWSpace with all documented optional features except the separately maintained EMRI and ringdown backends:
git clone https://github.com/TianQinSYSU/GWSpace
cd GWSpace
conda env create --file environment.yml
conda activate gwspaceInstall GSL first, for example with brew install gsl on macOS or sudo apt-get install libgsl-dev on Ubuntu. Then run:
git clone https://github.com/TianQinSYSU/GWSpace
cd GWSpace
python -m pip install .The build locates GSL through GSL_PREFIX, gsl-config, the active Conda environment, or /usr, in that order. To use a non-standard installation:
GSL_PREFIX=/path/to/gsl python -m pip install .The same environment variable is used while building the eccentric-waveform extra. Set it explicitly when Python and GSL come from different environment managers.
Optional Python dependencies are grouped by feature:
python -m pip install ".[eccentric]" # pyEccentricFD v0.2.0
python -m pip install ".[sgwb]" # stochastic-background support
python -m pip install ".[emri]" # EMRI support; requires Python 3.12+
python -m pip install ".[ringdown]" # ringdown waveform support
# Several groups can be installed together, for example:
python -m pip install ".[eccentric,emri,ringdown]"As seen in the figure above, different gravitational-wave sources require different waveforms. The following waveforms are included in GWSpace unless otherwise noted:
-
EMRI:
FastEMRIWaveforms(few)- GWSpace supports FastEMRIWaveforms 2.x. Install it with
python -m pip install ".[emri]"using Python 3.12 or newer.
- GWSpace supports FastEMRIWaveforms 2.x. Install it with
-
Galactic compact binary (GCB):
FastGBandGCBWaveformFastGB:- A modified version of GCB waveform generation code
Galaxyin the Mock LISA Data Challenge (MLDC). - It uses a fast/slow decomposition of the waveform to reduce the computational cost, see arXiv:0704.1808 for more details.
- A modified version of GCB waveform generation code
- GCB time-domain waveform generation using Python: See class
GCBWaveform.
-
Binary black hole (BBH):
IMRPhenomDpyIMRPhenomD:IMRPhenomDwaveform in C code developed by Michael Puerrer.PyIMRPhenomD:IMRPhenomDwaveform but in a pure python code, compiled with the numba just in time compiler.- If you prefer this one, you need to install it manually.
-
Stellar-mass BBH (with eccentricity):
EccentricFD- This is a modified version of
EccentricFDwaveform, which is specially for space-detector responses.- Original codes see files in LALSuite
- GWSpace uses the separately maintained pyEccentricFD package.
- This is a modified version of
-
Stochastic gravitational wave background (SGWB):
- With the help of
healpyto generate a SGWB signal of power law type.
- With the help of
