Core: generalise determination of intervals in bisection search (Qs2Events)
The issue with the Qs2Events
algorithm was the assumption that there would be exactly one sign change in |k_f| - |k_i|
over the entire frame range. I fixed the issue by dividing the range into n_intervals
intervals, provisionally set to 4 since I found that increasing it to 8 made no difference. However, this is a dangerous assumption to make, so this should be revisited.
See also #223 (closed), #204 (closed), !260 (merged)