Package chemaxon.marvin.calculations
Class TopologyAnalyserPlugin
java.lang.Object
chemaxon.marvin.plugin.CalculatorPlugin
chemaxon.marvin.calculations.TopologyAnalyserPlugin
- All Implemented Interfaces:
TaggedCalculator
,chemaxon.license.Licensable
Calculates topological data. Data types:
- "aliphaticAtom" (API/cxcalc only, atomic boolean property)
- "aliphaticAtomCount"
- "aliphaticBondCount"
- "aliphaticRingCount"
- "aliphaticRingCountOfSize" (API/cxcalc only, number of aliphatic rings of given size)
- "aliphaticRings" (API/Chemical Terms only)
- "aliphaticRingsOfSize" (API/Chemical Terms only)
- "aromaticAtom" (API/cxcalc only, atomic boolean property)
- "aromaticAtomCount"
- "aromaticBondCount"
- "aromaticRingCount"
- "aromaticRingCountOfSize" (API/cxcalc only, number of aromatic rings of given size)
- "aromaticRings" (API/Chemical Terms only)
- "aromaticRingsOfSize" (API/Chemical Terms only)
- "asymmetricAtom" (API/cxcalc only, atomic boolean property)
- "asymmetricAtomCount"
- "asymmetricAtoms"
- "atomCount"
- "balabanIndex"
- "bondCount"
- "bondType" (API/cxcalc only, the bond type)
- "carboaliphaticRingCount"
- "carboaromaticRingCount"
- "carboRingCount"
- "carboRingCountOfSize" (API/Chemical Terms only)
- "carboRings" (API/Chemical Terms only)
- "carboRingsOfSize" (API/Chemical Terms only)
- "chainAtom" (API/cxcalc only, atomic boolean property)
- "chainAtomCount"
- "chainBond" (API/cxcalc only, bond boolean property)
- "chainBondCount"
- "chiralCenter" (API/cxcalc only, atomic boolean property)
- "chiralCenterCount"
- "chiralCenters"
- "connected" (API/cxcalc only,
true
if two atoms are connected) - "connectedGraph" (API/cxcalc only,
true
if the molecule graph is connected) - "cyclomaticNumber"
- "distanceCount" (API only, number of atoms at given distance from a given atom)
- "distanceDegree" (atomic)
- "eccentricity" (atomic)
- "fragmentCount",
- "fsp3",
- "fusedAliphaticRingCount"
- "fusedAliphaticRingCountOfSize" (API/Chemical Terms only)
- "fusedAliphaticRings" (API/Chemical Terms only)
- "fusedAliphaticRingsOfSize" (API/Chemical Terms only)
- "fusedAromaticRingCount"
- "fusedAromaticRingCountOfSize" (API/Chemical Terms only)
- "fusedAromaticRings" (API/Chemical Terms only)
- "fusedAromaticRingsOfSize" (API/Chemical Terms only)
- "fusedRingCount"
- "hararyIndex"
- "heteroaliphaticRingCount" (API/Chemical Terms only)
- "heteroaliphaticRingCountOfSize" (API/Chemical Terms only)
- "heteroaliphaticRings" (API/Chemical Terms only)
- "heteroaliphaticRingsOfSize" (API/Chemical Terms only)
- "heteroaromaticRingCount"
- "heteroaromaticRingCountOfSize" (API/Chemical Terms only)
- "heteroaromaticRings" (API/Chemical Terms only)
- "heteroaromaticRingsOfSize" (API/Chemical Terms only)
- "heteroRingCount"
- "heteroRingCountOfSize" (API/Chemical Terms only)
- "heteroRings" (API/Chemical Terms only)
- "heteroRingsOfSize" (API/Chemical Terms only)
- "hyperWienerIndex"
- "largestAtomRingSize" (API/cxcalc only, atomic, size of largest ring containing atom)
- "largestRing" (API/Chemical Terms only)
- "largestRingSize"
- "largestRingsystem" (API/Chemical Terms only)
- "largestRingSystemSize",
- "plattIndex"
- "randicIndex"
- "ringAtom" (API/cxcalc only, atomic boolean property)
- "ringAtomCount"
- "ringBond" (API/cxcalc only, bond boolean property)
- "ringBondCount"
- "ringCount"
- "ringCountOfAtom" (API/cxcalc only, number of rings of given atom)
- "ringCountOfSize" (API only, number of rings of given size)
- "rings"
- "ringsOfSize"
- "ringSystemCount",
- "ringSystemCountOfSize",(API/cxcalc only, number of rings system of given size)
- "ringSystems" (API/Chemical Terms only)
- "ringSystemsOfSize" (API/Chemical Terms only)
- "rotatableBond" (API/cxcalc only, bond boolean property)
- "rotatableBondCount"
- "shortestPath" (API/cxcalc only, size of shortest path between two atoms)
- "smallestAtomRingSize" (API/cxcalc only, atomic, size of smallest ring containing atom)
- "smallestRing" (API/Chemical Terms only)
- "smallestRingSize"
- "smallestRingSystem" (API/Chemical Terms only)
- "smallestRingsyStemSize"
- "stereoDoubleBondCount"
- "stericEffectIndex" (atomic)
- "szegedIndex"
- "wienerIndex"
- "wienerPolarity"
API usage example (as an alternative, you can also use
the TopologyAnalyser
class directly):
// read input molecule MolImporter mi = new MolImporter("test.mol"); Molecule mol = mi.read(); mi.close(); // create plugin TopologyAnalyserPlugin plugin = new TopologyAnalyserPlugin(); // set target molecule plugin.setMolecule(mol); // run the calculation plugin.run(); // get molecular results int ringCount = plugin.getRingCount(); int rotatableBondCount = plugin.getRotatableBondCount(); int smallestRingSize = plugin.getSmallestRingSize(); // get atomic result int count = mol.getAtomCount(); double[] stericEffectIndexes = new double[count]; for (int i=0; i < count; ++i) { stericEffectIndexes[i] = plugin.getStericEffectIndex(i); } // get bond result int index = plugin.getBondIndex(0,3); // bond index connecting atom 0 and atom 3 boolean isChainBond = plugin.isChainBond(index); // do something with the results ...
For concurrent plugin example applications using ChemAxon's concurrent framework, refer to the Concurrent plugin examples.
- Since:
- Marvin 3.5, 09/27/2004
-
Nested Class Summary
Nested classes/interfaces inherited from class chemaxon.marvin.plugin.CalculatorPlugin
CalculatorPlugin.HydrogenData
-
Field Summary
Fields inherited from class chemaxon.marvin.plugin.CalculatorPlugin
ATOM, BLUE, CALCRGB_OFF, COVALENT_HYDRATION_ERROR_REMARK, CRITICAL_ERROR_MSG, EPSILON, explicitHydrogens, INCORRECT_AROMATIC_NITROGEN_REMARK, INSTABLE_TAUTOMERIC_FORM_REMARK, KEEP_HYDROGENS, keepHydrogens, licenseEnvironment, MOLECULE, MOLECULES, NAN, PLUGIN_CLASS_KEY, PLUGIN_DIR, RED, TRUE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
checkMolecule
(Molecule mol) Checks the input molecule.int
Returns the aliphatic atom count.int
Returns the aliphatic bond count.int
Returns the aliphatic ring count.int
getAliphaticRingCount
(int size) Returns the number of aliphatic rings (SSSR smallest set of smallest rings) of a given size in the molecule.int
getAliphaticRingCountOfSize
(int size) Deprecated, for removal: This API element is subject to removal in a future version.int[][]
Identifies the aliphatic rings in the molecule.int[][]
getAliphaticRings
(int size) Indentifies aliphatic rings in the molecule having a given size (number of atoms).int
Returns the atom count.int
Returns the aromatic atom count.int
Returns the aromatic bond count.int
Returns the aromatic ring count.int
getAromaticRingCount
(int size) Returns the number of aromatic rings (SSSR smallest set of smallest rings) of a given size in the molecule.int
getAromaticRingCountOfSize
(int size) Deprecated, for removal: This API element is subject to removal in a future version.int[][]
Identifies the aromatic rings in the molecule.int[][]
getAromaticRings
(int size) Indentifies aromatic rings in the molecule having a given size (number of rings).int
Returns the number of asymmetric atoms.int[]
Determines the asymmetric atoms.double
Calculates the Balaban distance connectivity of the molecule, which is the average distance sum connectivity.int
Returns the bond count.int
getBondIndex
(int i1, int i2) Returns the index of the bond connecting two atoms,-1
if the two atoms are not connected by bond.int
getBondType
(int index) Determines the type of a bond (aromatic bonds are automatically recognized)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
Returns the carbo ring count.int
getCarboRingCount
(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[][]
getCarboRings
(int size) Identifies carbocyclic rings in the molecule (rings containing carbon atoms only) having the given number of atoms.int
Returns the chain atom count.int
Returns the chain bond count.int
Calculates the number of tetrahedral stereogenic centers.int[]
Determines the chiral center atoms.Returns aMolecule
in which the atoms of largest conjugated system are colored.int
Calculates the smallest number of graph edges which must be removed such that no circuit remains.int
getDistanceCount
(int index, int distance) Counts the given value in a row of the distance matrix.int
getDistanceDegree
(int index) Calculates the distance degree of an atom, which is the sum of the corresponding row values in the distance matrix.int
getEccentricity
(int index) Calculates the eccentricity of an atom, which is the greatest value in the corresponding row of the distance matrix.int
Returns the number of fragments (disconnected parts) of the molecule.double
getFsp3()
Calculates the Fsp3 value of the given molecule.
Fsp3 = number of sp3 carbons / number of carbonsint
Calculates the number of fused aliphatic rings (SSSR smallest set of smallest aliphatic rings) in the molecule.int
getFusedAliphaticRingCount
(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[][]
getFusedAliphaticRings
(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
getFusedAromaticRingCount
(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[][]
getFusedAromaticRings
(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.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
Calculates the number of aliphatic heterocyclic rings in the molecule (aliphatic rings containing at least a non-carbon atom).int
getHeteroaliphaticRingCount
(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[][]
getHeteroaliphaticRings
(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
Returns the heteroaromatic ring count.int
getHeteroaromaticRingCount
(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[][]
getHeteroaromaticRings
(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
Returns the hetero ring count.int
getHeteroRingCount
(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[][]
getHeteroRings
(int size) Indentifies hetero rings in the molecule having a given size (number of atoms).int
Calculates the hyper Wiener index of the molecule.int[]
Returns the largest conjugated system in the molecule.int
Returns the largest conjugated system size (number of pi electron pairs).int[]
Identifies the atoms of the largest ring (number of atoms) in the molecule.int
Returns the largest ring size.int
getLargestRingSizeOfAtom
(int index) Returns the size of largest ring containing the specified atom.int[]
Identifies the atoms of the largest ring system (number of rings) in the molecule.int
Returns the size of the largest ring system (number of rings) in the molecule.int
Calculates the Platt index of the molecule which is equal to the total sum of the edge degrees of a molecular graph.Returns the product identifier of the plugin as given byLicenseManager
.double
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 calculation remark: if no results (no result types) then returns remark, otherwise returnsnull
.Returns the result item for the specified key and index.Deprecated, for removal: This API element is subject to removal in a future version.Some implementations of this method modify the state of the plugin, which is a very confusing behavior, so the method is now deprecated and should no longer be used.getResultAsString
(Object type, int index, Object result) Returns the specified result in String format.int
getResultCount
(Object type) Returns the number of result items for the given result key.int
getResultDomain
(Object type) Returns the calculation domainCalculatorPlugin.ATOM
orCalculatorPlugin.MOLECULE
.Returns the result molecule for display.Molecule[]
Returns the result molecules, molecular results are set in the first molecule, atomic results are set in subsequent molecules as atom labels.Object[]
Returns the result types.int
Returns the ring atom count.int
Returns the ring bond count.int
Returns the ring count.int
getRingCount
(int size) Calculates the number of rings (SSSR smallest set of smallest rings) of a given size in the molecule.int
getRingCountOfAtom
(int index) Calculates the number of rings (SSSR smallest set of smallest rings) an atom is part of.int
getRingCountOfSize
(int size) Deprecated, for removal: This API element is subject to removal in a future version.int[][]
getRings()
Identifies the rings in the molecule.int[][]
getRings
(int size) Identifies rings in the molecule having a given size.int
Returns the number of ring systems.int
getRingSystemCount
(int size) Returns the number of ring systems having a given size (number of rings) in the molecule.int
getRingSystemCountOfSize
(int size) Deprecated, for removal: This API element is subject to removal in a future version.int[][]
Identifies the ring systems in the molecule.int[][]
getRingSystems
(int size) Indentifies the ring systems in the molecule having a given size (number of rings).int
Returns the rotatable bond count.int
getShortestPath
(int index1, int index2) Calculates the shortest topological path (number of bonds) between two atoms.int[]
Identifies the smallest ring (number of stoms) in the molecule.int
Returns the smallest ring size.int
getSmallestRingSizeOfAtom
(int index) Returns the size of smallest ring containing the specified atom.int[]
Identifies the smallest ring system (number of rings) in the molecule.int
Returns the size of the smallest ring system (number of rings) in the molecule.getStereo
(int a) Calculates absolute stereo configuration of the given atom.getStereo
(int a1, int a2) Calculates absolute stereo configuration of the given double bond.int
Calculates the number of stereo double bonds.double
getStericEffectIndex
(int index) Calculates topological steric effect index (TSEI) of an atom from covalent radii values and topological distances.int
Calculates the Szeged index of the molecule.getTypeString
(Object type) Returns a string representation of the given type.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.boolean
Returnstrue
if the plugin handles multifragment molecules,false
otherwise.boolean
isAliphaticAtom
(int index) Returnstrue
if aliphatic atom.boolean
isAromaticAtom
(int index) Returnstrue
if aromatic atom.boolean
isAsymmetricAtom
(int index) Returnstrue
if asymmetric atom.boolean
isChainAtom
(int index) Returnstrue
if chain atom.boolean
isChainBond
(int index) Determines if a bond is a ring bond or a chain bond.boolean
isChiralCenter
(int index) Determines if an atom can be a tetrahedral stereogenic center.boolean
isConnected
(int index1, int index2) Returnstrue
if two atoms are in the same connected component,false
for atoms of disconnected structures.boolean
Determines if the molecule is a connected graph or not.boolean
isRingAtom
(int index) Returnstrue
if ring atom.boolean
isRingBond
(int index) Determines if a bond is a ring bond or a chain bond.boolean
isRotatableBond
(int index) Determines if a bond is a rotatable or notboolean
run()
Runs the tool.void
setAromatizationMethod
(int aromatizationMethod) Sets the aromatization method.protected void
Deprecated.For internal use only.protected void
setInputMolecule
(Molecule mol) Sets the input molecule.void
Sets license environment to be stored.void
setParameters
(Properties params) Sets the input parameters for the plugin.void
standardize
(Molecule mol) Expands sgroups.Methods inherited from class chemaxon.marvin.plugin.CalculatorPlugin
addHeavyAtomLimitChecker, addInputChecker, arrangeHydrogenIncerments, canRepeat, checkLicense, checkType, containsCoordinateBond, containsMulticenterSgroup, containsPseudoAtom, containsSRUSgroup, create, create, createModifiedInputMolecule, createStandardizedMolecule, createStandardizedMolecule, dehydrogenize, format, format, format, format, getAtomCount, getAtomIndex, getAtomIndexMap, getAtomIndexMapping, getCalcMolecule, getDisplayMolecule, getDocument, getDoublePrecision, getErrorMessage, getExplicitHydrogenData, getInputMolDim, getMainMolecule, getOriginalMolecule, getpH, getPluginResource, getQueryMoleculeErrorMessage, getResult, getResult, getResultAsRGB, getResultAsRGB, getResultAsString, getResultCount, getResultDomain, getResultMessage, getResultsAsRGB, getResultsAsRGB, getResultsAsString, getResultsAsString, getResultSource, getWarningMessage, isInputMoleculeAromatized, isLicensed, isMsCalc, isMultiThreadedRunEnabled, isNegligibleResult, isOK, isRgrouped, loadClass, loadPluginClass, loadPluginClass, readAttribute, removeWhitespace, restoreExplicitHydrogens, setAtomIndexMap, setChemicalTermsParameters, setDoublePrecision, setDoublePrecision, setDoublePrecision, setKeepHydrogens, setMolecule, setMolecule, setMolecule, setMolecule, setProgressMonitor, standardizeIonicGroups
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface chemaxon.calculator.TaggedCalculator
tags
-
Constructor Details
-
TopologyAnalyserPlugin
public TopologyAnalyserPlugin()Constructor. Creates the topology analyser object.
-
-
Method Details
-
setLicenseEnvironment
Description copied from class:CalculatorPlugin
Sets license environment to be stored.- Specified by:
setLicenseEnvironment
in interfacechemaxon.license.Licensable
- Overrides:
setLicenseEnvironment
in classCalculatorPlugin
- Parameters:
env
- environment String to be stored and passed to the LicenseHandler in the isLicensed method
-
getProductName
Returns the product identifier of the plugin as given byLicenseManager
.- Specified by:
getProductName
in classCalculatorPlugin
- Returns:
- The identifier
LicenseManager.GEOMETRY_PLUGIN_GROUP
-
setParameters
Sets the input parameters for the plugin. Parameters:- single: "true" if single fragment mode (calculation is performed separately for each fragment) (default: "false")
- type: result types, separated by ',', possible values:
SeeTopologyAnalyserPlugin
class header (data types). (default: all molecular types) - atoms: <atom1-atom2> valid for
type="shortestPath"
and bond-type calculations only, sets the atom pair, used bycxcalc
, for internal use only; API usage: callgetShortestPath(int, int)
instead.
- Overrides:
setParameters
in classCalculatorPlugin
- Parameters:
params
- is the parameter table- Throws:
PluginException
- on error- See Also:
-
setChemicalTermsArgument
Deprecated.For internal use only.Sets the argument string as specified in Chemical Terms expressions.- Overrides:
setChemicalTermsArgument
in classCalculatorPlugin
- Parameters:
arg
- is the atom string as atom1-atom2 (e.g. "2-3")- Throws:
PluginException
- on error
-
handlesMultiFragmentMolecules
public boolean handlesMultiFragmentMolecules()Returnstrue
if the plugin handles multifragment molecules,false
otherwise. In the latter case the plugin takes the fragment with more atoms if a multifragment molecule is given as input. Returnstrue
if parameter "single" is set to "false",false
otherwise (default:false
).- Overrides:
handlesMultiFragmentMolecules
in classCalculatorPlugin
- Returns:
- true if the plugin handles multifragment molecules, false otherwise
-
checkMolecule
Checks the input molecule. Throws exception if the molecule isRxnMolecule
or if the molecule contains R-groups.- Overrides:
checkMolecule
in classCalculatorPlugin
- Parameters:
mol
- is the input molecule- Throws:
PluginException
- with error message for the user if the molecule is refused
-
setInputMolecule
Sets the input molecule.- Specified by:
setInputMolecule
in classCalculatorPlugin
- Parameters:
mol
- is the input molecule- Throws:
PluginException
- on error
-
getLargestConjugatedSystem
public int[] getLargestConjugatedSystem()Returns the largest conjugated system in the molecule.- Returns:
- atom indexes of the largest conjugated system in the molecule
- Since:
- version 17.1.9
-
getLargestConjugatedSystemSize
public int getLargestConjugatedSystemSize()Returns the largest conjugated system size (number of pi electron pairs).- Returns:
- the largest conjugated system size
- Since:
- version 17.1.9
-
getColoredLargestConjugatedSystem
Returns aMolecule
in which the atoms of largest conjugated system are colored.- Returns:
- a molecule with colored atoms
- Since:
- version 17.1.23
-
getAllAtomCount
public int getAllAtomCount()Returns the atom count.- Returns:
- the atom count
-
getAliphaticAtomCount
public int getAliphaticAtomCount()Returns the aliphatic atom count.- Returns:
- the aliphatic atom count
-
getAromaticAtomCount
public int getAromaticAtomCount()Returns the aromatic atom count.- Returns:
- the aromatic atom count
-
getBondCount
public int getBondCount()Returns the bond count.- Returns:
- the bond count
-
getAliphaticBondCount
public int getAliphaticBondCount()Returns the aliphatic bond count.- Returns:
- the aliphatic bond count
-
getAromaticBondCount
public int getAromaticBondCount()Returns the aromatic bond count.- Returns:
- the aromatic bond count
-
getFragmentCount
public int getFragmentCount()Returns the number of fragments (disconnected parts) of the molecule.- Returns:
- number of fragments in the molecule
- Since:
- Marvin 5.1
-
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.
-
getRingCount
public int getRingCount()Returns the ring count.- Returns:
- the ring count
-
getAliphaticRingCount
public int getAliphaticRingCount()Returns the aliphatic ring count.- Returns:
- the aliphatic ring count
-
getAliphaticRingCount
public int getAliphaticRingCount(int size) Returns 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:
- Marvin 5.2
-
getAliphaticRingCountOfSize
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int getAliphaticRingCountOfSize(int size) Deprecated, for removal: This API element is subject to removal in a future version.Returns 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:
- Marvin 5.1
-
getAliphaticRings
public int[][] getAliphaticRings()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
-
getAliphaticRings
public int[][] getAliphaticRings(int size) 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
-
getAromaticRingCount
public int getAromaticRingCount()Returns the aromatic ring count.- Returns:
- the aromatic ring count
-
getAromaticRingCount
public int getAromaticRingCount(int size) Returns 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:
- Marvin 5.2
-
getAromaticRingCountOfSize
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int getAromaticRingCountOfSize(int size) Deprecated, for removal: This API element is subject to removal in a future version.Returns 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:
- Marvin 5.1
-
getAromaticRings
public int[][] getAromaticRings()Identifies the aromatic rings in the molecule.- Returns:
- aromatic rings of the molecule (null if the molecule is aliphatic)
- Since:
- version 5.2
-
getAromaticRings
public int[][] getAromaticRings(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
-
getHeteroRingCount
public int getHeteroRingCount()Returns the hetero ring count.- Returns:
- the hetero ring count
-
getHeteroRingCount
public int getHeteroRingCount(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
-
getHeteroRings
public int[][] getHeteroRings()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
-
getHeteroRings
public int[][] getHeteroRings(int size) Indentifies hetero 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
-
getHeteroaliphaticRingCount
public int getHeteroaliphaticRingCount()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
-
getHeteroaliphaticRingCount
public int getHeteroaliphaticRingCount(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
-
getHeteroaliphaticRings
public int[][] getHeteroaliphaticRings()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
-
getHeteroaliphaticRings
public int[][] getHeteroaliphaticRings(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
-
getHeteroaromaticRingCount
public int getHeteroaromaticRingCount()Returns the heteroaromatic ring count.- Returns:
- the heteroaromatic ring count
-
getHeteroaromaticRingCount
public int getHeteroaromaticRingCount(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
-
getHeteroaromaticRings
public int[][] getHeteroaromaticRings()Identifies heteroaromatic rings in the molecule (aromatic rings containing at least a non-carbon atom).- Returns:
- heteroaromatic rings
- Since:
- version 5.2
-
getHeteroaromaticRings
public int[][] getHeteroaromaticRings(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
-
getCarboRingCount
public int getCarboRingCount()Returns the carbo ring count.- Returns:
- the carbo ring count
-
getCarboRingCount
public int getCarboRingCount(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
-
getCarboRings
public int[][] getCarboRings()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
-
getCarboRings
public int[][] getCarboRings(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
-
getCarboaliphaticRingCount
public int getCarboaliphaticRingCount()Calculates the number of carboaliphatic rings in the molecule (aliphatic rings containing carbon atoms only).- Returns:
- number of carboaliphatic rings
-
getCarboaromaticRingCount
public int getCarboaromaticRingCount()Calculates the number of carboaromatic rings in the molecule (aromatic rings containing carbon atoms only).- Returns:
- number of carboaromatic rings
-
getRingAtomCount
public int getRingAtomCount()Returns the ring atom count.- Returns:
- the ring atom count
-
getRingBondCount
public int getRingBondCount()Returns the ring bond count.- Returns:
- the ring bond count
-
getChainAtomCount
public int getChainAtomCount()Returns the chain atom count.- Returns:
- the chain atom count
-
getChainBondCount
public int getChainBondCount()Returns the chain bond count.- Returns:
- the chain bond count
-
getRotatableBondCount
public int getRotatableBondCount()Returns the rotatable bond count.- Returns:
- the rotatable bond count
-
getSmallestRingSize
public int getSmallestRingSize()Returns the smallest ring size.- Returns:
- the smallest ring size
-
getLargestRingSize
public int getLargestRingSize()Returns the largest ring size.- Returns:
- the largest ring size
-
getFusedRingCount
public int getFusedRingCount()Calculates the number of fused rings (SSSR smallest set of smallest rings) in the molecule.- Returns:
- number of fused rings in the molecule
-
getFusedAliphaticRingCount
public int getFusedAliphaticRingCount()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
-
getFusedAliphaticRingCount
public int getFusedAliphaticRingCount(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
-
getFusedAliphaticRings
public int[][] getFusedAliphaticRings()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
-
getFusedAliphaticRings
public int[][] getFusedAliphaticRings(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
-
getFusedAromaticRingCount
public int getFusedAromaticRingCount()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
-
getFusedAromaticRingCount
public int getFusedAromaticRingCount(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
-
getFusedAromaticRings
public int[][] getFusedAromaticRings()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
-
getFusedAromaticRings
public int[][] getFusedAromaticRings(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
-
getRingSystemCount
public int getRingSystemCount()Returns the number of ring systems. Fused and spiro rings belong to to one ring system.- Returns:
- number of ring systems in the molecule
- Since:
- Marvin 5.1
-
getRingSystemCount
public int getRingSystemCount(int size) Returns the number of ring systems having a given size (number of rings) in the molecule.- Parameters:
size
- size of the ring to count- Returns:
- number of ring systems with the specified size in the molecule
- Since:
- Marvin 5.2
-
getRingSystemCountOfSize
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int getRingSystemCountOfSize(int size) Deprecated, for removal: This API element is subject to removal in a future version.Returns the number of ring systems having a given size (number of rings) in the molecule.- Parameters:
size
- size of the ring to count- Returns:
- number of ring systems with the specified size in the molecule
- Since:
- Marvin 5.1
-
getLargestRing
public int[] getLargestRing()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
-
getLargestRingSystem
public int[] getLargestRingSystem()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
-
getLargestRingSystemSize
public int getLargestRingSystemSize()Returns 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 acylcic)
- Since:
- Marvin 5.1
-
getSmallestRingSystemSize
public int getSmallestRingSystemSize()Returns 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 acylcic)
- Since:
- Marvin 5.1
-
isAromaticAtom
public boolean isAromaticAtom(int index) Returnstrue
if aromatic atom.- Parameters:
index
- is the atom index- Returns:
true
if aromatic atom
-
isAliphaticAtom
public boolean isAliphaticAtom(int index) Returnstrue
if aliphatic atom.- Parameters:
index
- is the atom index- Returns:
true
if aliphatic atom
-
isChainAtom
public boolean isChainAtom(int index) Returnstrue
if chain atom.- Parameters:
index
- is the atom index- Returns:
true
if chain atom
-
isRingAtom
public boolean isRingAtom(int index) Returnstrue
if ring atom.- Parameters:
index
- is the atom index- Returns:
true
if ring atom
-
getSmallestRingSizeOfAtom
public int getSmallestRingSizeOfAtom(int index) Returns the size of smallest ring containing the specified atom.- Parameters:
index
- is the atom index- Returns:
- the size of smallest ring containing the specified atom
-
getLargestRingSizeOfAtom
public int getLargestRingSizeOfAtom(int index) Returns the size of largest ring containing the specified atom.- Parameters:
index
- is the atom index- Returns:
- the size of largest ring containing the specified atom
-
getCyclomaticNumber
public int getCyclomaticNumber()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
-
getAsymmetricAtomCount
public int getAsymmetricAtomCount()Returns the number of asymmetric atoms.- Returns:
- the number of asymmetric atoms
-
getAsymmetricAtoms
public int[] getAsymmetricAtoms()Determines the asymmetric atoms.- Returns:
- indexes of asymmetric atoms
- Since:
- Marvin 5.3
-
isAsymmetricAtom
public boolean isAsymmetricAtom(int index) Returnstrue
if asymmetric atom.- Parameters:
index
- is the atom index- Returns:
true
if asymmetric atom
-
getChiralCenterCount
public int getChiralCenterCount()Calculates the number of tetrahedral stereogenic centers. This function identifies two chiral centers in 1,4-dimethylcyclohexane, which does not contain asymmetric atoms.- Returns:
- number of tetrahedral stereogenic center atoms
-
getChiralCenters
public int[] getChiralCenters()Determines the chiral center atoms.- Returns:
- indexes of chiral center atoms
- Since:
- Marvin 5.3
-
isChiralCenter
public boolean isChiralCenter(int index) Determines if an atom can be a tetrahedral stereogenic center.- Parameters:
index
- is the atom index- Returns:
true
if the atom is stereogenic.
-
getStereo
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
- Since:
- Marvin 5.2.1
-
getStereo
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
- Since:
- Marvin 5.2.1
-
getStereoDoubleBondCount
public int getStereoDoubleBondCount()Calculates the number of stereo double bonds.- Returns:
- number of stereo double bonds atoms
- Since:
- Marvin 5.2.1
-
getShortestPath
public int getShortestPath(int index1, int index2) Calculates the shortest topological path (number of bonds) between two atoms. It returnsInteger.MAX_VALUE
for atoms of disconnected structures.- Parameters:
index1
- is the index of the first atomindex2
- is the index of the second atom- Returns:
- the shortest path between two atoms
-
isConnected
public boolean isConnected(int index1, int index2) Returnstrue
if two atoms are in the same connected component,false
for atoms of disconnected structures. -
getPlattIndex
public int getPlattIndex()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
-
getRandicIndex
public double getRandicIndex()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
-
getBalabanIndex
public double getBalabanIndex()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)
-
getDistanceDegree
public int getDistanceDegree(int index) Calculates the distance degree of an atom, which is the sum of the corresponding row values in the distance matrix.- Parameters:
index
- atom index- Returns:
- the distance degree of the atom (Integer.MAX_VALUE for disconnected graphs)
-
getEccentricity
public int getEccentricity(int index) Calculates the eccentricity of an atom, which is the greatest value in the corresponding row of the distance matrix.- Parameters:
index
- atom index- Returns:
- the eccentricity value of the atom (Integer.MAX_VALUE for disconnected graphs)
-
getHararyIndex
public double getHararyIndex()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)
-
getHyperWienerIndex
public int getHyperWienerIndex()Calculates the hyper Wiener index of the molecule.- Returns:
- the hyper Wiener index (Integer.MAX_VALUE for disconnected graphs)
-
getSzegedIndex
public int getSzegedIndex()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
-
getWienerIndex
public int getWienerIndex()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)
-
getWienerPolarity
public int getWienerPolarity()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
-
getStericEffectIndex
public double getStericEffectIndex(int index) 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:
index
- atom index- Returns:
- the topological steric effect index of the atom
-
getBondType
public int getBondType(int index) Determines the type of a bond (aromatic bonds are automatically recognized)- Parameters:
index
- bond index- Returns:
- bond type
-
getDistanceCount
public int getDistanceCount(int index, int distance) Counts the given value in a row of the distance matrix.- Parameters:
index
- atom indexdistance
- the distance value to count- Returns:
- the distance count of a value for the atom
-
isRingBond
public boolean isRingBond(int index) Determines if a bond is a ring bond or a chain bond.- Parameters:
index
- bond index- Returns:
- true if the bond is a ring bond, false if chain bond
-
isChainBond
public boolean isChainBond(int index) Determines if a bond is a ring bond or a chain bond.- Parameters:
index
- bond index- Returns:
- true if the bond is a chain bond, false if chain bond
-
isConnectedGraph
public boolean isConnectedGraph()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.
-
isRotatableBond
public boolean isRotatableBond(int index) Determines if a bond is a rotatable or not- Parameters:
index
- bond index- Returns:
- true if the bond is a rotatable bond, false otherwise
-
getRingCountOfAtom
public int getRingCountOfAtom(int index) Calculates the number of rings (SSSR smallest set of smallest rings) an atom is part of.- Parameters:
index
- atom index- Returns:
- number of rings the atom is a member of
-
getRingCount
public int getRingCount(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 in the molecule
- Since:
- Marvin 5.2
-
getRingCountOfSize
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public int getRingCountOfSize(int size) Deprecated, for removal: This API element is subject to removal in a future version.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 in the molecule
-
getRings
public int[][] getRings()Identifies the rings in the molecule.- Returns:
- rings of the molecule (null if the molecule is acyclic)
- Since:
- version 5.2
-
getRings
public int[][] getRings(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
-
getRingSystems
public int[][] getRingSystems()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
-
getRingSystems
public int[][] getRingSystems(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
-
getSmallestRing
public int[] getSmallestRing()Identifies the smallest ring (number of stoms) in the molecule.- Returns:
- atom indexes of the smallest ring in the molecule (null when acyclic)
- Since:
- version 5.2
-
getSmallestRingSystem
public int[] getSmallestRingSystem()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
-
getBondIndex
public int getBondIndex(int i1, int i2) Returns the index of the bond connecting two atoms,-1
if the two atoms are not connected by bond.- Parameters:
i1
- the first atom indexi2
- the second atom index- Returns:
- the connectiong bond index,
-1
if there is no such bond
-
setAromatizationMethod
public void setAromatizationMethod(int aromatizationMethod) Sets the aromatization method. -
getResult
Returns the result item for the specified key and index.- Overrides:
getResult
in classCalculatorPlugin
- Parameters:
type
- is the result typeindex
- is the result index- Returns:
- the result item for the specified key and index
- Throws:
PluginException
- if the result cannot be returned- See Also:
-
getResult
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public Object getResult(Object type, String arg) throws PluginException Deprecated, for removal: This API element is subject to removal in a future version.Some implementations of this method modify the state of the plugin, which is a very confusing behavior, so the method is now deprecated and should no longer be used. If you used this method with an index argument, parse the index instead, and callgetResult(Object, int)
. Otherwise, call the appropriate setter method of the plugin to configure it with the argument, and callgetResult(Object, int)
with a 0 index.Returns the shortest path between two atoms if type is set ot "shortestPath", returns connectivity info if type is set to "connected". For internal use only.- Overrides:
getResult
in classCalculatorPlugin
- Parameters:
type
- is the result type ("shortestPath" or "connected")arg
- is the atom string as atom1-atom2 (e.g. "2-3")- Returns:
- the shortest path
- Throws:
PluginException
- on error- See Also:
-
getResultAsString
Returns the specified result in String format.- Overrides:
getResultAsString
in classCalculatorPlugin
- Parameters:
type
- is the result typeindex
- is the result indexresult
- is the result item- Returns:
- the specified result in String format
- Throws:
PluginException
- if an invalid result item is given
-
getResultCount
Returns the number of result items for the given result key.- Overrides:
getResultCount
in classCalculatorPlugin
- Parameters:
type
- is the result type- Returns:
- the number of result items
- See Also:
-
getResultDomain
Returns the calculation domainCalculatorPlugin.ATOM
orCalculatorPlugin.MOLECULE
.- Overrides:
getResultDomain
in classCalculatorPlugin
- Parameters:
type
- is the result key- Returns:
- the calculation domain
- See Also:
-
getResultTypes
Returns the result types. Possible result types: seeTopologyAnalyserPlugin
class header (data types).- Overrides:
getResultTypes
in classCalculatorPlugin
- Returns:
- the result types
-
getTypeString
Returns a string representation of the given type.- Overrides:
getTypeString
in classCalculatorPlugin
- Parameters:
type
- is the type object- Returns:
- the type string
-
run
Runs the tool.- Specified by:
run
in classCalculatorPlugin
- Returns:
- true if the calculation was successful, false on calculation problems
- Throws:
PluginException
- on error- See Also:
-
getResultMolecule
Returns the result molecule for display. Atomic results are stored in atom extra labels (MolAtom.getExtraLabel()
). Molecular results are stored in molecule properties with keys being the result types (MPropHandler.convertToString(MPropertyContainer, String)
).- Overrides:
getResultMolecule
in classCalculatorPlugin
- Returns:
- the result molecule
- Throws:
PluginException
- on error- Since:
- Marvin 4.0
-
getResultMolecules
Returns the result molecules, molecular results are set in the first molecule, atomic results are set in subsequent molecules as atom labels.- Overrides:
getResultMolecules
in classCalculatorPlugin
- Returns:
- the result molecules
- Throws:
PluginException
- on error
-
getRemark
Returns the calculation remark: if no results (no result types) then returns remark, otherwise returnsnull
.- Overrides:
getRemark
in classCalculatorPlugin
- Returns:
- the calculation remark
-
standardize
Expands sgroups.- Overrides:
standardize
in classCalculatorPlugin
- Parameters:
mol
- is the molecule to be standardized
-
getAliphaticRingCount(int)