Problem using Standardizer to neutralize molecule

User 6f58eb8616

26-03-2009 15:11:41

Hi,





We are using the Standardizer to neutralize molecules, ie:





Standardizer standardizer = new Standardizer("neutralize");





When neutralizing this aromatic 5 membered ring "c1[n-]cnc1", we expected an explicit


hydrogen to be added thus giving a canonical form of "c1[nH]cnc1".  However, we are


getting "c1cncn1", which would seem to be a chemically incorrect structure, which doesn't throw


a "hasValenceError".





Is this a problem with the Standardizer or is there a standard way to add explicit Hydrogens


where they are required?





Thanks very much





Derek

ChemAxon e08c317633

28-03-2009 09:45:28

Hi,





This is a bug, we will fix it (presumably in JChem 5.2.2).


Valence check works on atomic level, and at that level there is no error in the structure (nitrogen with 2 aromatic bonds in an aromatic ring is valid), that's why the valence error is not indicated.








Thanks for the report,


Zsolt

User 6f58eb8616

30-03-2009 07:52:00

Hi Zsolt,





Thanks for looking into this.





Derek


User 941c2467a3

20-07-2010 18:58:02










Zsolt wrote:
Hi,




This is a bug, we will fix it (presumably in JChem 5.2.2).


Valence check works on atomic level, and at that level there is no error in the structure (nitrogen with 2 aromatic bonds in an aromatic ring is valid), that's why the valence error is not indicated.






Thanks for the report,


Zsolt

Hi Zsolt,

We found this problem still exists in JChem 5.3.4.
For example, a compound lacks an explicit hydrogen attached to the nitrogen,

O=c1ccncc1

Please let us know when you expect the problem to be fixed.

We pasted the above SMILES string in MarvinSketch or ran it against valence checker, but none ot them will return a "valence error" message, although it is a chemically incorrect structure.

In MarvinSketch, if we click on the menu "Structure->Check structure", the software will tell "The document appears to be valid", but if we click on the menu "Structure->Aromatic form->Convert to kekule form", it won't convert. In java code, this SMILES string can also pass the hasValenceError() funtion with a false value.

We have a pipeline system that accepts users' query structures and runs them against JChem Reactor rules. Since valence checker can't report such errors, it will allow incorrect structures to trigger some rules while they should not.

We are expecting to see that eithor valence checker can report this error or such incorrect structures can be automatically corrected through standarization process, for example,

from,
O=c1ccncc1
to,
O=c1cc[nH]cc1

from,
Cn1c2ncnc2c(=O)nc1=O
to,
Cn1c2nc[nH]c2c(=O)[nH]c1=O

So that they can eithor be excluded by our system or be standardized to correct structures to trigger Reactor rules properly.

We have many such kinds of stuctures, please let me know if you want more examples. Thanks very much for looking at this problem.


Best,


- Jeff

ChemAxon d76e6e95eb

22-07-2010 06:44:33

The AromaticityErrorChecker detects that these compounds are invalid (you need to have this checker added to your checker configuration). They contain an aromatic ring system which cannot be dearomatized. Thus, the current fixers cannot help these cases automatically.

User 941c2467a3

22-07-2010 15:20:20










Gyuri wrote:

The AromaticityErrorChecker detects that these compounds are invalid (you need to have this checker added to your checker configuration). They contain an aromatic ring system which cannot be dearomatized. Thus, the current fixers cannot help these cases automatically.



Hello Gyuri,


I tried AromaticityErrorChecker API and got a license problem. I posted it in another thread regarding to the same issue:


https://www.chemaxon.com/forum/viewpost30201.html#30201


Thanks for your further suggestions.


- Jeff

ChemAxon e08c317633

22-07-2010 15:30:32

Hi Jeff,


The original bug was fixed in JChem 5.2.2, the  "c1[n-]cnc1" molecule is neutralized correctly.


$ standardize -c neutralize "c1[n-]cnc1"
c1c[nH]cn1

Detecting  and fixing incorrect aromaticity of a neutral structure (e.g. "O=c1ccncc1", or "Cn1c2ncnc2c(=O)nc1=O") is not a neutralization task. As Gyuri wrote in his previous comment we have the AromaticityErrorChecker to detect these kind of problems.


Zsolt

ChemAxon 0815c054e1

22-07-2010 15:58:02

Hi Jeff,


I suggest you update your academic license so you have a standardizer pro license that gives you access to structure checker API.


To update your existing application please login to our forum
and then visit this
link





Best wishes,

Nora

User 941c2467a3

22-07-2010 16:13:33










norci wrote:

Hi Jeff,


I suggest you update your academic license so you have a standardizer pro license that gives you access to structure checker API.


To update your existing application please login to our forum
and then visit this
link





Best wishes,

Nora



Thanks Norci!