Hello,

I would agree that the first molecule should have hydrogens added like this:
 > 1: 2
 > 2: 0
 > 3: 1
 > 4: 2

A [C+] has three valence electrons to possibly form three single bonds.
Molecular Operating Environment (MOE) 2006.08 adds hydrogens in 
compliance to the above scheme.

Applying the modified formula
 > missingHydrogen = (int) (defaultAtom.getBondOrderSum() -
 >                     bondOrderSum - singleElectronSum -
 > atom.getFormalCharge());
to C3 of the first molecule suggests to add 4-2-0-(+1)=1 hydrogens, 
which seems correct.

On the otherhand:

Let's see for [O-] in e.g. C[O-]:
2-1-0-(-1)=2 (!!)
This is definately wrong. Here, the original formula applies: 2-1-0+(-1)=0

For [N+] in C[N+]:
3-1-0+(+1)=3
Again, the original formula applies.

I think that carbocations, [C+], are an exception, since they seek an 
electron sextet in their outer valence shell rather than an octet. They 
should probably be treated differently.
If one assumed defaultAtom.getBondOrderSum() = 2 for a carbocation the 
original formula would apply:
2-2-0+(+1)=1

Best wishes,
Andreas



Daniel Fontaine wrote:
 > Stefan,
 >
 > As I said, I am not a chemist.  However, I made the change you suggested
 > and recompiled CDK and all my test cases now run as expected.  I believe
 > your suggestion of changing +charge to -charge is correct.
 >
 > I appreciate all of your help.
 > Dan
 >
 > On Tue, 2007-05-22 at 17:17 +0200, Stefan Kuhn wrote:
 >> Looking at the situation I think indeed that atom 3 should have 1 
hydrogen,
 >> since it is positivly charged.
 >> Could one of the chemists comment on this?
 >> If it is indeed 1, the code in SaturationChecker is wrong, which 
seems hard to
 >> believe. Right now the code is:
 >> missingHydrogen = (int) (defaultAtom.getBondOrderSum() -
 >>                     bondOrderSum - singleElectronSum +
 >> atom.getFormalCharge());
 >> I think indeed it should be -charge, since, if the charge is 
negative, we need
 >> extra electrons.
 >> Again, the chemists please.
 >>
 >>
 >> On Tuesday 22 May 2007 16:32, Daniel Fontaine wrote:
 >>> I admit I am not much of a chemist, I am a programmer, but the program
 >>> that generated the fragment, Mass Frontier, has the first molecule with
 >>> 5 hydrogens rather than 7.  I was told this is correct due to the
 >>> positive charge on the carbon?  Does CDK not handle this sort of thing?
 >>> Or am I missing something?
 >>>
 >>> thanks for all of your help
 >>> Dan
 >>>
 >>> On Tue, 2007-05-22 at 15:48 +0200, Stefan Kuhn wrote:
 >>>> On Tuesday 22 May 2007 15:23, Daniel Fontaine wrote:
 >>>>> Thanks, but if this reader is working properly, why is the hydrogen
 >>>>> adder not taking charges into consideration?  I am getting two
 >>>>> hydrogens too many added to that first fragment I posted.
 >>>> Hm, I get for the first molecule the following implicit Hs after
 >>>> addImplicitHydrogensToSatisfyValency:
 >>>> 1: 2
 >>>> 2: 0
 >>>> 3: 3
 >>>> 4:2
 >>>> For the second one:
 >>>> 1: 1
 >>>> 2: 0
 >>>> 3: 1
 >>>> 4: 2
 >>>> That looks ok, I would say, doesn't it?
 >>>> Stefan
 >>>>
 >>>>> thanks,
 >>>>> Dan
 >>>>>
 >>>>> On Tue, 2007-05-22 at 10:29 +0200, Stefan Kuhn wrote:
 >>>>>> Ok, the problem is you are using the wrong property. You should use
 >>>>>> getFormatCharge, which works and is supposed to give that sort of,
 >>>>>> well,
 >>>>>> formal charge. The getCharge is used by classes assigning partial
 >>>>>> charges and
 >>>>>> will always give 0 if you do not explicitly run one of them.
 >>>>>> Stefan
 >>>>>>
 >>>>>> On Monday 21 May 2007 20:28, Daniel Fontaine wrote:
 >>>>>>> Hello, I am new to CDK and the mailing list.
 >>>>>>>
 >>>>>>> I am reading in a list of compounds from an sdf file that include
 >>>>>>> charges.  These charges don't appear on the atoms of the
 >>>>>> corresponding
 >>>>>>
 >>>>>>> Molecules, however, when loading with MDLV2000Reader.  All atoms
 >>>>>> show a
 >>>>>>
 >>>>>>> charge of 0.0.
 >>>>>>>
 >>>>>>> This is a problem because I am trying to add implicit hydrogens
 >>>>>>> with HydrogenAdder. I frequently end up with too many hydrogens and
 >>>>>>> the
 >>>>>> wrong
 >>>>>>
 >>>>>>> mass.
 >>>>>>>
 >>>>>>> any help would be appreciated,
 >>>>>>> Dan
 >>>>>> 
---------------------------------------------------------------------
 >>>>>> ----
 >>>>>>
 >>>>>>> This SF.net email is sponsored by DB2 Express
 >>>>>>> Download DB2 Express C - the FREE version of DB2 express and take
 >>>>>>> control of your XML. No limits. Just data. Click to get it now.
 >>>>>>> http://sourceforge.net/powerbar/db2/
 >>>>>>> _______________________________________________
 >>>>>>> Cdk-user mailing list
 >>>>>>> [email protected]
 >>>>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
 >>>>>> --
 >>>>>> Stefan Kuhn BSc MA
 >>>>>> IPB Halle
 >>>>>> AG Bioinformatik & Massenspektrometrie
 >>>>>> Weinberg 3
 >>>>>> 06120 Halle
 >>>>>> http://www.ipb-halle.de http://msbi.bic-gh.de
 >>>>>> [EMAIL PROTECTED] Tel. +49 (0) 345 5582 1474 Fax.+49 (0) 345 5582
 >>>>>> 1409
 >>>>>>
 >>>>>> 
---------------------------------------------------------------------
 >>>>>> ---- This SF.net email is sponsored by DB2 Express
 >>>>>> Download DB2 Express C - the FREE version of DB2 express and take
 >>>>>> control of your XML. No limits. Just data. Click to get it now.
 >>>>>> http://sourceforge.net/powerbar/db2/
 >>>>>> _______________________________________________
 >>>>>> Cdk-user mailing list
 >>>>>> [email protected]
 >>>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
 >>>>> 
-----------------------------------------------------------------------
 >>>>> -- This SF.net email is sponsored by DB2 Express
 >>>>> Download DB2 Express C - the FREE version of DB2 express and take
 >>>>> control of your XML. No limits. Just data. Click to get it now.
 >>>>> http://sourceforge.net/powerbar/db2/
 >>>>> _______________________________________________
 >>>>> Cdk-user mailing list
 >>>>> [email protected]
 >>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
 >>> 
-------------------------------------------------------------------------
 >>> This SF.net email is sponsored by DB2 Express
 >>> Download DB2 Express C - the FREE version of DB2 express and take
 >>> control of your XML. No limits. Just data. Click to get it now.
 >>> http://sourceforge.net/powerbar/db2/
 >>> _______________________________________________
 >>> Cdk-user mailing list
 >>> [email protected]
 >>> https://lists.sourceforge.net/lists/listinfo/cdk-user
 >
 >
 > -------------------------------------------------------------------------
 > This SF.net email is sponsored by DB2 Express
 > Download DB2 Express C - the FREE version of DB2 express and take
 > control of your XML. No limits. Just data. Click to get it now.
 > http://sourceforge.net/powerbar/db2/
 > _______________________________________________
 > Cdk-user mailing list
 > [email protected]
 > https://lists.sourceforge.net/lists/listinfo/cdk-user
 >

-- 
Andreas Schüller
PhD student in the research group of Prof. Dr. Gisbert Schneider

Johann Wolfgang Goethe University
Beilstein-endowed Chair for Chemoinformatics
Building B - 3rd floor
Siesmayerstr. 70
60323 Frankfurt am Main
Germany

Tel.: +49 69 798 24879
Fax: +49 69 798 24880
http://www.modlab.de/


Daniel Fontaine wrote:
> Stefan,
> 
> As I said, I am not a chemist.  However, I made the change you suggested
> and recompiled CDK and all my test cases now run as expected.  I believe
> your suggestion of changing +charge to -charge is correct.
> 
> I appreciate all of your help.
> Dan
> 
> On Tue, 2007-05-22 at 17:17 +0200, Stefan Kuhn wrote:
>> Looking at the situation I think indeed that atom 3 should have 1 hydrogen, 
>> since it is positivly charged.
>> Could one of the chemists comment on this?
>> If it is indeed 1, the code in SaturationChecker is wrong, which seems hard 
>> to 
>> believe. Right now the code is:
>> missingHydrogen = (int) (defaultAtom.getBondOrderSum() -
>>                     bondOrderSum - singleElectronSum + 
>> atom.getFormalCharge());
>> I think indeed it should be -charge, since, if the charge is negative, we 
>> need 
>> extra electrons.
>> Again, the chemists please.
>>
>>
>> On Tuesday 22 May 2007 16:32, Daniel Fontaine wrote:
>>> I admit I am not much of a chemist, I am a programmer, but the program
>>> that generated the fragment, Mass Frontier, has the first molecule with
>>> 5 hydrogens rather than 7.  I was told this is correct due to the
>>> positive charge on the carbon?  Does CDK not handle this sort of thing?
>>> Or am I missing something?
>>>
>>> thanks for all of your help
>>> Dan
>>>
>>> On Tue, 2007-05-22 at 15:48 +0200, Stefan Kuhn wrote:
>>>> On Tuesday 22 May 2007 15:23, Daniel Fontaine wrote:
>>>>> Thanks, but if this reader is working properly, why is the hydrogen
>>>>> adder not taking charges into consideration?  I am getting two
>>>>> hydrogens too many added to that first fragment I posted.
>>>> Hm, I get for the first molecule the following implicit Hs after
>>>> addImplicitHydrogensToSatisfyValency:
>>>> 1: 2
>>>> 2: 0
>>>> 3: 3
>>>> 4:2
>>>> For the second one:
>>>> 1: 1
>>>> 2: 0
>>>> 3: 1
>>>> 4: 2
>>>> That looks ok, I would say, doesn't it?
>>>> Stefan
>>>>
>>>>> thanks,
>>>>> Dan
>>>>>
>>>>> On Tue, 2007-05-22 at 10:29 +0200, Stefan Kuhn wrote:
>>>>>> Ok, the problem is you are using the wrong property. You should use
>>>>>> getFormatCharge, which works and is supposed to give that sort of,
>>>>>> well,
>>>>>> formal charge. The getCharge is used by classes assigning partial
>>>>>> charges and
>>>>>> will always give 0 if you do not explicitly run one of them.
>>>>>> Stefan
>>>>>>
>>>>>> On Monday 21 May 2007 20:28, Daniel Fontaine wrote:
>>>>>>> Hello, I am new to CDK and the mailing list.
>>>>>>>
>>>>>>> I am reading in a list of compounds from an sdf file that include
>>>>>>> charges.  These charges don't appear on the atoms of the
>>>>>> corresponding
>>>>>>
>>>>>>> Molecules, however, when loading with MDLV2000Reader.  All atoms
>>>>>> show a
>>>>>>
>>>>>>> charge of 0.0.
>>>>>>>
>>>>>>> This is a problem because I am trying to add implicit hydrogens
>>>>>>> with HydrogenAdder. I frequently end up with too many hydrogens and
>>>>>>> the
>>>>>> wrong
>>>>>>
>>>>>>> mass.
>>>>>>>
>>>>>>> any help would be appreciated,
>>>>>>> Dan
>>>>>> ---------------------------------------------------------------------
>>>>>> ----
>>>>>>
>>>>>>> This SF.net email is sponsored by DB2 Express
>>>>>>> Download DB2 Express C - the FREE version of DB2 express and take
>>>>>>> control of your XML. No limits. Just data. Click to get it now.
>>>>>>> http://sourceforge.net/powerbar/db2/
>>>>>>> _______________________________________________
>>>>>>> Cdk-user mailing list
>>>>>>> [email protected]
>>>>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
>>>>>> --
>>>>>> Stefan Kuhn BSc MA
>>>>>> IPB Halle
>>>>>> AG Bioinformatik & Massenspektrometrie
>>>>>> Weinberg 3
>>>>>> 06120 Halle
>>>>>> http://www.ipb-halle.de http://msbi.bic-gh.de
>>>>>> [EMAIL PROTECTED] Tel. +49 (0) 345 5582 1474 Fax.+49 (0) 345 5582
>>>>>> 1409
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> ---- This SF.net email is sponsored by DB2 Express
>>>>>> Download DB2 Express C - the FREE version of DB2 express and take
>>>>>> control of your XML. No limits. Just data. Click to get it now.
>>>>>> http://sourceforge.net/powerbar/db2/
>>>>>> _______________________________________________
>>>>>> Cdk-user mailing list
>>>>>> [email protected]
>>>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
>>>>> -----------------------------------------------------------------------
>>>>> -- This SF.net email is sponsored by DB2 Express
>>>>> Download DB2 Express C - the FREE version of DB2 express and take
>>>>> control of your XML. No limits. Just data. Click to get it now.
>>>>> http://sourceforge.net/powerbar/db2/
>>>>> _______________________________________________
>>>>> Cdk-user mailing list
>>>>> [email protected]
>>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
>>> -------------------------------------------------------------------------
>>> This SF.net email is sponsored by DB2 Express
>>> Download DB2 Express C - the FREE version of DB2 express and take
>>> control of your XML. No limits. Just data. Click to get it now.
>>> http://sourceforge.net/powerbar/db2/
>>> _______________________________________________
>>> Cdk-user mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
> 
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> Cdk-user mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/cdk-user
> 

-- 
Andreas Schüller
PhD student in the research group of Prof. Dr. Gisbert Schneider

Johann Wolfgang Goethe University
Beilstein-endowed Chair for Chemoinformatics
Building B - 3rd floor
Siesmayerstr. 70
60323 Frankfurt am Main
Germany

Tel.: +49 69 798 24879
Fax: +49 69 798 24880
http://www.modlab.de/

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Cdk-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/cdk-user

Reply via email to