Compare molecules with commom and non-commom subgraph

User 0f28873a29

29-04-2010 21:17:54

Hi:


   1. I want to compare to molecules listing their common substructures graph and their


       un-commom substructures graph. How can i do this kind of comparison with chemaxon API.


   2. Is it possible with fingerprints? 


 


thanks in advance.

ChemAxon efa1591b5a

05-05-2010 09:15:03

Hi,


1, I suggest to use the MCS class. This will find the largest common subgraph of the two input molecules. If, how ever, you would like to find all common subgraphs (above a certain size) then this won't work for you. Besides, it doe snot provide direct methods to retrieve the "un-common" subgraph. This feature, however, has been planned to add to the API for a while to as we received quite a few request for that. At present this task has not yet been scheduled though.


2, Fingerprinting is not used in MCS search. Using fingerprint to find the common subgraph, well, our fingerprint are not directly suitable for that. They encode subgraphs, but the coding is just one way, from structure to fingerprint. There's no possible algorithm to do it backwards, ie. find the fragment, subgraphs from the fingerprints.


Can you tell us what is the original, higher level problem you are trying to tackle? Though we are a tool-kit company yet we are eager to learn for what purposes and how our tools are used. We may even develop the full solution if the problem appears to be general enough.


Regards


Miklos

User 0f28873a29

05-05-2010 12:58:10

Hi:


We have a research project in my lab that work in in the filed of molecular similarity between small compounds. the idea is to correlate small changes in molecules (graph parts of the molecules) to other properties of the molecules and activity. We need a program that enumarate the common parts (included small parts (Atoms))of two compounds. Also, We need to identified the parts and subgraph that are differents between this two molecules (). Is only as a research project. We are now considering the most proeficient API to do this work. Is is posible to enumerate al the parts of a compounds and the make a comparison for each part?.


The idea of the fingerprints it only a short and fast comparison between these two molecules, because if they are very distance (disimilarity) we don't want to compare them.


Thanks for your help 

ChemAxon efa1591b5a

27-05-2010 10:06:30

Hi,


Your idea to speed up things with some fingerprint based pre-filtering should help a lot.


I don't quite understand what do you mean by "enumerate al the parts of a compounds" - does it refer to disconnected fragments in the molecular structure, or you mean disconnected MCES?


 


Regards


Miklos

User 0f28873a29

27-05-2010 12:44:33

The idea of my research is to enumarate all posible fragments of a two small molecules. (I think that this procedure is the same that the klurtor program used to generate the hiretical cluster between compounds). Then with the small fragment I run a comparison bettween the molecules, Each fragment of one molecule is compared with each fragment of the other molecule. With this procedure we identified the common fragments (parts or groups) and un-commons fragments between molecules.


This is my idea.


How can i do this kind of work with the Chemaxon API?


Thanks in advance.

ChemAxon efa1591b5a

02-06-2010 10:05:39

JKlustor is not suitable for generating fragments of molecules. For that purposes you may need to use the Fragmenter tool instead. I recommend to use the CCQ fragmentation to obtain meaningful small fragments. You don't need to write program and use the API, this functionality is available in the command line.


You can compare these small fragments against each other using the jcsearch tool, though this will be a computationally intensive procedure. If, however, the two sets of structures to be compared is reasonable small (less than 1000 structures) then this should be doable.


Regards


Miklos

User 0f28873a29

03-06-2010 12:08:20

Thanks for your answer. I will look for your solution. 


Thanks in advance