jchem thinks this is a query - then PMapper crashes!

User 21b7e0228c

14-09-2010 14:51:41

Hi - I'm struggling against the following smiles:


O=C1n2c(S\c1=C/c1ccc(cc1)N1CCOCC1)nc1ccccc21


which makes my pharmacophore typing scheme  to crash with the following God-offending message:


Pharmacophore Typing failure for mol # 1 chemaxon.nfunk.jep.ParseException: Error while evaluating expression:
(SEARCH0(ATOMINDEX)||SEARCH1(ATOMINDEX)||SEARCH2(ATOMINDEX,1))&&!SEARCH3(ATOMINDEX,1,2)&&!SEARCH4(ATOMINDEX,2,3)&&!CONTAINS(Cationic,ATOMINDEX)&&!SEARCH5(ATOMINDEX,1)&&!SEARCH6(ATOMINDEX,1)&&!(SEARCH7(ATOMINDEX)&&(PLUGIN(pka,ATOMINDEX)<4||PLUGIN(pka,ATOMINDEX)>7))&&!(SEARCH8(ATOMINDEX,1))&&!(SEARCH9(ATOMINDEX,1,3))
    Calculation result is not defined for query molecules.


Indeed, if I import the wild smiles into mviewer, it gets a nice (a) label on the C atom #6 (the one in the thiazolone ring). But... there's nothing queryish about that smiles (which, to start with, ain't a smarts!) Very bizzare stuff!


 


Cheers,


Dragos


By the way - got another example in the mean time: Cc1ccc2n\c(-nc(C)c2c1)=N/c1ncc2C(=O)CCCc2n1

ChemAxon e08c317633

15-09-2010 16:42:34










dragos wrote:

Hi - I'm struggling against the following smiles:


O=C1n2c(S\c1=C/c1ccc(cc1)N1CCOCC1)nc1ccccc21


which makes my pharmacophore typing scheme  to crash with the following God-offending message:


Pharmacophore Typing failure for mol # 1 chemaxon.nfunk.jep.ParseException: Error while evaluating expression:
(SEARCH0(ATOMINDEX)||SEARCH1(ATOMINDEX)||SEARCH2(ATOMINDEX,1))&&!SEARCH3(ATOMINDEX,1,2)&&!SEARCH4(ATOMINDEX,2,3)&&!CONTAINS(Cationic,ATOMINDEX)&&!SEARCH5(ATOMINDEX,1)&&!SEARCH6(ATOMINDEX,1)&&!(SEARCH7(ATOMINDEX)&&(PLUGIN(pka,ATOMINDEX)<4||PLUGIN(pka,ATOMINDEX)>7))&&!(SEARCH8(ATOMINDEX,1))&&!(SEARCH9(ATOMINDEX,1,3))
    Calculation result is not defined for query molecules.


Indeed, if I import the wild smiles into mviewer, it gets a nice (a) label on the C atom #6 (the one in the thiazolone ring). But... there's nothing queryish about that smiles (which, to start with, ain't a smarts!) Very bizzare stuff!



The (a) label on the C atom indicates it's aromatic. If there is an aromatic atom in the molecule without any aromatic bonds connected to it, then the structure is recognized as query, I think. Lot of calculator plugins (e.g. pKa, which is calculated in this case) cannot handle lonely aromatic atoms.











dragos wrote:

By the way - got another example in the mean time: Cc1ccc2n\c(-nc(C)c2c1)=N/c1ncc2C(=O)CCCc2n1



I get  "Inconsistent molecular structure." error message for this structure. It has valence error end aromaticity errors.


So these are query or incorrect structures, that's why the exceptions are throw. In Marvin/JChem 5.4 we will introduce Structure Checker, which can help identifying this kind of errors, and can fix them, it they can be fixed automatically.


Zsolt

ChemAxon e08c317633

15-09-2010 16:53:53

Dragos, please try running PMapper with "--ignore-error" command line options. It should ignore errors.


$ pmapper

PMapper 5.4.0alpha1, (C) 1999-2010 ChemAxon Ltd.
Determination of pharmacophore properties.

Usage:
pmapper [options] [input files]

Options:
-h, --help this help message
-c, --config <filepath> path of the XML configuration file
-o, --output <filepath> output file path (default: stdout)
-t, --tag name of the SDFile tag to store the
Pharmacophore Map (default: PMAP)
-S, --sdf-output SDF output (otherwise only PMAP list)
-g, --ignore-error continue with next molecule on error
-v, --verbose print calculation warnings to the console

Examples:
pmapper -c Pharmacophores.xml m.mol
pmapper -S -t PHARMACOPHORES -c Pharmacophores.xml m.mol -o o.sdf


My colleagues will get back to you if it's not working. Sorry, we are quite busy because of the US UGM.


Zsolt

User 21b7e0228c

16-09-2010 08:26:33

Thanks! I'm actually not calling pmapper as such, but the API plugin within my java codes. But don't worry - the message was just to let you know; we do not really need those weird compounds anyway (they are Zinc, and there are millions of others that behave properly).


 


Cheers!