Non-exhaustive simple fragmenting

User 1ccd233681

21-02-2014 02:24:50

Hello,


I am interested in fragmenting some compounds, however I believe that the fragmenter classes do not support what I want to accomplish. So, I am looking for help pointing me in the direction of where I want to go with this.


Here is the fragmentation behavior I am looking for:


Input: 1 molecule (I use .NET  JChemMolecule objects, but can use other object types as necessary)


Output: An array of JChemMolecule pairs resulting from the separate cleavage of every rotatable single bond in the input molecule. So if there were three rotatable single bonds in the molecule , the output would be structured like this:


Output = [ [Frag1,Frag2],
[Frag1,Frag2],
[Frag1,Frag2], ]

In psuedo-code I would like to construct the following algorithm, but i don't know how to translate each action to JChem API calls.


Dim resultList as List of "Molecule Pairs"

for each bond As "rotatable single bond" in inputMolecule
    [leftFrag, rightFrag] = inputMolecule.SplitAcrossBond(bond)
resultList.Add(  [leftFrag, rightFrag] )
next

Any pointers?


Thanks,


--Josh

User 1ccd233681

23-02-2014 00:41:02

Okay, I found the way to do this. Originally, I was looking in the wrong places. Instead of using JChemMolecules and/or the fragmenter class, I needed to be using the chemaxon.struc.Molecule class which allows one to narrow down and access and iterate over individual bonds and atoms.


Best,


--Josh