Package chemaxon.calculations
Class Ring
java.lang.Object
chemaxon.calculations.Ring
- All Implemented Interfaces:
chemaxon.license.Licensable
The ring class provides information of the ring types in a molecule.
- Since:
- Marvin 5.5
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Calculates the number of all aliphatic atoms in the molecule excluding hydrogens.int
Calculates the number of all aliphatic bonds in the molecule excluding bonds connected to hydrogens.int
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[][]
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
Calculates the number of all aromatic atoms in the molecule.int
Calculates the number of all aromatic bonds in the molecule.int
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[][]
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
Calculates the number of carboaliphatic rings in the molecule (aliphatic rings containing carbon atoms only).int
Calculates the number of carboaromatic rings in the molecule (aromatic rings containing carbon atoms only).int
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[][]
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
Calculates the number of chain atoms in the molecule excluding hydrogens.int
Calculates the number of chain bonds in the molecule excluding bonds of hydrogen atoms.int
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[][]
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
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[][]
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
Calculates the number of fused rings (SSSR smallest set of smallest rings) in the molecule.Retrieves the input moleculeint
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[][]
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
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[][]
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
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[][]
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
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
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[]
Identifies the atoms of the largest ring (number of atoms) in the molecule.int
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[]
Identifies the atoms of the largest ring system (number of rings) in the molecule.int
Calculates the size of the largest ring system (number of rings) in the molecule.int
Calculates the number of ring atoms in the molecule.int
Calculates the number of ring bonds in the molecule.int
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
Calculates the number of ring systems.int
ringSystemCount
(int size) Identifies ring systems having a given size (number of rings) in the molecule.int[][]
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
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[]
Identifies the smallest ring (number of atoms) in the molecule.int
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[]
Identifies the smallest ring system (number of rings) in the molecule.int
Calculates the size of the smallest ring system (number of rings) in the molecule.
-
Constructor Details
-
Ring
public Ring()
-
-
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
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.
-
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
This method is for internal use only.- Specified by:
setLicenseEnvironment
in interfacechemaxon.license.Licensable
-
isLicensed
public boolean isLicensed()This method is for internal use only.- Specified by:
isLicensed
in interfacechemaxon.license.Licensable
-