-
Notifications
You must be signed in to change notification settings - Fork 765
Description
Thanks for the updates. I only have minor cosmetic changes.
While reviewing, I also realized that your code can solve a problem that has been inherent in the existing code: The
run()method can take the frames=[0, 20, 25, 100, 1001, ...]` kwarg to select any frames instead of start/stop/step and if that's the case, the "linear" approach is incorrect (but that case is not being caught). We should select your new code path for un-even frame separations.I am not asking for this to be resolved in this PR. If you agree that this is a problem and that your code could solve it, could you raise an issue for it so that it's not forgotten.
Originally posted by @orbeckst in #5066 (review)
This issue recognizes that while calculating msd of randomly picked frames (specified by kwarg by user in run), the newly added _conclude_non_linear() should be used instead of the previous _conclude_simple() method which is inaccurate when frames are non linearly placed. In most cases picking frames randomly results in picking frames that are non-linearly spaced so the _conclude_simple() method is not the right way to calculate msd.