Class FixBondOrdersTool

java.lang.Object
org.openscience.cdk.smiles.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 Details

    • FixBondOrdersTool

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

    • 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