I know that each atom only has one valency for this reason I thought that it should be a good idea if I create other file xml on other hand. and I used still the class. Into this xml there is only one elementType of H, one of C, one of N and so one and there aren't value for maxBondOrder, bondOrderSum, formalNeighbourCount. I created it so because I think it should be better than which is a Hashtable.

On Mon, 2005-03-21 at 15:19, Egon Willighagen wrote:

At this moment, the AtomType has three related fields:
- maxBondOrder
- bondOrderSum
- formalNeighbourCount

They are related but don't match fully...

Take nitrogen... depending on the atom type (think formal charge),
the bond order sum is 3 or 4... they valency is always 5.

On Mon, 2005-03-21 at 11:58, Miguel Rojas Cherto wrote:
> Due to the necessidad to find I number of lone pair orbitals into an
> Atom, I have found a algorithm that try to find a SIMPLE WAY the
> molecular geometry for following from Valence Shell ElectronPair
> Reupulsion or VSEPR model and at the same time its hybridization of
> atoms in a molecule. The basic premise of the model is that the
> electrons are paired in a molecule and that the molecule geometry is
> determined only by the repulsion between the pairs. The geomtry
> adopted by a molecule is then the one in which the reulsions are
> minimized.
> I have created a new Class into
> atomType file together with I believe
> that hier is correct. It gives you the hybridization as CDK.Constant.
> public int getHybridization(Atom atom, AtomContainer container) throws
> CDKException .
> This class is an experimental alternative to the
> I think its not complet and gives
> incorrect solutions. (exemple for one Test).
> *   #pairs on            hybridization         geomtry              number for CDK.Constants
> *    an atom              of the atom
> *
> ****************************************************************************************** 
> *      2                     sp                linear                          1
> *      3                     sp^2              trigonal planar                 2
> *      4                     sp^3              tetrahedral                     3
> *      5                     sp^3d             trigonal bipyramid              4
> *      6                     sp^3d^2           octahedral                      5
> *      7                     sp^3d^3           pentagonal bipyramid            6
> This class only works if the central atom is a s-block or p-block
> element (groups IIA trhough VIIIA), not a transition metal.
> It needed the valency of an atom. For this I created a
> hybridizationVSEPR_atomtypes.xml with the valency of all atoms with
> exception of the transition metals. It is practicaler than with
> <atomType id="H">
>     <atom elementType="H">
>       <scalar dataType="xsd:integer" dictRef="cdk:valency">1</scalar>
>     </atom>
> </atomType>
> At the same time I have had to modify AtomTypeHandler Into endElement
> and startElement one paar line more (
> atomType.setValency(Integer.parseInt(currentChars)); )
> Also I have had to introduce into AtomType one methode for valency.
> With its getValency und setVelency
>   /**
> *  Sets the the exact electron valency of the AtomType object.
> *
>   * @param  electronValency  The new electronValency value
>   *
>   */
> public void setValency(int valency)
> {
> this.electronValency = valency;
> notifyChanged();
> }
> and by I complete with into CDK.Contanst the rest of possibilities
> with its hybridization sp^3d^1 (int 4) , sp^3d^2 ( int 5) , and
> sp^3d^3 (int 6).
> And naturally a test for each thing.
> I think it will interessant in order to extend the capacity with
> hybridization and geometry to work.

Adding Valency seems reasonable to me... thoughts?


SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
Cdk-devel mailing list