In order for LIGO to detect gravitational waves and do astrophysics, it is crucial to have an accurate model of the gravitational waves. Numerical relativity (NR) is the only method that accurately models the merger part of a binary black hole signal. However, these simulations are prohibitively expensive for most direct applications.

Therefore, several approximate waveform models have been developed over the years. The two main approaches have been dubbed "Phenomenological" and "Effective-one-body" waveforms. These models typically make some assumptions about the phenomenology of the waveforms, based on good physical motivations. Then, any remaining free parameters are set by fitting against NR simulations. These models are also quite fast and can be directly used for GW applications.

Surrogate modeling is a data driven approach to waveform modeling that has come about in the last few years. Here, we do not make any assumptions about the underlying phenomenology but rather use the NR waveforms themselves to implicitly reconstruct the phenomenology. This is achieved by first building an accurate basis using the NR waveforms themselves and then using some fancy interpolation methods to construct a waveform model.

This website shows a video demonstration of the surrogate modelling procedure. We construct a surrogate model for nonspinning binary black holes. The total mass scales out of the system and the only free parameter is the mass ratio (q). We use the SEOBNRv4 waveform model for this demonstration, but the same can be done with NR waveforms. These movies can be found here. Note that this is a very high-level description of the process, where I skip most of the details. Refer to 1308.3565 for the technical details. Some recent surrogate models are described in 1812.07865 and 1905.09300.

Surrogate modeling demo

Let's break it down

Reduced basis

To build a surrogate model, we begin with a dataset of waveforms. In this case, this is nonspinning waveforms with q between 1 and 10. The first step is to construct an accurate basis that represents our space of waveforms. We do this using the very waveforms we are trying to model. The basis functions are picked in an iterative manner where in each step the waveform that has the highest projection error onto the current basis, gets added to the basis for the next iteration. We proceed until the projection error goes below a chosen threshold. In this manner we pick out the most representative waveforms to form our basis, and reduce the dataset in the q direction to a small set of basis functions.

In the movie below, we show what the selected waveforms might look like. We first show the real part of the (2,2) mode, which is highly oscillatory. It is much easier to build a model for a slowly varying function, therefore we instead work with the amplitude and phase of the (2,2) mode. At the end of the movie we show the amplitudes of the selected waveforms, which are much simpler. In this example, we will construct a surrogate model for the amplitude.

Empirical interpolation

Having constructed our basis, the next step is to reduce the data in the time direction. This is done using the empirical interpolation method, which iteratively picks out the time values that are most representative. Only these time values, called the empirical time nodes, are used in constructing an empirical interpolant in time. This is shown in the movie below.

Parametric fits

At this point we have condensed our dataset in both q and time directions. Given our basis functions, all we need to evaluate the waveform is the basis coefficients so that we can project the basis functions. Thanks to the empirical interpolant method, these coefficients only need to be evaluated at the empirical time nodes. However, what if we want to evaluate the waveform at a random point in the parameter space where we don't have a basis function?

To do this, we first construct fits across parameter space, at each of the empirical time nodes, as demonstrated below.


Finally, to evaluate the waveform at a random parameter space point: We first evaluate the fits at that point. This gives usthe basis coefficients, which we use to project the basis functions to get the amplitude evaluation.

Downloading these movies

You can download these movies by right-clicking on them. On Chrome choose "Save Video As..", and similar for other browsers. You can also get them directly from my Github repo as follows. Don't forget to credit me.

git clone
cd SurrogateMovie/docs/movies

List of visualizations

Each of the above file names, except full_movie.mp4 also has a companion .png file that has the first frame of the video. Also, waveamp.png shows the last frame of waves.mp4.


These movies were made by me, Vijay Varma. Please credit me, and cite this website, if you use these visualizations in your work, presentations or outreach.