Class FixBondOrdersTool


  • @Deprecated
    public class FixBondOrdersTool
    extends Object
    Deprecated.
    Class to Fix bond orders at present for Aromatic Rings only. Contains one public function: kekuliseAromaticRings(IAtomContainer molecule)
    • Analyses which rings are marked aromatic/SP2/Planar3
    • Splits rings into groups containing independent sets of single/fused rings
    • Loops over each ring group
    • Uses an adjacency matrix of bonds (rows) and atoms (columns) to represent each fused ring system
    • Scans the adjacency matrix for bonds for which there is no order choice (eg - both bonds to the NH of pyrrole must be single)
    • All choices made to match valency against bonds used (including implicit H atoms)
    • Solves other bonds as possible - dependent on previous choices - makes free (random) choices only where necessary and possible
    • Makes assumption that where there is a choice in bond order (not forced by previous choices) - either choice is consistent with correct solution
    • Requires molecule with all rings to be solved being marked aromatic (SP2/Planar3 atoms). All bonds to non-ring atoms need to be fully defined (including implicit H atoms)
    Author:
    Kevin Lawson, Lucy Entwistle
    Source code:
    main
    Belongs to CDK module:
    smiles
    • Constructor Detail

      • FixBondOrdersTool

        public FixBondOrdersTool()
        Deprecated.
        Constructor for the FixBondOrdersTool object.
    • Method Detail

      • kekuliseAromaticRings

        public IAtomContainer kekuliseAromaticRings​(IAtomContainer molecule)
                                             throws CDKException
        Deprecated.
        kekuliseAromaticRings - function to add double/single bond order information for molecules having rings containing all atoms marked SP2 or Planar3 hybridisation.
        Parameters:
        molecule - The IAtomContainer to kekulise
        Returns:
        The IAtomContainer with kekule structure
        Throws:
        CDKException
      • setInterrupted

        public void setInterrupted​(boolean interrupted)
        Deprecated.
        Sets if the calculation should be interrupted.
        Parameters:
        interrupted - true, if the calculation should be cancelled
      • isInterrupted

        public boolean isInterrupted()
        Deprecated.
        Returns if the next or running calculation should be interrupted.
        Returns:
        true or false