Skip to content

[Performance] Pruning energy-sorted ensembles#11

Merged
ntampellini merged 3 commits intomasterfrom
performance/rmsd
Nov 9, 2025
Merged

[Performance] Pruning energy-sorted ensembles#11
ntampellini merged 3 commits intomasterfrom
performance/rmsd

Conversation

@ntampellini
Copy link
Owner

@ntampellini ntampellini commented Nov 9, 2025

If energies are provided (and therefore also a maximum energy difference that structure must have to be considered similar) the ensemble is energy-sorted before pruning, so that energetically similar structures are more likely to be grouped together early and pruned as soon as possible, reducing the total number of evaluate_sim calls.

The ConformerEnseble XYZ reader can now read energies from structures comment lines.

@codecov
Copy link

codecov bot commented Nov 9, 2025

Codecov Report

❌ Patch coverage is 76.00000% with 12 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
prism_pruner/pruner.py 68.18% 7 Missing ⚠️
prism_pruner/conformer_ensemble.py 81.81% 2 Missing ⚠️
prism_pruner/utils.py 75.00% 2 Missing ⚠️
prism_pruner/torsion_module.py 50.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@ntampellini
Copy link
Owner Author

Tried exiting early from rotationally_corrected_rmsd_and_max as soon as a global RMSD value below the desired one is found. That was unfortunately slower, as it increased the number of calls to rmsd_and_max and had a very low success rate in exiting early from the function. Idea scrapped for now.

@ntampellini ntampellini marked this pull request as ready for review November 9, 2025 20:52
@ntampellini ntampellini merged commit 762e28c into master Nov 9, 2025
1 of 2 checks passed
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 this pull request may close these issues.

1 participant