Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In
np.interp
it is presumed thatxs
is sorted. This PR ensures that thexs
is sorted before apply interpolation.This solves the randomness issue in XENONnT/fuse#230. Here is the explanation:
straxen.URLconfig
,'&sort=xxxx'
is used, then in the MongoDB interface of rframe, it sends$sort: xxxx
to MongoDB. However, ifxxxx
is not sufficient enough to determine the order due to duplicated values, the output of MongoDB will be random, meaning thatxxxx
is sorted but within each value ofxxxx
it's random. See the sort consistency section in the document.'&sort=xxxx'
, thetime
can be randomly unsorted. But this conflicts with the presumption ofnp.interp
, which finally causes randomness of the interpolated output.An MWE is
Before the PR it outputs:
After the PR it outputs the same values: