Skip to content

Fix 32 mode error in SingleMode XPHM function

Description

In PhenomXPHM, if the 22 mode was not in the mode array option (manually turned off) then, the mode mixing function for the 32 mode computed the 22 mode with the AS final spin instead of with the precessing final spin.

The default behaviour of XPHM and XHM are not modified, as can be seen in the regression tests below. However, the unit test for XPHM needed to be updated because there is a part where only the 32 mode is present in the mode array.

The fix is just using IMRPhenomXASGenerateFD instead of XLALSimIMRPhenomXASFrequencySequence which internally calls IMRPhenomXASGenerateFD.

This fixes the issue of discontinuities in the coprecessing 32 mode obtained with the function XLALSimIMRPhenomXPHMOneMode flagged by @jonathan.thompson.

API Changes and Justification

Backwards Compatible Changes

  • This change does not modify any class/function/struct/type definitions in a public C header file or any Python class/function definitions
  • This change adds new classes/functions/structs/types to a public C header file or Python module

Backwards Incompatible Changes

  • This change modifies an existing class/function/struct/type definition in a public C header file or Python module
  • This change removes an existing class/function/struct/type from a public C header file or Python module

If any of the Backwards Incompatible check boxes are ticked please provide a justification why this change is necessary and why it needs to be done in a backwards incompatible way.

Review Status

This has been tested by @cecilio.garcia-quiros. Tagging @jonathan.thompson as the reviewer of the multibanding part and @maria.haney as the review chair of IMRPhenomX.

corner

corner

Merge request reports