BHPTNRSurrogate
PythonSurrogate waveform models trained on perturbation theory, calibrated to NR
Waveforms & EMRI
Fast, fully relativistic extreme mass-ratio inspiral waveforms on CPUs and GPUs.
pip install fastemriwaveforms
FastEMRIWaveforms (FEW) generates fully relativistic extreme mass-ratio inspiral (EMRI) waveforms quickly enough for LISA data analysis — seconds on a CPU, and faster still on a GPU. The framework is modular: a trajectory module evolves the inspiral, an amplitude module supplies the mode amplitudes, and a summation module assembles the waveform. Modules can be swapped to trade accuracy against speed.
The CPU build installs from PyPI:
pip install fastemriwaveforms
GPU acceleration requires a build matched to your CUDA toolkit; see the full documentation for the right package and the supported model names.
Generate a waveform from a high-level model. Parameter names and conventions follow the FEW documentation:
from few.waveform import GenerateEMRIWaveform
wave = GenerateEMRIWaveform("FastSchwarzschildEccentricFlux")
h = wave(
M=1e6, # primary mass (solar masses)
mu=1e1, # secondary mass (solar masses)
a=0.0, # primary spin
p0=12.0, # initial semi-latus rectum
e0=0.3, # initial eccentricity
x0=1.0, # cosine of the inclination
dist=1.0, # luminosity distance (Gpc)
dt=10.0, # time step (s)
T=1.0, # observation time (years)
)
h is the complex strain time series; take its real and imaginary parts for the
two polarisations.
The repository ships tutorial notebooks covering trajectory generation, individual modules, and GPU usage. Start from the documentation.
If you use FastEMRIWaveforms in your research, please acknowledge the Toolkit:
This work makes use of the Black Hole Perturbation Toolkit.
FastEMRIWaveforms also requests the following citations:
See how to cite for the BibTeX entry and guidance.