pKa weirdness in JChem 5.3

User 870ab5b546

09-03-2010 00:02:00

Check this out.


bob@epoch:mechanisms$ evaluate -e "dynamicpKa()" "C1CC1"
56.62;70.91;86.19

Seems to me the three C atoms of cyclopropane should give the same pKa value.

ChemAxon e08c317633

09-03-2010 10:50:29

Micro pKa of the three C atoms of cyclopropane is the same


$ cxcalc pka -a 3 C1CC1 --min -1000 --max 1000 -m micro
id apKa1 apKa2 apKa3 bpKa1 bpKa2 atoms
1 57,10 57,10 57,10 1,2,3

Macro pKa (default) is different:


$ cxcalc pka -a 3 C1CC1 --min -1000 --max 1000 -m macro
id apKa1 apKa2 apKa3 bpKa1 bpKa2 atoms
1 56,62 70,91 86,19 1,2,3

See the description of micro and macro pKa here: https://www.chemaxon.com/marvin/help/calculations/pKa.html#MultiProtic


To evaluator.xml config file


<Param Name="mode" Value="micro"></Param> 


should be inserted to set micro pKa calculation.


Zsolt

User 870ab5b546

09-03-2010 15:18:20

Shouldn't the "dynamic" designation mean that the displayed pKa's are those of the entered species itself, not of any other deprotonated or protonated form?


When I enter a less symmetrical compound like CCCCC#N, I get only the first pKa of each H-bearing C atom.  I don't understand why, when I enter a compound such as cyclopropane, I should get the pKa not only of C1CC1 but also that of C1[CH-]C1 and C1[CH-][CH-]1.  

User 851ac690a0

09-03-2010 16:48:59

Hi,


 


Shouldn't the "dynamic" designation mean that
the displayed pKa's are those of the entered species itself, not of any
other deprotonated or protonated form?



"dynamic"  option only refers to the ionic form of a molecule. The "dynamic"  acid/base prefix was created for your request a couple years ago. You can check the effect of the "dynamic"  acid/base prefix on the calculated pKa (micro or macro) in the Marvin GUI by applying the pKa calculation for ionized molecules.  


 


 


The next two quoted sentances to be contradiction for me if I understand well you.


 


   only the entered species wanted


Shouldn't the "dynamic" designation mean that
the displayed pKa's are those of the entered species itself, not of any
other deprotonated or protonated form?

 


 


    not only the entered species wanted but all combination of microspecies


 I should get the pKa not only of C1CC1 but also that of C1[CH-]C1 and C1[CH-][CH-]1.  



If you want us to change something on the meanig of the "dynamicpKa" command  in evaluator or even on the meaning of  the "dynamic" option in the cxcalc or in the Marvin GUI we need to clarify what kind of feature or changes you want us to do. We are open to change in this question in certain limits.


 


Jozsi

User 870ab5b546

09-03-2010 16:54:10

I guess I wasn't clear enough.  I want ONLY the pKa's of the entered species, regardless of whether it is charged or uncharged.  I do NOT want the pKa's of any species other than the one I entered.  

User 851ac690a0

09-03-2010 18:30:10

Hi,


 


I think here is the solution in this forum topic:


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


The "dynamicpKa()" command was defined by you according to the next code.



I appear to be getting different pKa values from the command line versus the API.  I have dynamicPka() defined thusly:

    <Plugin ID="dynamicpKa" class="chemaxon.marvin.calculations.pKaPlugin" JAR="pKaPlugin.jar">
<Param Name="prefix" Value="dynamic"/>
<Param Name="type" Value="acidic"/>
<Param Name="min" Value="-1000"/>
<Param Name="max" Value="1000"/>
</Plugin>





 


After the next little modification in your "xml file"  (red code-line added)  your "dynamicpKa()" command works according to your requirements. 


 


<Plugin ID="dynamicpKa" class="chemaxon.marvin.calculations.pKaPlugin" JAR="pKaPlugin.jar">
    <Param Name="prefix" Value="dynamic"/>
    <Param Name="type" Value="acidic"/>
    <Param Name="mode" Value="micro"/>
    <Param Name="min" Value="-1000"/>
    <Param Name="max" Value="1000"/>
</Plugin>



 


 


   Here are some other option of the pKa calculation ,you may need to change other "Param   Name" and "Value"  in the "xml file".


 


pka options: 
  -h, --help                  this help message
  -p, --precision             <floating point precision as number of
                              fractional digits: 0-8 or inf> (default: 2)
  -t, --type                  [pKa|acidic|basic] (default: pKa)
  -m, --mode                  [macro|micro] (default: macro)
  -P, --prefix                [static|dynamic] (default: static)
  -d, --model                 [small|large] calculation model
                              small: optimized for at most 8 ionizable atoms
                              large: optimized for a large number of ionizable
                              atoms (default: small)
  -i, --min                   <min basic pKa> (default: -10)
  -x, --max                   <max acidic pKa> (default: 20)
  -T, --temperature           <temperature in Kelvin> (default: 298 K)
  -a, --na                    <number of acidic pKa values displayed>
                              (default: 2)
  -b, --nb                    <number of basic pKa values displayed>
                              (default: 2)
  -M, --majortautomer         [true|false] take major tautomeric form
                              (default: false)
  -c, --usecorrectionlibrary  [true|false] use correction library
                              (default: false)


 


Jozsi

User 870ab5b546

09-03-2010 18:59:43

Thanks, that helps.  I had forgotten that we define dynamicpKa() and dynamicpKb() ourselves.


Can you tell me about the correction library?  What is it?

User 851ac690a0

12-03-2010 02:33:25

Hi,


It means that you can improve the quality of the pKa calculator by yourself.You need to create an "sdf" file including your 'experimental' pKa values.   This "sdf file"  is processed by the "pKa teaching" method and a "correction library" is created.  The "correction library" created in this way can be invoked optionally in a succeeding pKa calculation.


Here is the official help.


http://www.chemaxon.com/marvin/help/calculations/calc_training.html#pkatraining


 


Jozsi