Class Ring

  • All Implemented Interfaces:
    chemaxon.license.Licensable

    @PublicAPI
    public class Ring
    extends Object
    implements chemaxon.license.Licensable
    The ring class provides information of the ring types in a molecule.
    Since:
    Marvin 5.5
    • Constructor Summary

      Constructors 
      Constructor Description
      Ring()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int aliphaticAtomCount()
      Calculates the number of all aliphatic atoms in the molecule excluding hydrogens.
      int aliphaticBondCount()
      Calculates the number of all aliphatic bonds in the molecule excluding bonds connected to hydrogens.
      int aliphaticRingCount()
      Calculates the number of aliphatic ring systems of the molecule.
      int aliphaticRingCount​(int size)
      Calculates the number of aliphatic rings (SSSR smallest set of smallest rings) of a given size in the molecule.
      int[][] aliphaticRings()
      Identifies the aliphatic rings in the molecule.
      int[][] aliphaticRings​(int size)
      Identifies aliphatic rings in the molecule having a given size (number of atoms).
      int aromaticAtomCount()
      Calculates the number of all aromatic atoms in the molecule.
      int aromaticBondCount()
      Calculates the number of all aromatic bonds in the molecule.
      int aromaticRingCount()
      Calculates the number of all aromatic ring systems in the molecule (SSSR).
      int aromaticRingCount​(int size)
      Calculates the number of aromatic rings (SSSR smallest set of smallest rings) of a given size in the molecule.
      int[][] aromaticRings()
      Identifies the aromatic rings in the molecule.
      int[][] aromaticRings​(int size)
      Indentifies aromatic rings in the molecule having a given size (number of rings).
      int carboaliphaticRingCount()
      Calculates the number of carboaliphatic rings in the molecule (aliphatic rings containing carbon atoms only).
      int carboaromaticRingCount()
      Calculates the number of carboaromatic rings in the molecule (aromatic rings containing carbon atoms only).
      int carboRingCount()
      Calculates the number of carbocyclic rings in the molecule (rings containing carbon atoms only).
      int carboRingCount​(int size)
      Calculates the number of carbocyclic rings in the molecule (rings containing at least a non-carbon atom).
      int[][] carboRings()
      Identifies carbocyclic rings in the molecule (rings containing carbon atoms only).
      int[][] carboRings​(int size)
      Identifies carbocyclic rings in the molecule (rings containing carbon atoms only) having the given number of atoms.
      int chainAtomCount()
      Calculates the number of chain atoms in the molecule excluding hydrogens.
      int chainBondCount()
      Calculates the number of chain bonds in the molecule excluding bonds of hydrogen atoms.
      int fusedAliphaticRingCount()
      Calculates the number of fused aliphatic rings (SSSR smallest set of smallest aliphatic rings) in the molecule.
      int fusedAliphaticRingCount​(int size)
      Calculates the number of fused aliphatic rings in the molecule (rings s).
      int[][] fusedAliphaticRings()
      Identifies fused aliphatic rings (SSSR smallest set of smallest aliphatic rings) in the molecule.
      int[][] fusedAliphaticRings​(int size)
      Identifies fused aliphatic rings (SSSR smallest set of smallest aliphatic rings) in the molecule having the given size (number of atoms).
      int fusedAromaticRingCount()
      Calculates the number of fused aromatic rings (SSSR smallest set of smallest aromatic rings) in the molecule.
      int fusedAromaticRingCount​(int size)
      Calculates the number of fused aromatic rings in the molecule (rings s).
      int[][] fusedAromaticRings()
      Identifies fused aromatic rings (SSSR smallest set of smallest aromatic rings) in the molecule.
      int[][] fusedAromaticRings​(int size)
      Identifies fused aromatic rings (SSSR smallest set of smallest aromatic rings) in the molecule having the given size (number of atoms).
      int fusedRingCount()
      Calculates the number of fused rings (SSSR smallest set of smallest rings) in the molecule.
      MoleculeGraph getMolecule()
      Retrieves the input molecule
      int heteroaliphaticRingCount()
      Calculates the number of aliphatic heterocyclic rings in the molecule (aliphatic rings containing at least a non-carbon atom).
      int heteroaliphaticRingCount​(int size)
      Calculates the number of aliphatic heterocyclic rings in the molecule (aliphatic rings containing at least a non-carbon atom) having a given size (number of atoms).
      int[][] heteroaliphaticRings()
      Identifies heteroaliphatic rings in the molecule (aliphatic rings containing at least a non-carbon atom).
      int[][] heteroaliphaticRings​(int size)
      Identifies heteroaliphatic rings in the molecule (aliphatic rings containing at least a non-carbon atom) having a given size (number of atoms).
      int heteroaromaticRingCount()
      Calculates the number of aromatic heterocyclic rings in the molecule (aromatic rings containing non-carbon atoms).
      int heteroaromaticRingCount​(int size)
      Calculates the number of aromatic heterocyclic rings in the molecule (aromatic rings containing at least a non-carbon atom) having a given size (number of atoms).
      int[][] heteroaromaticRings()
      Identifies heteroaromatic rings in the molecule (aromatic rings containing at least a non-carbon atom).
      int[][] heteroaromaticRings​(int size)
      Identifies heteroaromatic rings in the molecule (aromatic rings containing at least a non-carbon atom) having a given size (number of atoms).
      int heteroRingCount()
      Calculates the number of heterocyclic rings in the molecule (rings containing at least a non-carbon atom).
      int heteroRingCount​(int size)
      Calculates the number of heterocyclic rings in the molecule (rings containing at least a non-carbon atom).
      int[][] heteroRings()
      Identifies heterocyclic rings in the molecule (rings containing at least a non-carbon atom).
      int[][] heteroRings​(int size)
      Indentifies hetero rings in the molecule having a given size (number of atoms).
      boolean isAliphaticAtom​(int a)
      Determines if an atom is not a member of an aromatic ring.
      boolean isAliphaticBond​(int b)
      Determines if a bond is not a member of an aromatic ring.
      boolean isAromaticAtom​(int a)
      Determines if an atom is a member of an aromatic ring.
      boolean isAromaticBond​(int b)
      Determines if a bond is a member of an aromatic ring.
      boolean isChainAtom​(int a)
      Determines if an atom a ring bond or a chain bond.
      boolean isChainBond​(int b)
      Determines if a bond is a ring bond or a chain bond.
      boolean isLicensed()
      This method is for internal use only.
      boolean isRingAtom​(int a)
      Determines if an atom a ring bond or a chain bond.
      boolean isRingBond​(int b)
      Determines if a bond is a ring bond or a chain bond.
      int[] largestRing()
      Identifies the atoms of the largest ring (number of atoms) in the molecule.
      int largestRingSize()
      Calculates the size of the largest ring in the molecule (SSSR based).
      int largestRingSizeOfAtom​(int a)
      Calculates the size of the largest ring an atom is a member of (SSSR based).
      int[] largestRingSystem()
      Identifies the atoms of the largest ring system (number of rings) in the molecule.
      int largestRingSystemSize()
      Calculates the size of the largest ring system (number of rings) in the molecule.
      int ringAtomCount()
      Calculates the number of ring atoms in the molecule.
      int ringBondCount()
      Calculates the number of ring bonds in the molecule.
      int ringCount()
      Calculates the number of rings (SSSR smallest set of smallest rings) in the molecule.
      int ringCount​(int size)
      Calculates the number of rings (SSSR smallest set of smallest rings) of a given size in the molecule.
      int ringCountOfAtom​(int a)
      Calculates the number of rings (SSSR smallest set of smallest rings) an atom is part of.
      int[][] rings()
      Identifies the rings in the molecule.
      int[][] rings​(int size)
      Identifies rings in the molecule having a given size.
      int ringSystemCount()
      Calculates the number of ring systems.
      int ringSystemCount​(int size)
      Identifies ring systems having a given size (number of rings) in the molecule.
      int[][] ringSystems()
      Identifies the ring systems in the molecule.
      int[][] ringSystems​(int size)
      Indentifies the ring systems in the molecule having a given size (number of rings).
      void setLicenseEnvironment​(String env)
      This method is for internal use only.
      void setMolecule​(MoleculeGraph mol)
      Specifies a molecule to calculate with.
      void setMolecule​(MoleculeGraph mol, int aromatizationMode)
      Specifies a molecule to calculate with.
      int[] smallestRing()
      Identifies the smallest ring (number of atoms) in the molecule.
      int smallestRingSize()
      Calculates the size of the smallest ring in the molecule.
      int smallestRingSizeOfAtom​(int a)
      Calculates the size of the smallest ring an atom is a member of.
      int[] smallestRingSystem()
      Identifies the smallest ring system (number of rings) in the molecule.
      int smallestRingSystemSize()
      Calculates the size of the smallest ring system (number of rings) in the molecule.
    • Constructor Detail

      • Ring

        public Ring()
    • Method Detail

      • 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
      • setMolecule

        public void setMolecule​(MoleculeGraph mol,
                                int aromatizationMode)
        Specifies a molecule to calculate with.
        Parameters:
        mol - the molecule to calculate with
        aromatizationMode - specifies the algorithm for aromatization. Possible values:
        • AROM_BASIC - Basic aromatization
        • AROM_GENERAL - General (Daylight compatible) aromatization
        • AROM_LOOSE - Loose aromatization
      • aliphaticAtomCount

        public int aliphaticAtomCount()
        Calculates the number of all aliphatic atoms in the molecule excluding hydrogens.
        Returns:
        number of aliphatic atoms in the molecule
      • aliphaticBondCount

        public int aliphaticBondCount()
        Calculates the number of all aliphatic bonds in the molecule excluding bonds connected to hydrogens.
        Returns:
        number of aliphatic bonds in the molecule
      • aliphaticRingCount

        public int aliphaticRingCount()
        Calculates the number of aliphatic ring systems of the molecule. Any ring containing an aliphatic atom/bond is considered aliphatic. Thus, aliphatic rings can contain some aromatic bonds too.
        Returns:
        number of aliphatic rings in the molecule
      • aliphaticRingCount

        public int aliphaticRingCount​(int size)
        Calculates the number of aliphatic rings (SSSR smallest set of smallest rings) of a given size in the molecule.
        Parameters:
        size - size of the ring to count
        Returns:
        number of aliphatic rings with the specified size in the molecule
        Since:
        version 5.1
      • aliphaticRings

        public int[][] aliphaticRings()
        Identifies the aliphatic rings in the molecule.
        Returns:
        aliphatic rings of the molecule (null if the molecule does not contain aliphatic rings)
        Since:
        version 5.2
      • aliphaticRings

        public int[][] aliphaticRings​(int size)
        Identifies aliphatic rings in the molecule having a given size (number of atoms).
        Parameters:
        size - size of the aliphatic rings to return
        Returns:
        aliphatic rings in the molecule having the given size (null if the molecule does not contain aliphatic rings)
        Since:
        version 5.2
      • aromaticAtomCount

        public int aromaticAtomCount()
        Calculates the number of all aromatic atoms in the molecule.
        Returns:
        number of aromatic atoms in the molecule
      • aromaticBondCount

        public int aromaticBondCount()
        Calculates the number of all aromatic bonds in the molecule.
        Returns:
        number of aromatic bonds in the molecule
      • aromaticRingCount

        public int aromaticRingCount()
        Calculates the number of all aromatic ring systems in the molecule (SSSR). Sometimes, aromatic rings are not part of the standard SSSR ring set. Thus, the sum of the aliphatic and aromatic rings can be greater than the number of rings.
        Returns:
        number of aromatic rings in the molecule
      • aromaticRingCount

        public int aromaticRingCount​(int size)
        Calculates the number of aromatic rings (SSSR smallest set of smallest rings) of a given size in the molecule.
        Parameters:
        size - size of the ring to count
        Returns:
        number of aromatic rings with the specified size in the molecule
        Since:
        version 5.1
      • aromaticRings

        public int[][] aromaticRings()
        Identifies the aromatic rings in the molecule.
        Returns:
        aromatic rings of the molecule (null if the molecule is aliphatic)
        Since:
        version 5.2
      • aromaticRings

        public int[][] aromaticRings​(int size)
        Indentifies aromatic rings in the molecule having a given size (number of rings).
        Parameters:
        size - size of the aromatic rings to return
        Returns:
        aromatic rings in the molecule having the given size (null if the molecule is aliphatic or contains different sized aromatic rings only)
        Since:
        version 5.2
      • carboaliphaticRingCount

        public int carboaliphaticRingCount()
        Calculates the number of carboaliphatic rings in the molecule (aliphatic rings containing carbon atoms only).
        Returns:
        number of carboaliphatic rings
      • carboaromaticRingCount

        public int carboaromaticRingCount()
        Calculates the number of carboaromatic rings in the molecule (aromatic rings containing carbon atoms only).
        Returns:
        number of carboaromatic rings
      • carboRingCount

        public int carboRingCount()
        Calculates the number of carbocyclic rings in the molecule (rings containing carbon atoms only).
        Returns:
        number of carbocyclic rings
      • carboRingCount

        public int carboRingCount​(int size)
        Calculates the number of carbocyclic rings in the molecule (rings containing at least a non-carbon atom).
        Parameters:
        size - size of the rings to count
        Returns:
        number of carbocyclic rings with the given size
        Since:
        version 5.2
      • carboRings

        public int[][] carboRings()
        Identifies carbocyclic rings in the molecule (rings containing carbon atoms only).
        Returns:
        carbocyclic rings (null if no carbocyclic ring found in the molecule.
        Since:
        version 5.2
      • carboRings

        public int[][] carboRings​(int size)
        Identifies carbocyclic rings in the molecule (rings containing carbon atoms only) having the given number of atoms.
        Parameters:
        size - size of the rings to count
        Returns:
        carbocyclic rings with the given size (null if no carbocyclic ring found in the molecule.
        Since:
        version 5.2
      • chainAtomCount

        public int chainAtomCount()
        Calculates the number of chain atoms in the molecule excluding hydrogens.
        Returns:
        number of chain atoms in the molecule
      • chainBondCount

        public int chainBondCount()
        Calculates the number of chain bonds in the molecule excluding bonds of hydrogen atoms.
        Returns:
        number of chain bonds in the molecule
      • fusedAliphaticRingCount

        public int fusedAliphaticRingCount()
        Calculates the number of fused aliphatic rings (SSSR smallest set of smallest aliphatic rings) in the molecule.
        Returns:
        number of fused aliphatic rings in the molecule
      • fusedAliphaticRingCount

        public int fusedAliphaticRingCount​(int size)
        Calculates the number of fused aliphatic rings in the molecule (rings s).
        Parameters:
        size - size of the fused aliphatic rings to count
        Returns:
        number of fused aliphatic rings having the given size
        Since:
        version 5.2
      • fusedAliphaticRings

        public int[][] fusedAliphaticRings()
        Identifies fused aliphatic rings (SSSR smallest set of smallest aliphatic rings) in the molecule.
        Returns:
        atom indexes of the fused aliphatic rings in the molecule
        Since:
        version 5.2
      • fusedAliphaticRings

        public int[][] fusedAliphaticRings​(int size)
        Identifies fused aliphatic rings (SSSR smallest set of smallest aliphatic rings) in the molecule having the given size (number of atoms).
        Parameters:
        size - size of the fused aliphatic rings to count
        Returns:
        atom indexes of the fused aliphatic rings in the molecule having the given number of atoms
        Since:
        version 5.2
      • fusedAromaticRingCount

        public int fusedAromaticRingCount()
        Calculates the number of fused aromatic rings (SSSR smallest set of smallest aromatic rings) in the molecule.
        Returns:
        number of fused aromatic rings in the molecule
      • fusedAromaticRingCount

        public int fusedAromaticRingCount​(int size)
        Calculates the number of fused aromatic rings in the molecule (rings s).
        Parameters:
        size - size of the fused aromatic rings to count
        Returns:
        number of fused aromatic rings having the given size
        Since:
        version 5.2
      • fusedAromaticRings

        public int[][] fusedAromaticRings()
        Identifies fused aromatic rings (SSSR smallest set of smallest aromatic rings) in the molecule.
        Returns:
        atom indexes of the fused aromatic rings in the molecule
        Since:
        version 5.2
      • fusedAromaticRings

        public int[][] fusedAromaticRings​(int size)
        Identifies fused aromatic rings (SSSR smallest set of smallest aromatic rings) in the molecule having the given size (number of atoms).
        Parameters:
        size - size of the fused aromatic rings to count
        Returns:
        atom indexes of the fused aromatic rings in the molecule
        Since:
        version 5.2
      • fusedRingCount

        public int fusedRingCount()
        Calculates the number of fused rings (SSSR smallest set of smallest rings) in the molecule.
        Returns:
        number of fused rings in the molecule
      • heteroaliphaticRingCount

        public int heteroaliphaticRingCount()
        Calculates the number of aliphatic heterocyclic rings in the molecule (aliphatic rings containing at least a non-carbon atom).
        Returns:
        number of heteroaliphatic rings
        Since:
        version 5.2
      • heteroaliphaticRingCount

        public int heteroaliphaticRingCount​(int size)
        Calculates the number of aliphatic heterocyclic rings in the molecule (aliphatic rings containing at least a non-carbon atom) having a given size (number of atoms).
        Parameters:
        size - size of the heteroaliphatc rings to count
        Returns:
        number of heteroaliphatic rings having the given size
        Since:
        version 5.2
      • heteroaliphaticRings

        public int[][] heteroaliphaticRings()
        Identifies heteroaliphatic rings in the molecule (aliphatic rings containing at least a non-carbon atom).
        Returns:
        atom indexes of heteroaliphatic rings
        Since:
        version 5.2
      • heteroaliphaticRings

        public int[][] heteroaliphaticRings​(int size)
        Identifies heteroaliphatic rings in the molecule (aliphatic rings containing at least a non-carbon atom) having a given size (number of atoms).
        Parameters:
        size - size of the heteroaliphatic rings to count
        Returns:
        heteroaliphatic rings having the given size
        Since:
        version 5.2
      • heteroaromaticRingCount

        public int heteroaromaticRingCount()
        Calculates the number of aromatic heterocyclic rings in the molecule (aromatic rings containing non-carbon atoms).
        Returns:
        number of aromatic heterocyclic rings
      • heteroaromaticRingCount

        public int heteroaromaticRingCount​(int size)
        Calculates the number of aromatic heterocyclic rings in the molecule (aromatic rings containing at least a non-carbon atom) having a given size (number of atoms).
        Parameters:
        size - size of the heteroaromatic rings to count
        Returns:
        number of heteroaromatic rings having the given size
        Since:
        version 5.2
      • heteroaromaticRings

        public int[][] heteroaromaticRings()
        Identifies heteroaromatic rings in the molecule (aromatic rings containing at least a non-carbon atom).
        Returns:
        heteroaromatic rings
        Since:
        version 5.2
      • heteroaromaticRings

        public int[][] heteroaromaticRings​(int size)
        Identifies heteroaromatic rings in the molecule (aromatic rings containing at least a non-carbon atom) having a given size (number of atoms).
        Parameters:
        size - size of the heteroaromatic rings to count
        Returns:
        heteroaromatic rings having the given size
        Since:
        version 5.2
      • heteroRingCount

        public int heteroRingCount()
        Calculates the number of heterocyclic rings in the molecule (rings containing at least a non-carbon atom).
        Returns:
        number of heterocyclic rings
      • heteroRingCount

        public int heteroRingCount​(int size)
        Calculates the number of heterocyclic rings in the molecule (rings containing at least a non-carbon atom).
        Parameters:
        size - size of the rings to count
        Returns:
        number of heterocyclic rings
        Since:
        version 5.2
      • heteroRings

        public int[][] heteroRings()
        Identifies heterocyclic rings in the molecule (rings containing at least a non-carbon atom).
        Returns:
        heterocyclic rings (null of no heterocyclic ring found in the molecule.
        Since:
        version 5.2
      • heteroRings

        public int[][] heteroRings​(int size)
        Indentifies hetero rings in the molecule having a given size (number of atoms).
        Parameters:
        size - size of the hetero rings to return (zero returns all)
        Returns:
        hetero rings in the molecule having the given size (null if the molecule does not contain hetero rings)
        Since:
        version 5.2
      • isAliphaticAtom

        public boolean isAliphaticAtom​(int a)
        Determines if an atom is not a member of an aromatic ring.
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is aliphatic.
      • isAromaticAtom

        public boolean isAromaticAtom​(int a)
        Determines if an atom is a member of an aromatic ring.
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is aromatic.
      • isAliphaticBond

        public boolean isAliphaticBond​(int b)
        Determines if a bond is not a member of an aromatic ring.
        Parameters:
        b - index of the bond
        Returns:
        true if the bond is aliphatic.
      • isAromaticBond

        public boolean isAromaticBond​(int b)
        Determines if a bond is a member of an aromatic ring.
        Parameters:
        b - index of the bond
        Returns:
        true if the bond is aromatic.
      • isChainAtom

        public boolean isChainAtom​(int a)
        Determines if an atom a ring bond or a chain bond.
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is a chain atom (has no ring bonds).
      • isChainBond

        public boolean isChainBond​(int b)
        Determines if a bond is a ring bond or a chain bond.
        Parameters:
        b - index of the bond
        Returns:
        true if the bond is a chain bond, false if ring bond
      • isRingAtom

        public boolean isRingAtom​(int a)
        Determines if an atom a ring bond or a chain bond.
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is a ring atom (has a ring bond).
      • isRingBond

        public boolean isRingBond​(int b)
        Determines if a bond is a ring bond or a chain bond.
        Parameters:
        b - index of the bond
        Returns:
        true if the bond is a ring bond, false if chain bond
      • largestRing

        public int[] largestRing()
        Identifies the atoms of the largest ring (number of atoms) in the molecule.
        Returns:
        atom indexes of the largest ring in the molecule (null when acyclic)
        Since:
        version 5.2
      • largestRingSize

        public int largestRingSize()
        Calculates the size of the largest ring in the molecule (SSSR based).
        Returns:
        size of the largest ring in the molecule (0 when acyclic)
      • largestRingSizeOfAtom

        public int largestRingSizeOfAtom​(int a)
        Calculates the size of the largest ring an atom is a member of (SSSR based).
        Returns:
        size of the largest ring (0 when atom is not a member of a ring)
      • largestRingSystem

        public int[] largestRingSystem()
        Identifies the atoms of the largest ring system (number of rings) in the molecule.
        Returns:
        atom indexes of the largest ring system in the molecule (null when acyclic)
        Since:
        version 5.2
      • largestRingSystemSize

        public int largestRingSystemSize()
        Calculates the size of the largest ring system (number of rings) in the molecule.
        Returns:
        size of the largest ring system in the molecule (0 when acyclic)
        Since:
        version 5.1
      • ringAtomCount

        public int ringAtomCount()
        Calculates the number of ring atoms in the molecule.
        Returns:
        number of ring atoms in the molecule
      • ringBondCount

        public int ringBondCount()
        Calculates the number of ring bonds in the molecule.
        Returns:
        number of ring bonds in the molecule
      • ringCount

        public int ringCount()
        Calculates the number of rings (SSSR smallest set of smallest rings) in the molecule.
        Returns:
        number of rings in the molecule
      • ringCount

        public int ringCount​(int size)
        Calculates the number of rings (SSSR smallest set of smallest rings) of a given size in the molecule.
        Parameters:
        size - size of the ring to count
        Returns:
        number of rings having the spedified size
      • ringCountOfAtom

        public int ringCountOfAtom​(int a)
        Calculates the number of rings (SSSR smallest set of smallest rings) an atom is part of.
        Parameters:
        a - index of the atom
        Returns:
        number of rings the atom is a member of
      • rings

        public int[][] rings()
        Identifies the rings in the molecule.
        Returns:
        rings of the molecule (null if the molecule is acyclic)
        Since:
        version 5.2
      • rings

        public int[][] rings​(int size)
        Identifies rings in the molecule having a given size.
        Parameters:
        size - size of the ring systems to return
        Returns:
        rings of the molecule having the given size (null if the molecule is acyclic or contains different rings only)
        Since:
        version 5.2
      • ringSystemCount

        public int ringSystemCount()
        Calculates the number of ring systems. Fused and spiro rings belong to one ring system.
        Returns:
        number of ring systems in the molecule
        Since:
        version 5.1
      • ringSystemCount

        public int ringSystemCount​(int size)
        Identifies ring systems having a given size (number of rings) in the molecule. Fused and spiro rings belong to one ring system.
        Parameters:
        size - size of the ring to count
        Returns:
        number of ring systems with the specified size in the molecule
        Since:
        version 5.1
      • ringSystems

        public int[][] ringSystems()
        Identifies the ring systems in the molecule. Fused and spiro rings belong to one ring system.
        Returns:
        ring systems in the molecule (null if the molecule is acyclic)
        Since:
        version 5.2
      • ringSystems

        public int[][] ringSystems​(int size)
        Indentifies the ring systems in the molecule having a given size (number of rings). Fused and spiro rings belong to one ring system.
        Parameters:
        size - size of the ring systems to return
        Returns:
        ring systems in the molecule having the given size (null if the molecule is acyclic or contains different rings only)
        Since:
        version 5.2
      • smallestRing

        public int[] smallestRing()
        Identifies the smallest ring (number of atoms) in the molecule.
        Returns:
        atom indexes of the smallest ring in the molecule (null when acyclic)
        Since:
        version 5.2
      • smallestRingSize

        public int smallestRingSize()
        Calculates the size of the smallest ring in the molecule.
        Returns:
        size of the smallest ring in the molecule (0 when acyclic)
      • smallestRingSystem

        public int[] smallestRingSystem()
        Identifies the smallest ring system (number of rings) in the molecule.
        Returns:
        atom indexes of the smallest ring system in the molecule (null when acyclic)
        Since:
        version 5.2
      • smallestRingSystemSize

        public int smallestRingSystemSize()
        Calculates the size of the smallest ring system (number of rings) in the molecule.
        Returns:
        size of the smallest ring system in the molecule (0 when acyclic)
        Since:
        version 5.1
      • smallestRingSizeOfAtom

        public int smallestRingSizeOfAtom​(int a)
        Calculates the size of the smallest ring an atom is a member of.
        Returns:
        size of the smallest ring (0 when atom is not a member of a ring)
      • setLicenseEnvironment

        public void setLicenseEnvironment​(String env)
        This method is for internal use only.
        Specified by:
        setLicenseEnvironment in interface chemaxon.license.Licensable
      • isLicensed

        public boolean isLicensed()
        This method is for internal use only.
        Specified by:
        isLicensed in interface chemaxon.license.Licensable