Hi,
I am using the class UniversalIsomorphismTester to detect subtructures. 
I have a problem with the method isSubgraph() which does not return what I 
expect for some fragments .
Here is an example :
fragment 1 represented by the SMILES : "CCCC" 
fragment 2 represented by the SMILES : "c1ccc2c(c1)ccc3ccccc2"

SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());
IAtomContainer atomContainer;
atomContainer = sp.parseSmiles("c1ccc2c(c1)ccc3ccccc2");
 IAtomContainer SMILESquery = sp.parseSmiles("CCCC");  
QueryAtomContainer query = 
QueryAtomContainerCreator.createBasicQueryContainer(SMILESquery);
 
the call to:
UniversalIsomorphismTester.isSubgraph(atomContainer, query)) returns true
The problem is that CCCC cannot be a substructure of c1ccc2c(c1)ccc3ccccc2 
which carbons are all included in aromatic rings.
I would have expected the method to return true if the fragment 1 was 
represented with lower cases : cccc which would mean that it contains double 
bonds.

Is it normal? If I use the MoleculeViewer2D to draw the fragment CCCC, it seems 
correctly represented without double bond, so it it not a problem of the 
SmilesParser.
Do you have an idea of how to solve my problem?

Miriame ALLOUCHE
 
_________________________________________________________________
Exprimez-vous : créez la page d'accueil qui vous ressemble avec Live.com.
http://www.live.com/getstarted
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Cdk-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/cdk-user

Reply via email to