Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Euclidean minimum span tree for automatic wholemolecules #681

Open
1 of 4 tasks
GiovanniBussi opened this issue Apr 15, 2021 · 0 comments · May be fixed by #1068
Open
1 of 4 tasks

Euclidean minimum span tree for automatic wholemolecules #681

GiovanniBussi opened this issue Apr 15, 2021 · 0 comments · May be fixed by #1068
Assignees

Comments

@GiovanniBussi
Copy link
Member

GiovanniBussi commented Apr 15, 2021

I open this issue to comment about the draft EMST implemented by @maxbonomi. Super useful!

First, a list of missing things:

  • Allow ActionAtomistic::makeWhole to use the tree.
  • Add one or more regression tests
  • (maybe) allow building a tree from current position; likely expensive, but might be super-useful for analysis. In addition, this would automatically work with virtual atoms (no need to manually place them in the reference PDB).
  • Currently WHOLEMOLECULES needs a EMST flag. I would suggest this should be the default. Notice that the same switches might be added to all actions that make use of ActionAtomistic::makeWhole. Maybe the simplest way is to (a) enable it when the pdb is declared as WHOLE and (b) disable it in other cases. Not sure though.

Then I put a few comments on Max implementation.

At these lines. Isn't it simpler to have a separate vector newatoms and append to it all atoms that have not been found in the PDB?

At this line: is it necessary to assume this? One could alternatively start with the addtotree atoms.

If we implement the on-the-fly tree building (as mentioned above) then we might try to optimise the code. Maybe some push_back's could be optimised. In any case, it looks like the main cost will be in this nested loop, that looks difficult to optimise further. Perhaps it can be parallelized with openMP.

Anyway, I think this is a major step forward in easing PBCs issues for molecular complexes.

@GiovanniBussi GiovanniBussi added this to the Version 2.8 milestone Apr 15, 2021
@carlocamilloni carlocamilloni modified the milestones: Version 2.8, Version 2.9 Feb 1, 2023
@carlocamilloni carlocamilloni removed this from the Version 2.9 milestone Dec 1, 2023
@GiovanniBussi GiovanniBussi linked a pull request May 3, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants