-
Notifications
You must be signed in to change notification settings - Fork 3
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
Expanding for multistates #12
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #12 +/- ##
===========================================
- Coverage 96.35% 77.06% -19.30%
===========================================
Files 13 13
Lines 604 763 +159
===========================================
+ Hits 582 588 +6
- Misses 22 175 +153 ☔ View full report in Codecov by Sentry. |
Hello @RiesBen! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:
Comment last updated at 2024-08-28 23:24:13 UTC |
Hey @RiesBen ! So I tried using this to generate mappings for the Schindler et al. FEP benchmark, and it generally works very well. There are just some cases were the behavior isn't exactly what I would expect (just from an alchemical pathway perspective, I didn't look at your code so I don't know if these are bugs or features). Here's the code to generate these problematic mappings:
This code yields the following mapping: The alchemical transformations suggested by this mapping involve a weird ring closure/opening, which I imagine should not be allowed? I may be wrong though. If I use the same code on another ligand set from the benchmark, This one is clearly suspicious, as the nitrile and the sulfoxide oxygen definitely don't have the same geometry. Wonder what you think about theses cases. |
Hej @eruijsena thanks for your cool feedback! :) |
Hi @eruijsena, the new mappings give me a better impression, what do you think? HERE we have a subset of Cmet: 2D - representation: from kartograf.utils.multistate_visualization import visualize_multistate_mappings_2D
visualize_multistate_mappings_2D(components, multi_state_mapping) 3D - representation: from kartograf.utils.multistate_visualization_3D import visualize_multistate_mappings_3D
visualize_multistate_mappings_3D(components, multi_state_mapping) |
I see again the nitrile-Sulfoxide oxygen mapping. I think for this we will need a new filter (see #35) to not map this, as the distances of our alignment make it possible to map those atoms (see the 3D): |
@eruijsena |
This pull request is all about Multistate Free Energy Methods.
Features:
Motivation:
The goal is to enable methods like (RE-)EDS, LadyBugs or other multistate methods to get quick access to hybrid topology approach atom-mappings.
Theory:
The algorithm concept:
Usage
Here example result, all ligands have a mapped core-region, such that all 14 ligands can be used in one hybrid topology simulation.
Code:
Result Visualization:
returned value:
[{'lig_1': 4,
'lig_10': 6,
'lig_11': 3,
'lig_12': 3,
'lig_13': 3,
'lig_14': 4,
'lig_15': 4,
'lig_16': 4,
'lig_2': 10,
'lig_3': 10,
'lig_5': 6,
'lig_6': 4,
'lig_8': 8,
'lig_9': 8},
{'lig_1': 6,
'lig_10': 3,
'lig_11': 6,
'lig_12': 6,
'lig_13': 5,
'lig_14': 6,
'lig_15': 6,
'lig_16': 6,
'lig_2': 4,
'lig_3': 4,
'lig_5': 3,
'lig_6': 6,
'lig_8': 10,
'lig_9': 5},
{'lig_1': 8,
'lig_10': 15,
'lig_11': 11,
...
}]