Class TopologyAnalyser

  • All Implemented Interfaces:
    chemaxon.license.Licensable

    @PublicAPI
    public class TopologyAnalyser
    extends Object
    implements chemaxon.license.Licensable
    Central class for accessing functions analysing the topology of a molecule.
    Since:
    Marvin 3.5
    • Constructor Detail

      • TopologyAnalyser

        public TopologyAnalyser()
    • 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

        @Deprecated
        public int aliphaticAtomCount()
        Deprecated.
        as of release 5.5, replaced by Ring.aliphaticAtomCount()
        Calculates the number of all aliphatic atoms in the molecule excluding hydrogens.
        Returns:
        number of aliphatic atoms in the molecule
      • aliphaticBondCount

        @Deprecated
        public int aliphaticBondCount()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int aliphaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int aliphaticRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.aliphaticRingCount(int)
        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

        @Deprecated
        public int[][] aliphaticRings()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] aliphaticRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.aliphaticRings(int)
        Indentifies 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

        @Deprecated
        public int aromaticAtomCount()
        Deprecated.
        as of release 5.5, replaced by Ring.aromaticAtomCount()
        Calculates the number of all aromatic atoms in the molecule.
        Returns:
        number of aromatic atoms in the molecule
      • aromaticBondCount

        @Deprecated
        public int aromaticBondCount()
        Deprecated.
        as of release 5.5, replaced by Ring.aromaticBondCount()
        Calculates the number of all aromatic bonds in the molecule.
        Returns:
        number of aromatic bonds in the molecule
      • aromaticRingCount

        @Deprecated
        public int aromaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int aromaticRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.aromaticRingCount(int)
        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

        @Deprecated
        public int[][] aromaticRings()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] aromaticRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.aromaticRings(int)
        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
      • asymmetricAtoms

        @Deprecated
        public int[] asymmetricAtoms()
        Deprecated.
        as of release 5.5, replaced by Stereochemistry.asymmetricAtoms()
        Determines the asymmetric atoms.
        Returns:
        indexes of asymmetric atoms
        Since:
        Marvin 5.3
      • atomCount

        public int atomCount()
        Calculates the number of atoms in the molecule including implicit hydrogens.
        Returns:
        number of atoms in the molecule
      • balabanIndex

        public double balabanIndex()
        Calculates the Balaban distance connectivity of the molecule, which is the average distance sum connectivity.
        Returns:
        the Balaban index (Integer.MAX_VALUE for disconnected graphs)
      • bondCount

        public int bondCount()
        Calculates the number of bonds in the molecule including bonds of implicit hydrogens.
        Returns:
        number of bonds in the molecule
      • bondType

        public int bondType​(int b)
        Determines the type of a bond (aromatic bonds are automatically recognized)
        Parameters:
        b - index of the bond
        Returns:
        type of the bond Possible values: 1 (single), 2 (double), 3 (triple), coordinate, conjugated and query bond types.
      • carboaliphaticRingCount

        @Deprecated
        public int carboaliphaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.carboaliphaticRingCount()
        Calculates the number of carboaliphatic rings in the molecule (aliphatic rings containing carbon atoms only).
        Returns:
        number of carboaliphatic rings
      • carboaromaticRingCount

        @Deprecated
        public int carboaromaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.carboaromaticRingCount()
        Calculates the number of carboaromatic rings in the molecule (aromatic rings containing carbon atoms only).
        Returns:
        number of carboaromatic rings
      • carboRingCount

        @Deprecated
        public int carboRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.carboRingCount()
        Calculates the number of carbocyclic rings in the molecule (rings containing carbon atoms only).
        Returns:
        number of carbocyclic rings
      • carboRingCount

        @Deprecated
        public int carboRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.carboRingCount(int)
        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

        @Deprecated
        public int[][] carboRings()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] carboRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.carboRings(int)
        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

        @Deprecated
        public int chainAtomCount()
        Deprecated.
        as of release 5.5, replaced by Ring.chainAtomCount()
        Calculates the number of chain atoms in the molecule excluding hydrogens.
        Returns:
        number of chain atoms in the molecule
      • chainBondCount

        @Deprecated
        public int chainBondCount()
        Deprecated.
        as of release 5.5, replaced by Ring.chainBondCount()
        Calculates the number of chain bonds in the molecule excluding bonds of hydrogen atoms.
        Returns:
        number of chain bonds in the molecule
      • chiralCenters

        @Deprecated
        public int[] chiralCenters()
        Deprecated.
        as of release 5.5, replaced by Stereochemistry.chiralCenters()
        Determines the chiral center atoms.
        Returns:
        indexes of chiral center atoms
        Since:
        Marvin 5.3
      • cyclomaticNumber

        public int cyclomaticNumber()
        Calculates the smallest number of graph edges which must be removed such that no circuit remains. Also known as circuit rank.
        Returns:
        cyclomatic number of the molecule
      • distanceCount

        public int distanceCount​(int a,
                                 int d)
        Counts the given value in a row of the distance matrix.
        Parameters:
        a - atom index
        d - the distance value to count
        Returns:
        the distance count of a value for the atom
      • distanceDegree

        public int distanceDegree​(int a)
        Calculates the distance degree of an atom, which is the sum of the corresponding row values in the distance matrix.
        Parameters:
        a - atom index
        Returns:
        the distance degree of the atom (Integer.MAX_VALUE for disconnected graphs)
      • eccentricity

        public int eccentricity​(int a)
        Calculates the eccentricity of an atom, which is the greatest value in the corresponding row of the distance matrix.
        Parameters:
        a - atom index
        Returns:
        the eccentricity value of the atom (Integer.MAX_VALUE for disconnected graphs)
      • fragmentCount

        public int fragmentCount()
        Calculates the number of fragments (disconnected parts) of the molecule.
        Returns:
        number of fragments in the molecule
      • getFsp3

        public double getFsp3()
        Calculates the Fsp3 value of the given molecule.
        Fsp3 = number of sp3 carbons / number of carbons
        Returns:
        the fsp3 value of the given molecule or Double.NaN if there is no carbon in the structure.
      • fusedAliphaticRingCount

        @Deprecated
        public int fusedAliphaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int fusedAliphaticRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.fusedAliphaticRingCount(int)
        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

        @Deprecated
        public int[][] fusedAliphaticRings()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] fusedAliphaticRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.fusedAliphaticRings(int)
        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

        @Deprecated
        public int fusedAromaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int fusedAromaticRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.fusedAromaticRingCount(int)
        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

        @Deprecated
        public int[][] fusedAromaticRings()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] fusedAromaticRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.fusedAromaticRings(int)
        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

        @Deprecated
        public int fusedRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.fusedRingCount()
        Calculates the number of fused rings (SSSR smallest set of smallest rings) in the molecule.
        Returns:
        number of fused rings in the molecule
      • graphInvariant

        public int[] graphInvariant()
      • hararyIndex

        public double hararyIndex()
        Calculates the Harary index which is the half-sum of the off-diagonal elements of the reciprocal molecular distance matrix of the molecule.
        Returns:
        the Harary index (Integer.MAX_VALUE for disconnected graphs)
      • heteroaliphaticRingCount

        @Deprecated
        public int heteroaliphaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int heteroaliphaticRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.heteroaliphaticRingCount(int)
        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

        @Deprecated
        public int[][] heteroaliphaticRings()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] heteroaliphaticRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.heteroaliphaticRings(int)
        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

        @Deprecated
        public int heteroaromaticRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.heteroaromaticRingCount()
        Calculates the number of aromatic heterocyclic rings in the molecule (aromatic rings containing non-carbon atoms).
        Returns:
        number of aromatic heterocyclic rings
      • heteroaromaticRingCount

        @Deprecated
        public int heteroaromaticRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.heteroaromaticRingCount(int)
        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

        @Deprecated
        public int[][] heteroaromaticRings()
        Deprecated.
        as of release 5.5, replaced by Ring.heteroaromaticRings()
        Identifies heteroaromatic rings in the molecule (aromatic rings containing at least a non-carbon atom).
        Returns:
        heteroaromatic rings
        Since:
        version 5.2
      • heteroaromaticRings

        @Deprecated
        public int[][] heteroaromaticRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.heteroaromaticRings(int)
        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

        @Deprecated
        public int heteroRingCount()
        Deprecated.
        as of release 5.5, replaced by Ring.heteroRingCount()
        Calculates the number of heterocyclic rings in the molecule (rings containing at least a non-carbon atom).
        Returns:
        number of heterocyclic rings
      • heteroRingCount

        @Deprecated
        public int heteroRingCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.heteroRingCount(int)
        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

        @Deprecated
        public int[][] heteroRings()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] heteroRings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.heteroRings(int)
        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
      • hyperWienerIndex

        public int hyperWienerIndex()
        Calculates the hyper Wiener index of the molecule.
        Returns:
        the hyper Wiener index (Integer.MAX_VALUE for disconnected graphs)
      • isAliphaticAtom

        @Deprecated
        public boolean isAliphaticAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Ring.isAliphaticAtom(int)
        Determines if an atom is a member of an aromatic ring or not.
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is aliphatic.
      • isAromaticAtom

        @Deprecated
        public boolean isAromaticAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Ring.isAromaticAtom(int)
        Determines if an atom is a member of an aromatic ring or not.
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is aromatic.
      • isAsymmetricAtom

        @Deprecated
        public boolean isAsymmetricAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Stereochemistry.isAsymmetricAtom(int)
        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.
      • isBarredAtom

        public boolean isBarredAtom​(int a)
        Determines if an atom is is part of a certain functional group with high rotational barrier (amides, thioamides, sulphonamides).
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is a barred atom.
      • isChainAtom

        @Deprecated
        public boolean isChainAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Ring.isChainAtom(int)
        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

        @Deprecated
        public boolean isChainBond​(int b)
        Deprecated.
        as of release 5.5, replaced by Ring.isChainBond(int)
        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
      • isChiral

        @Deprecated
        public boolean isChiral()
        Deprecated.
        as of release 5.5, replaced by Stereochemistry.isChiral()
        Determines if the molecule contains an atom with R or S stereo configuration.
        Returns:
        true if the molecule is chiral.
      • isChiralCenter

        @Deprecated
        public boolean isChiralCenter​(int a)
        Deprecated.
        as of release 5.5, replaced by Stereochemistry.isChiralCenter(int)
        Determines if an atom can be a tetrahedral stereogenic center.
        Parameters:
        a - index of the atom
        Returns:
        true if the atom is stereogenic.
      • isConnected

        public boolean isConnected()
        Determines if the molecule is a connected graph or not. There is a path from any node to any other node in the graph.
        Returns:
        true if the graph is connected, false if the graph is disconnected.
      • isConnected

        public boolean isConnected​(int atom1,
                                   int atom2)
        Determines if two atoms are members of a connected graph or not.
        Parameters:
        atom1 - index of the first atom
        atom2 - index of the second atom
        Returns:
        True if the two atoms are located on a connected graphs, false if the atoms are disconnected.
      • isHinderedBiarylBridgeBond

        public boolean isHinderedBiarylBridgeBond​(int b)
        Determines if a bond bridges two aryl systems having more than two ortho substituents.
        Parameters:
        b - index of the bond
        Returns:
        true if the bond is a hindered biaryl bridge bond, false if not
      • isRingAtom

        @Deprecated
        public boolean isRingAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Ring.isRingAtom(int)
        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 no ring bonds).
      • isRingBond

        @Deprecated
        public boolean isRingBond​(int b)
        Deprecated.
        as of release 5.5, replaced by Ring.isRingBond(int)
        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
      • isRotatableBond

        public boolean isRotatableBond​(int b)
        Determines if a bond is a rotatable or not
        Parameters:
        b - index of the bond
        Returns:
        true if the bond is a rotatable bond, false otherwise
      • largestRing

        @Deprecated
        public int[] largestRing()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int largestRingSize()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int largestRingSizeOfAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Ring.largestRingSizeOfAtom(int)
        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

        @Deprecated
        public int[] largestRingSystem()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int largestRingSystemSize()
        Deprecated.
        as of release 5.5, replaced by Ring.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
      • plattIndex

        public int plattIndex()
        Calculates the Platt index of the molecule which is equal to the total sum of the edge degrees of a molecular graph.
        Returns:
        the Platt index
      • randicIndex

        public double randicIndex()
        Calculates the Randic index or molecular connectivity index as the harmonic sum of the geometric means of the node degrees for each edge.
        Returns:
        the Randic index
      • ringAtomCount

        @Deprecated
        public int ringAtomCount()
        Deprecated.
        as of release 5.5, replaced by Ring.ringAtomCount()
        Calculates the number of ring atoms in the molecule.
        Returns:
        number of ring atoms in the molecule
      • ringBondCount

        @Deprecated
        public int ringBondCount()
        Deprecated.
        as of release 5.5, replaced by Ring.ringBondCount()
        Calculates the number of ring bonds in the molecule.
        Returns:
        number of ring bonds in the molecule
      • ringCount

        @Deprecated
        public int ringCount()
        Deprecated.
        as of release 5.5, replaced by Ring.ringCount()
        Calculates the number of rings (SSSR smallest set of smallest rings) in the molecule.
        Returns:
        number of rings in the molecule
      • ringCount

        @Deprecated
        public int ringCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.ringCount(int)
        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

        @Deprecated
        public int ringCountOfAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Ring.ringCountOfAtom(int)
        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

        @Deprecated
        public int[][] rings()
        Deprecated.
        as of release 5.5, replaced by Ring.rings(int)
        Identifies the rings in the molecule.
        Returns:
        rings of the molecule (null if the molecule is acyclic)
        Since:
        version 5.2
      • rings

        @Deprecated
        public int[][] rings​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.rings(int)
        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

        @Deprecated
        public int ringSystemCount()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int ringSystemCount​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.ringSystemCount(int)
        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

        @Deprecated
        public int[][] ringSystems()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int[][] ringSystems​(int size)
        Deprecated.
        as of release 5.5, replaced by Ring.ringSystems(int)
        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
      • rotatableBondCount

        public int rotatableBondCount()
        Calculates the number of rotatable bonds in the molecule.
        Returns:
        number of rotatable bonds in the molecule
      • shortestPath

        public int shortestPath​(int atom1,
                                int atom2)
        Calculates the shortest topological path (number of bonds) between two atoms. It returns Integer.MAX_VALUE for atoms of disconnected structures.
        Parameters:
        atom1 - Index of the first atom.
        atom2 - Index of the second atom.
        Returns:
        The shortest path between two atoms.
      • smallestRing

        @Deprecated
        public int[] smallestRing()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int smallestRingSize()
        Deprecated.
        as of release 5.5, replaced by Ring.smallestRingSize()
        Calculates the size of the smallest ring in the molecule.
        Returns:
        size of the smallest ring in the molecule (0 when acyclic)
      • smallestRingSizeOfAtom

        @Deprecated
        public int smallestRingSizeOfAtom​(int a)
        Deprecated.
        as of release 5.5, replaced by Ring.smallestRingSizeOfAtom(int)
        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)
      • smallestRingSystem

        @Deprecated
        public int[] smallestRingSystem()
        Deprecated.
        as of release 5.5, replaced by Ring.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

        @Deprecated
        public int smallestRingSystemSize()
        Deprecated.
        as of release 5.5, replaced by Ring.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
      • stereo

        @Deprecated
        public String stereo​(int a)
        Deprecated.
        as of release 5.5, replaced by Stereochemistry.stereo(int)
        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

        @Deprecated
        public String stereo​(int a1,
                             int a2)
        Deprecated.
        as of release 5.5, replaced by Stereochemistry.stereo(int, int)
        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
      • stericEffectIndex

        public double stericEffectIndex​(int a)
        Calculates topological steric effect index (TSEI) of an atom from covalent radii values and topological distances. The stericEffectIndex is related to the steric hindrance of the given atom.
        Parameters:
        a - index of the atom
        Returns:
        the topological steric effect index of the atom
      • szegedIndex

        public int szegedIndex()
        Calculates the Szeged index of the molecule. The Szeged index is based on the Wiener number, which is calculated by simply counting the number of nodes on both sides of each edge (and sum these counts). The Szeged index extends the Wiener number for cyclic graphs by counting those nodes only which are nearer to the given side of the edge than to the other. Unreachable nodes (disconnected graphs) or those at equidistance position to both sides of the given edge are not taken into account.
        Returns:
        the Szeged index
      • setLicenseEnvironment

        public void setLicenseEnvironment​(String env)
        Specified by:
        setLicenseEnvironment in interface chemaxon.license.Licensable
      • isLicensed

        public boolean isLicensed()
        Specified by:
        isLicensed in interface chemaxon.license.Licensable
      • wienerIndex

        public int wienerIndex()
        Calculates the Wiener index of the molecule, which is the average topological atom distance (half of the sumof all atom distances) in the molecule.
        Returns:
        the Wiener index (Integer.MAX_VALUE for disconnected graphs)
      • wienerPolarity

        public int wienerPolarity()
        Calculates the Wiener polarity number of the molecule, which is the number of 3 bond length distances in the molecule.
        Returns:
        the Wiener polarity number