chemaxon.calculations.CalculationException:breaks v6

User 677b9c22ff

09-07-2013 22:03:52

Hi,


using inconsistent molecules generates an exception during logP calculations with fixed ph on during Chemistry/Training in polarizibility calculation.


chemaxon.calculations.CalculationException: Invalid molecule for polarizibility calculation: [H]OC([H])([H])[C@@]1([H])O[C@]([H])(n2c([H])nc3c2n([H])c(=O)[n-]([H])c3=O)[C@@]([H])(O[H])[C@]1([H])O[H]
    at chemaxon.calculations.AtomPolarizability.errorCheck(AtomPolarizability.java:88)
    at chemaxon.calculations.AtomPolarizability.getPolarizabilityParameter(AtomPolarizability.java:198)
    at chemaxon.calculations.pka.AtomPolarizabilityPKa.getPolarizabilityParameter(AtomPolarizabilityPKa.java:247)
    at chemaxon.calculations.pka.IntrinsicIonization.setAtomSphere(IntrinsicIonization.java:4771)
    at chemaxon.calculations.pka.AcidicPKa.setAtomSphere(AcidicPKa.java:3421)
    at chemaxon.calculations.pka.AcidicPKa.getAlcoholicAcidicpKa(AcidicPKa.java:90)
    at chemaxon.calculations.pka.AcidicPKa.calculate(AcidicPKa.java:68)
    at chemaxon.calculations.pka.IntrinsicIonization.getApKa(IntrinsicIonization.java:842)
    at chemaxon.calculations.pka.IntrinsicIonization.getAcidicpKa(IntrinsicIonization.java:261)
    at chemaxon.calculations.pka.Ionizer.getMicropKa(Ionizer.java:1233)
    at chemaxon.calculations.pka.Ionizer.calcSpeciesRatio(Ionizer.java:3137)
    at chemaxon.calculations.pka.Ionizer.calcSpeciesOrder(Ionizer.java:3309)
    at chemaxon.calculations.pka.Ionizer.calcMsDistribution(Ionizer.java:3474)
    at chemaxon.calculations.pka.Ionizer.calculatepKa(Ionizer.java:3798)
    at chemaxon.calculations.training.logp.LogPTrainingPreProcessor.getMajorForm(LogPTrainingPreProcessor.java:46)
    at chemaxon.calculations.training.logp.LogPTrainingPreProcessor.preprocess(LogPTrainingPreProcessor.java:20)
    at chemaxon.calculations.training.logp.LogPTrainingPreProcessor.preprocess(LogPTrainingPreProcessor.java:14)
    at chemaxon.calculations.training.ParallelTrainer$1.run(ParallelTrainer.java:85)
[catch] at java.lang.Thread.run(Unknown Source)

----

chemaxon.calculations.CalculationException: Invalid molecule for polarizibility calculation: [H]OC(=O)C([H])([H])[N-]([H])C(=O)[C@@]([H])(N([H])C(=O)C([H])([H])C([H])([H])[C@@]([H])(N([H])[H])C(=O)O[H])C([H])([H])S[H]
    at chemaxon.calculations.AtomPolarizability.errorCheck(AtomPolarizability.java:88)
    at chemaxon.calculations.AtomPolarizability.getPolarizabilityParameter(AtomPolarizability.java:198)
    at chemaxon.calculations.pka.AtomPolarizabilityPKa.getPolarizabilityParameter(AtomPolarizabilityPKa.java:247)
    at chemaxon.calculations.pka.IntrinsicIonization.setAtomSphere(IntrinsicIonization.java:4771)
    at chemaxon.calculations.pka.AcidicPKa.setAtomSphere(AcidicPKa.java:3421)
    at chemaxon.calculations.pka.AcidicPKa.getNHAcidicpKa(AcidicPKa.java:1280)
    at chemaxon.calculations.pka.AcidicPKa.calculate(AcidicPKa.java:70)
    at chemaxon.calculations.pka.IntrinsicIonization.getApKa(IntrinsicIonization.java:842)
    at chemaxon.calculations.pka.IntrinsicIonization.getAcidicpKa(IntrinsicIonization.java:261)
    at chemaxon.calculations.pka.Ionizer.getMicropKa(Ionizer.java:1233)
    at chemaxon.calculations.pka.Ionizer.calcSpeciesRatio(Ionizer.java:3137)
    at chemaxon.calculations.pka.Ionizer.calcSpeciesOrder(Ionizer.java:3309)
    at chemaxon.calculations.pka.Ionizer.calcMsDistribution(Ionizer.java:3474)
    at chemaxon.calculations.pka.Ionizer.calculatepKa(Ionizer.java:3798)
    at chemaxon.calculations.training.logp.LogPTrainingPreProcessor.getMajorForm(LogPTrainingPreProcessor.java:46)
    at chemaxon.calculations.training.logp.LogPTrainingPreProcessor.preprocess(LogPTrainingPreProcessor.java:20)
    at chemaxon.calculations.training.logp.LogPTrainingPreProcessor.preprocess(LogPTrainingPreProcessor.java:14)
    at chemaxon.calculations.training.ParallelTrainer$1.run(ParallelTrainer.java:85)
[catch] at java.lang.Thread.run(Unknown Source)

 

Instant-JCHEM does not recover from this error. The training progress bar freezes and IJchem has to be closed.


Running the faulty molecule under MSketch generates an error message too, but it recovers and the structure checker can be used to correct the structures. I am wondering if it would be good to have this option integrated into InstantJchem or doing it outside is easier.


 



Instant JChem Version: 6.0.2 (build: 201307020715-372436)
JChem
Version:
6.0.2
JChem Table Version: 6000000
Marvin
Version:
6.0.2 (build date: 2013-06-25)

Cheers


Tobias


 




ChemAxon 2bdd02d1e5

12-07-2013 04:23:36

Hi Tobias,


I was not able to replicate the error with the two structures you provided in the stacktrace. If some error occur with a wrong structure, it is recoverable for me.


Also I can open the structures in MSketch without any noticable error.


What am I missing? Is there any specific column (e.g. ChemTerms field) you use for the training? Or may I get the sample of inconsistent molecules in the original data format?


Structure checker is not directly integrated in IJC now. It's easier to use it outside of IJC. You may also benefit from GUI, please see: http://www.chemaxon.com/jchem/doc/user/structurechecker.html. I would recommend to use structure checker before you import these inconsisten molecules into IJC. Then you can import the repared ones and continue with your training procedure.


I'll move this topic to Calculators section. They may be interested in the errors you found.


Thanks for your report.


Filip

User 677b9c22ff

12-07-2013 05:13:29

Hi,


in the first structure the  ring nitrogen has three valences and a negative charge, any pk or pH based calculation will fail.


In the second structure the  nitrogen contains a radical and a negative charge and three valences,


the structure checker will find the errors (v5.9.0).


Regarding the Instant -JChem error, you probably nee to add 1000 additional structures to reproduce, and turn on pH


dependence. I currently can not send my data, so not sure if reproducible with another dataset, it might be specific to my


test set. The error will not be caught, it will crash Instant-CHEM 5.9.0 and 6.0.x


Cheers


Tobias

ChemAxon 2bdd02d1e5

12-07-2013 11:08:00

I still were not able to reproduce it.


But there is a workaround, if you are able to correct the structure before actual computation takes place? Does it help? It should ;)


Cheers,
Filip 

User 677b9c22ff

12-07-2013 18:33:44

Hi,


thanks for looking into it, it doesn't bother me, I just need to clean my structures, its just an error report. Otherwise the computations run fine and also very fast on 32 threads. However I miss some more information on the type of crossvalidation and the way structures are selected.


Cheers


Tobias

ChemAxon 60613ab728

24-07-2013 07:24:00

Hi Tobias,


Our logP expert is going to return back from holiday within a couple of days.


Until then, please find here some more details about logP model.


https://www.chemaxon.com/forum/ftopic9544.html


http://www.chemaxon.com/marvin/help/calculations/logPlogD.html#logPD_Def


Best Regards,


Miklos

User 677b9c22ff

25-07-2013 16:39:59

Thanks Miklos!


Tobias

User 851ac690a0

25-07-2013 20:12:37

Hi,


 


Thanks for the bug report. Unfortunately  I was able to create a similar error message in a not published developer version of IJC. I investigate the way to fix it . 


The  "Leave one out cross validation (LOOCV)"  method was implemented in the training model.


We will  insert this info into the documentation. 


Jozsi