Package chemaxon.calculations
Class TopologyAnalyser
java.lang.Object
chemaxon.calculations.TopologyAnalyser
- All Implemented Interfaces:
chemaxon.license.Licensable
Central class for accessing functions analysing the topology of a molecule.
- Since:
- Marvin 3.5
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Deprecated, for removal: This API element is subject to removal in a future version.int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aliphaticBondCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aliphaticRingCount()
int
aliphaticRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aliphaticRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aliphaticRings()
int[][]
aliphaticRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aliphaticRings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticAtomCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticBondCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticRingCount()
int
aromaticRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticRings()
int[][]
aromaticRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticRings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.asymmetricAtomCount()
int[]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.asymmetricAtoms()
int
Calculates the number of atoms in the molecule including implicit hydrogens.double
Calculates the Balaban distance connectivity of the molecule, which is the average distance sum connectivity.int
Calculates the number of bonds in the molecule including bonds of implicit hydrogens.int
bondType
(int b) Determines the type of a bond (aromatic bonds are automatically recognized)int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboaliphaticRingCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboaromaticRingCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboRingCount()
int
carboRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboRings()
int[][]
carboRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboRings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.chainAtomCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.chainBondCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.chiralCenterCount()
int[]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.chiralCenters()
int
Calculates the smallest number of graph edges which must be removed such that no circuit remains.int
distanceCount
(int a, int d) Counts the given value in a row of the distance matrix.int
distanceDegree
(int a) Calculates the distance degree of an atom, which is the sum of the corresponding row values in the distance matrix.int
eccentricity
(int a) Calculates the eccentricity of an atom, which is the greatest value in the corresponding row of the distance matrix.int
Calculates the number of fragments (disconnected parts) of the molecule.int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAliphaticRingCount()
int
fusedAliphaticRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAliphaticRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAliphaticRings()
int[][]
fusedAliphaticRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAliphaticRings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAromaticRingCount()
int
fusedAromaticRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAromaticRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAromaticRings()
int[][]
fusedAromaticRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedAromaticRings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.fusedRingCount()
double
getFsp3()
Calculates the Fsp3 value of the given molecule.
Fsp3 = number of sp3 carbons / number of carbonsRetrieves the input moleculeint[]
double
Calculates the Harary index which is the half-sum of the off-diagonal elements of the reciprocal molecular distance matrix of the molecule.int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaliphaticRingCount()
int
heteroaliphaticRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaliphaticRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaliphaticRings()
int[][]
heteroaliphaticRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaliphaticRings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaromaticRingCount()
int
heteroaromaticRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaromaticRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaromaticRings()
int[][]
heteroaromaticRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroaromaticRings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroRingCount()
int
heteroRingCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroRingCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroRings()
int[][]
heteroRings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.heteroRings(int)
int
Calculates the hyper Wiener index of the molecule.boolean
isAliphaticAtom
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.isAliphaticAtom(int)
boolean
isAromaticAtom
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.isAromaticAtom(int)
boolean
isBarredAtom
(int a) Determines if an atom is is part of a certain functional group with high rotational barrier (amides, thioamides, sulphonamides).boolean
isChainAtom
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.isChainAtom(int)
boolean
isChainBond
(int b) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.isChainBond(int)
boolean
isChiral()
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.isChiral()
boolean
Determines if the molecule is a connected graph or not.boolean
isConnected
(int atom1, int atom2) Determines if two atoms are members of a connected graph or not.boolean
isHinderedBiarylBridgeBond
(int b) Determines if a bond bridges two aryl systems having more than two ortho substituents.boolean
boolean
isRingAtom
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.isRingAtom(int)
boolean
isRingBond
(int b) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.isRingBond(int)
boolean
isRotatableBond
(int b) Determines if a bond is a rotatable or notint[]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.largestRing()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.largestRingSize()
int
largestRingSizeOfAtom
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.largestRingSizeOfAtom(int)
int[]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.largestRingSystem()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.largestRingSystemSize()
int
Calculates the Platt index of the molecule which is equal to the total sum of the edge degrees of a molecular graph.double
Calculates the Randic index or molecular connectivity index as the harmonic sum of the geometric means of the node degrees for each edge.int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringAtomCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringBondCount()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringCount()
int
ringCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringCount(int)
int
ringCountOfAtom
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringCountOfAtom(int)
int[][]
rings()
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.rings()
int[][]
rings
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.rings(int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringSystemCount()
int
ringSystemCount
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringSystemCount(int)
int[][]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringSystems()
int[][]
ringSystems
(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringSystems(int)
int
Calculates the number of rotatable bonds in the molecule.void
void
setMolecule
(MoleculeGraph mol) Specifies a molecule to calculate with.void
setMolecule
(MoleculeGraph mol, int aromatizationMode) Specifies a molecule to calculate with.int
shortestPath
(int atom1, int atom2) Calculates the shortest topological path (number of bonds) between two atoms.int[]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.smallestRing()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.smallestRingSize()
int
smallestRingSizeOfAtom
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.smallestRingSizeOfAtom(int)
int[]
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.smallestRingSystem()
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.smallestRingSystemSize()
stereo
(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.stereo(int)
stereo
(int a1, int a2) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.stereo(int, int)
int
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.stereoDoubleBondCount()
double
stericEffectIndex
(int a) Calculates topological steric effect index (TSEI) of an atom from covalent radii values and topological distances.int
Calculates the Szeged index of the molecule.int
Calculates the Wiener index of the molecule, which is the average topological atom distance (half of the sumof all atom distances) in the molecule.int
Calculates the Wiener polarity number of the molecule, which is the number of 3 bond length distances in the molecule.
-
Constructor Details
-
TopologyAnalyser
public TopologyAnalyser()
-
-
Method Details
-
getMolecule
Retrieves the input molecule- Returns:
- the molecule to calculate with
-
setMolecule
Specifies a molecule to calculate with.- Parameters:
mol
- the molecule to calculate with
-
setMolecule
Specifies a molecule to calculate with.- Parameters:
mol
- the molecule to calculate witharomatizationMode
- specifies the algorithm for aromatization. Possible values:- AROM_BASIC - Basic aromatization
- AROM_GENERAL - General (Daylight compatible) aromatization
- AROM_LOOSE - Loose aromatization
-
aliphaticAtomCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aliphaticAtomCount()
Calculates the number of all aliphatic atoms in the molecule excluding hydrogens.- Returns:
- number of aliphatic atoms in the molecule
-
aliphaticBondCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int aliphaticRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] aliphaticRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticAtomCount()
Calculates the number of all aromatic atoms in the molecule.- Returns:
- number of aromatic atoms in the molecule
-
aromaticBondCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.aromaticBondCount()
Calculates the number of all aromatic bonds in the molecule.- Returns:
- number of aromatic bonds in the molecule
-
aromaticRingCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int aromaticRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] aromaticRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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
-
asymmetricAtomCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.asymmetricAtomCount()
Calculates the number of asymmetric atoms.- Returns:
- number of asymmetric atoms
-
asymmetricAtoms
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int carboaliphaticRingCount()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboaliphaticRingCount()
Calculates the number of carboaliphatic rings in the molecule (aliphatic rings containing carbon atoms only).- Returns:
- number of carboaliphatic rings
-
carboaromaticRingCount
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int carboaromaticRingCount()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboaromaticRingCount()
Calculates the number of carboaromatic rings in the molecule (aromatic rings containing carbon atoms only).- Returns:
- number of carboaromatic rings
-
carboRingCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.carboRingCount()
Calculates the number of carbocyclic rings in the molecule (rings containing carbon atoms only).- Returns:
- number of carbocyclic rings
-
carboRingCount
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int carboRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] carboRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.chainAtomCount()
Calculates the number of chain atoms in the molecule excluding hydrogens.- Returns:
- number of chain atoms in the molecule
-
chainBondCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.chainBondCount()
Calculates the number of chain bonds in the molecule excluding bonds of hydrogen atoms.- Returns:
- number of chain bonds in the molecule
-
chiralCenterCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.chiralCenterCount()
Calculates the number of chiral centers.- Returns:
- number of chiral center atoms
-
chiralCenters
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.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 indexd
- 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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int fusedAliphaticRingCount()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int fusedAliphaticRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] fusedAliphaticRings()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] fusedAliphaticRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int fusedAromaticRingCount()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int fusedAromaticRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] fusedAromaticRings()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] fusedAromaticRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int heteroaliphaticRingCount()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int heteroaliphaticRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] heteroaliphaticRings()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] heteroaliphaticRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int heteroaromaticRingCount()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int heteroaromaticRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] heteroaromaticRings()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] heteroaromaticRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int heteroRingCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] heteroRings(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public boolean isAliphaticAtom(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public boolean isAromaticAtom(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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.
-
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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.isChiral()
Determines if the molecule contains an atom with R or S stereo configuration.- Returns:
- true if the molecule is chiral.
-
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 atomatom2
- 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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int largestRingSizeOfAtom(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringAtomCount()
Calculates the number of ring atoms in the molecule.- Returns:
- number of ring atoms in the molecule
-
ringBondCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringBondCount()
Calculates the number of ring bonds in the molecule.- Returns:
- number of ring bonds in the molecule
-
ringCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.ringCount()
Calculates the number of rings (SSSR smallest set of smallest rings) in the molecule.- Returns:
- number of rings in the molecule
-
ringCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.rings()
Identifies the rings in the molecule.- Returns:
- rings of the molecule (null if the molecule is acyclic)
- Since:
- version 5.2
-
rings
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int ringSystemCount(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int[][] ringSystems(int size) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int smallestRingSizeOfAtom(int a) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int smallestRingSystemSize()Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byRing.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, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.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(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public String stereo(int a1, int a2) Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.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 bonda2
- index of the atom at the other end of the double bond- Returns:
- the absolute stereo configuration of the atom
-
stereoDoubleBondCount
Deprecated, for removal: This API element is subject to removal in a future version.as of release 5.5, replaced byStereochemistry.stereoDoubleBondCount()
Calculates the number of stereo double bonds.- Returns:
- number of stereo double bonds atoms
-
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
- Specified by:
setLicenseEnvironment
in interfacechemaxon.license.Licensable
-
isLicensed
public boolean isLicensed()- Specified by:
isLicensed
in interfacechemaxon.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
-
Ring.aliphaticAtomCount()