Exhaustive fragmenter fix and improvements#1238
Conversation
… saturated or unsaturated fragments, added a test and renamed some tests to prepare for the tests for unsaturated fragments
… algorithm changes to use a power set to reduce computations
…ve or too small because of truncation of BigInt to int
…se and therefore cant have more elements than 2^31 - 1
…ion and added more comprehensive comments for subset generation
Bringing this feature branch up to date.
…tries to implement the pseudo-R-atom saturation
Update to be on par with the cdk main branch.
Update the branch to be up to date
… not possible to generate any fragments
…sing documentation
…added a setting for copying setereo information + tests
Bringing branch up to date with upstream cdk repositories main branch
…nds per fragmentation
…integers instead of BigInt
…lied the changes from BigInt back to int manually
updated to incorporate last cdk changes
|
I've just had a quick skim and there is a lot to check but is/can the public API preserved? |
Hi @johnmay , |
|
@rajarshi, |
|
Hi @JonasSchaub as far as I can recall this was not based on any literature reference. I figured it was such a trivial method, that nobody would write it up! At this point I can't recall why I implemented it, beyond providing an alternative to the Bemis-Murcko fragmentation scheme |
|
Thanks, @rajarshi, for the quick response! @johnmay also did something similar to improve database searches (https://www.nextmovesoftware.com/talks/Mayfield_HoneyIShrunkTheDatabase_ICCS2025.pdf). We are going to integrate it as an additional fragmentation scheme into our MORTAR application and then see what useful stuff we can do with it. |
|
Sorry for delay, been busy. Looks good, thanks for the improvements. |
|
@ToLeWeiss, I looked at the git history, and personally prefer a more linear history. It's hard to see what happens, with all those mergers. An alternative is to regularly use |
Fix for Saturation Issues in
ExhaustiveFragmenter(#1119)Aims to resolve the saturation-related issues in the
ExhaustiveFragmenter, as described in issue #1119.Fixes & Improvements
Correct Fragment Saturation:
Bond Splitting Logic: