Class Stereochemistry

java.lang.Object
chemaxon.calculations.stereo.Stereochemistry

@PublicAPI public class Stereochemistry extends Object
Central class for accessing functions analyzing the topology of a molecule.
Since:
Marvin 5.6
  • Field Details

  • Constructor Details

    • Stereochemistry

      public Stereochemistry()
  • Method Details

    • getMolecule

      public MoleculeGraph getMolecule()
      Retrieves the input molecule
      Returns:
      the molecule to calculate with
    • setMolecule

      public void setMolecule(MoleculeGraph mol)
      Specifies a molecule to calculate with.
      Parameters:
      mol - the molecule to calculate with
    • asymmetricAtomCount

      public int asymmetricAtomCount()
      Calculates the number of atoms having four different ligands.
      Returns:
      number of asymmetric atoms
    • asymmetricAtoms

      public int[] asymmetricAtoms()
      Retrieves the indexes of atom having four different ligands.
      Returns:
      indexes of asymmetric atoms
      Since:
      Marvin 5.3
    • chiralCenterCount

      public int chiralCenterCount()
      Calculates the number of chiral centers.
      Returns:
      number of chiral center atoms
    • chiralCenters

      public int[] chiralCenters()
      Determines the chiral center atoms.
      Returns:
      indexes of chiral center atoms
      Since:
      Marvin 5.3
    • graphInvariant

      public int[] graphInvariant()
    • isAsymmetricAtom

      public boolean isAsymmetricAtom(int a)
      Determines if an atom is asymmetric or not. Asymmetric atoms have four different ligands.
      Parameters:
      a - index of the atom
      Returns:
      true if the atom is asymmetric.
    • isChiral

      public boolean isChiral()
      Determines if the molecule contains an atom with R or S stereo configuration.
      Returns:
      true if the molecule is chiral.
    • isChiralCenter

      public boolean isChiralCenter(int a)
      Determines if an atom can be a tetrahedral stereogenic center.
      Parameters:
      a - index of the atom
      Returns:
      true if the atom is stereogenic.
    • stereo

      public String stereo(int a)
      Calculates absolute stereo configuration of the given atom. Returns "R" or "S" correspondingly, if the atom is stereo, otherwise it returns an empty string,
      Parameters:
      a - index of the atom
      Returns:
      the absolute stereo configuration of the atom
    • stereo

      public String stereo(int a1, int a2)
      Calculates absolute stereo configuration of the given double bond. Returns "E" or "Z" correspondingly, if the bond is a stereo double bond, otherwise it returns an empty string. Double bonds in small rings are not considered stereo bonds.
      Parameters:
      a1 - index of the atom at one end of the double bond
      a2 - index of the atom at the other end of the double bond
      Returns:
      the absolute stereo configuration of the atom
    • stereoDoubleBondCount

      public int stereoDoubleBondCount()
      Calculates the number of stereo double bonds.
      Returns:
      number of stereo double bonds atoms
    • getEnantiomer

      public static <T extends MoleculeGraph> T getEnantiomer(T m)
      Get the enantiomer pair of the given molecule
      Parameters:
      m - molecule
      Returns:
      the enantiomer pair of the original structure
    • getPossibleAtomCenteredStereoAtoms

      public static int[] getPossibleAtomCenteredStereoAtoms(MoleculeGraph m)
      Returns the indexes of atom-centered stereoactive atoms. These stereo types are: tetrahedral stereo, axal stereo and cis-trans stereo in cases like CC1CCC(C)CC1.
      Parameters:
      m - the molecule
      Returns:
      the array of indexes or an empty array if no such atom found.
      Since:
      Marvin 5.12
    • getPossibleAtomCenteredStereoAtomsWithNoParity

      public static int[] getPossibleAtomCenteredStereoAtomsWithNoParity(MoleculeGraph m)
      Returns the indexes of atoms that have the possibility to have tetrahedral stereo and have no exact parity set on them.
      Parameters:
      m - the molecule
      Returns:
      the array of indexes or an empty array if no such atom found.
      Since:
      Marvin 5.12