MDAnalysis / mdanalysis

MDAnalysis is a Python library to analyze molecular dynamics simulations.
https://mdanalysis.org
Other
1.32k stars 652 forks source link

'MDAnalysis.analysis.diffusionmap' parallelization #4745

Open talagayev opened 1 month ago

talagayev commented 1 month ago

Fixes #4679 attempt

Changes made in this Pull Request:

Here is the Problem:

From what I see currently self.results.dist_matrix = np.zeros((self.n_frames, self.n_frames)) has the problem, that when it uses parallelization the self.n_frames value gets divided, which leads with the ndarray_sum and ndarray_mean to:

E AssertionError: E Arrays are not almost equal to 4 decimals E (shapes (2,), (4,) mismatch) E ACTUAL: array([1., 1.]) E DESIRED: array([1, 1, 1, 1])

and with the use of ndarray_vstack or ndarray_hstack it leads to the following error: numpy.linalg.LinAlgError: Last 2 dimensions of the array must be square

so I am not sure if this can be somehow adjusted, I also encountered a similar case also while trying to parallelize analysis.msd

PR Checklist

Developers certificate of origin


📚 Documentation preview 📚: https://mdanalysis--4745.org.readthedocs.build/en/4745/

pep8speaks commented 1 month ago

Hello @talagayev! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

There are currently no PEP 8 issues detected in this Pull Request. Cheers! :beers:

Comment last updated at 2024-10-19 23:05:04 UTC