Skip to content

Implement phase-marginalization

Soichiro Morisaki requested to merge (removed):phase_marg into master

This addresses #18 (closed). The main changes are

  • MonteCarloMarginalizeCode/Code/bin/util_InitMargTable: implement distance integrator for phase marginalization based on the algorithm described by dist_phi_marg.pdf at https://dcc.ligo.org/LIGO-T2100485. Implementing phase marginalization is not a big change, as it just amounts to multiplying the exponentially scaled Bessel function by distance prior.
  • MonteCarloMarginalizeCode/Code/bin/integrate_likelihood_extrinsic_batchmode: do not sample phase when phase marginalization is used.
  • MonteCarloMarginalizeCode/Code/RIFT/likelihood/factored_likelihood.py: add phase marginalization option to likelihood. The (2, -2) or (2, 2) term for kappa_sq needs to be replaced by its complex conjugate to properly calculate the input kappa_sq to likelihood, because of their different dependence on \phi_{\mathrm{orb}} (i.e. Y_{2,2} \propto \exp(2 i \phi_{\mathrm{orb}}) and Y_{2,-2} \propto \exp(-2 i \phi_{\mathrm{orb}})).

It was confirmed that this produces the same evidence value with that from the master version for a BNS injection. Below is the evolution of n_{\mathrm{eff}} with/without phase marginalization, which shows \sim 10 \times speedup.
neff_evol

Edited by Soichiro Morisaki

Merge request reports