Skip to content

Conversation

@acorreia61201
Copy link
Contributor

Standard information about the request

This PR adds a new model that allows for phase marginalization in gated gaussian noise PE runs. This is a new feature that affects parameter estimation. Changes should be purely additive; no general current functionality should be affected unless the new model is explicitly called.

Motivation

Sampling the overall phase of a waveform can greatly negatively impact convergence during PE. Specifically, likelihood calculations can be very sensitive to small changes in phase. There are existing models (i.e. MarginalizedPhase) that circumvent this by completely marginalizing over the phase analytically. However, the assumptions behind that model break down when imposing a gated model.

This PR adds a model that numerically marginalized over an overall phase term while also applying a gate. Marginalization is conducted using a Riemann sum, similar to the GatedGaussianMargPol model. Unlike the marginalized polarization model, which splits the template into plus and cross polarizations, this new model splits the template into terms proportional to the cosine and sine of the overall phase.

Specifically, if the template h contains an overall phase term phi, the model assumes h = h_c * cos(phi) + h_s * sin(phi). Then, to calculate the likelihood, the model:

  1. generates h_c and h_s as well as the gated counterparts,
  2. calculates the terms of the inner product <d - h, d - h> in terms of h_c and h_s without the explicit phase dependence,
  3. evaluates the full inner products across a grid of phases in [0, 2pi] (i.e. multiplies the above terms by cos(phi) and sin(phi) as necessary), and
  4. takes the Riemann sum over the phases.

Contents

A new model, GatedGaussianMargPhase, has been added to inference/models, which conducts the procedure above to calculate the likelihood. This class necessitates a new waveform generator, FDomainDetFrameTwoPhaseGenerator, to generate h_c and h_s.

Testing performed

Below are the PE results of a zero-noise ringdown injection with lmns = 221 331. The first plot uses GatedGaussianNoise and samples over phi220 and phi330, and the second uses GatedGaussianMargPhase, marginalizing over phi220 and sampling over phi330. Red lines indicate the injected parameters. Both runs used the TdQNMfromFinalMassSpin approximant and apply a 1 second gate ending at the injected tc. Using 256 cores with MPI, the GGN run finished with ~3 million likelihood calls in ~1 hr 20 min, while the marginalized run finished with ~400 thousand likelihood calls in ~20 minutes.

qnm_ggn qnm_marg
  • [ x ] The author of this pull request confirms they will adhere to the code of conduct

…ure marg phase class to inherit from BaseGatedGaussian
…n new class to models init, waveform modes models to generator
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant