Skip to content

Orbital velocity check added to tilts_at_infinity: Hybrid Spin Evolution

superseded by !1779 (merged)

Description

For boundary cases (high masses, large effective spins), the SpinTaylorPNevolveorbit function used by the hybrid spin evolution in a series of steps fails to evolve to the desired lower orbital velocity, and instead returns the initial array of input values (when starting from certain reference frequencies). This is presumably due to a stopping condition being triggered in PNevolveorbit. I have added a check to see if the evolution proceeds at each step, and if not, either raise a RuntimeError or return the usual output dictionary with None/np.nan values according to user preference. The evolution_error_handling function in tilts_at_infinity_utils.py has been updated to include this error handling in hybrid evolution.

In an independent minor update, I have updated the rtol value in test_prec_avg_evolve.py, line 106, as suggested and discussed in this issue.

API Changes and Justification

Backwards Compatible Changes

  • This change introduces no API changes
  • This change adds new API calls

Backwards Incompatible Changes

  • This change modifies an existing API
  • This change removes an existing API

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

The Hybrid evolution code has been reviewed here.

Reviewers: Marta Colleoni, Sylvain Marsat

This particular check has been shared with the reviewers but not formally reviewed.

Edited by Sumeet Kulkarni

Merge request reports