cxcalc with pka

User 247a2c5018

21-11-2016 11:03:26

Hi,


 


i run this command to calculate the pka of structures : 


 


cxcalc -o titib.sdf pka -a 3 -b 0 CNE_v2016.sdf


 


I have three values of pka in the results file :


id apKa1 apKa2 apKa3


1 8,66 14,95 7,6


Why the 3 Pka values are so different? Which best value have I  to keep?


 


How is the command to put the value of pka with the associated molfile in the result file?


 


Thanks


 


Kiet


 

ChemAxon d51151248d

21-11-2016 15:28:23

Hi!


Can you please attach the input file for the calculation?


Thank you,


Daniel

User 247a2c5018

21-11-2016 15:39:10

please see the file attached

ChemAxon 2136dd2f4b

22-11-2016 12:04:22

Hi!


 


Only two pKa values can be calculated with  the command line that you sent.   The last "number" is not a pKa value as you thought. The last two numbers  7 and 6 are separated with a " , " are the atomic "ID" of the ionizable acidic groups in the molecule.  


Look at the attached figure. Atoms in the molecule are identified with a number as you can see. The "OH" group is the 7th atom and the "NH" group is the 6th atom in the molecule.


I have repeated  the command line that is in question. The result is written into a txt file.  The output is correct. There are the atom ID's  under  the "atoms" label. 


cxcalc -o CNE_chemaxon.txt pKa -a 3 -b 0 CNE_chemaxon.sdf

id	apKa1	apKa2	apKa3	atoms
1 8.66 14.95 7,6




I would propose to try this command as well. The pKa values of the two strongest adic and basic groups are plotted.  


 cxcalc -o CNE_chemaxon.txt pKa  d:/ACTUAL/CNE_chemaxon.sdf

id	apKa1	apKa2	bpKa1	bpKa2	atoms
1 8.66 14.95 2.44 -4.95 7,6,9,10


Alternativelly you would get the same result by manually settiing  the count of the acidc and the basic groups what you want the pKa value for and to be echod into the output.


cxcalc -o CNE_chemaxon.txt pKa -a 2 -b 2 CNE_chemaxon.sdf

id	apKa1	apKa2	bpKa1	bpKa2	atoms
1 8.66 14.95 2.44 -4.95 7,6,9,10



 


Can you see the "atoms" label on your output?


 


Jozsi

User 247a2c5018

22-11-2016 13:54:35

Ok thanks i can understand


How to have theses values in the same sdfile with the corresponding molfile?

ChemAxon 2136dd2f4b

22-11-2016 19:16:41

Hi! 


I taken from  the forum help that this command line will store the structure &   the appropriate pKa values  in the specified output file.


cxcalc -o result.sdf -S  pka CNE_chemaxon.sdf


 


Jozsi

User 247a2c5018

23-11-2016 10:46:42

thanks


I have these data with the molfile : 


 


>  <PKA>


;;;;-9,17;14,95;8,66;;2,44;-4,95;;;


 


how to have also the labels apKa1 apKa2 apKa3


 



ChemAxon 2136dd2f4b

23-11-2016 17:49:27

Hi!


 


I have read the Chemaxon user's guide about the "cxcalc" at these sites  https://docs.chemaxon.com/display/docs/cxcalc+calculator+functions#cxcalccalculatorfunctions-pka


https://www.chemaxon.com/marvin-archive/latest/help/applications/cxcalc-calculations.html#pka


I don't see description about  the  apka1, apka2 ,etc... labels  (tags) which are really the "table head" labels of the pKa calculation in the cxcalc. 


My conclusion is that the cxcalc is  not able to handle these labels. May be I missed something. 


Additionally , the next  description is given for the output of the cxcalc


  Calculator writes calculation results in a format based on the specified tags. If the result refers to the entire molecule, it is written as a single number. If the calculation gives a separate number for each atom in the molecule, it is written as a list of numbers separated by semicolons. The order of the results corresponds to the order of the atoms determined by their atom indices. Other output formats may be available for certain plugins, see the plugin specific options for the specific plugin. By default, results are written without the input molecule in a table form, but Calculation results can be written in an SDF file as an SDF tag if the --sdf-output parameter is specified.


 


So I tried these 2 command lines in series  



cxcalc -o apKa.sdf -S -t pKa_of_ACIDIC_Groups pka -t acidic CNE_chemaxon.sdf

cxcalc -o pKa.sdf -S -t pKa_of_BASIC_Groups pka  -t basic apKa.sdf

 


And finally I got this output in the pKa.sdf file, clearly the acidic and the basic pKa values are in different line.


  Mrv1695 11231618312D          

13 13 0 0 0 0 999 V2000
4.3542 0.2833 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
4.3500 -0.5500 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
5.0667 0.7083 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
3.6375 -0.9542 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
5.0667 1.5333 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
5.7917 0.2833 0.0000 N 0 0 0 0 0 0 0 0 0 0 0 0
5.0667 -0.9625 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
3.6375 0.6958 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
5.7917 -0.5500 0.0000 N 0 0 0 0 0 0 0 0 0 0 0 0
3.6375 -1.7792 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
2.9250 0.2833 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
2.9250 -0.5417 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
2.9250 -2.1917 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
2 1 1 0 0 0 0
3 1 1 0 0 0 0
4 2 2 0 0 0 0
5 3 2 0 0 0 0
6 3 1 0 0 0 0
7 2 1 0 0 0 0
8 1 2 0 0 0 0
9 6 1 0 0 0 0
10 4 1 0 0 0 0
11 8 1 0 0 0 0
12 11 2 0 0 0 0
13 10 1 0 0 0 0
4 12 1 0 0 0 0
M END
> <id_national>
AB-0000001

> <pKa_of_ACIDIC_Groups>
;;;;;14.95;8.66;;;;;;

> <pKa_of_BASIC_Groups>
;;;;-9.17;;-5.38;;2.44;-4.95;;;

$$$$


 


That is all I was able to find in the documentation of the cxcalc.


 


Jozsi

ChemAxon d51151248d

24-11-2016 10:15:53

Hi, 


My colleague Józsi is right, currently cxcalc is not able to save distinct pKa values separately as SD properties. The current best solution is what he offered.


However, we put this issue as a feature request in our backlog.


Best regards,


Daniel 

User 247a2c5018

25-11-2016 10:18:49

Hi,


 


many thanks for your help!

ChemAxon d51151248d

27-02-2017 15:33:26

Dear Kiet, 


We have found a workaround for saving predicted pKa values in SD properties. This solution uses Chemical Terms functions.


cat molecules.sdf | evaluate -e "pka('acidic','1')" -S -t "ACIDIC_PKA_1" | 

 evaluate -e "pka('acidic','2')" -S -t "ACIDIC_PKA_2" | 

 evaluate -e "pka('basic','1')" -S -t "BASIC_PKA_1" | 

 evaluate -e "pka('basic','2')" -S -t "BASIC_PKA_2" >result.sdf

The pKa Chemical Terms function can calculate a specific acidic/basic pKa value. In this case we calculated the 1st and 2nd strongest acidic and basic pKa values for the molecules in the input SD file, and saved them in an SD property using the -S -t option. The output is then directed to the result SD file.


Please note that you can do the same for the first 3,4... pKa values as well by repeating the evaluator commands.


I hope this helps. 


Daniel