Package org.openscience.cdk.graph
Interface CycleFinder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Cycles
find(IAtomContainer molecule)
Find the cycles of the provided molecule.Cycles
find(IAtomContainer molecule, int length)
Find the cycles of the provided molecule.Cycles
find(IAtomContainer molecule, int[][] graph, int length)
Find the cycles of the provided molecule when an adjacent relation (graph) is already available.
-
-
-
Method Detail
-
find
Cycles find(IAtomContainer molecule) throws Intractable
Find the cycles of the provided molecule.- Parameters:
molecule
- a molecule, can be disconnected.- Returns:
- an instance for querying the cycles (rings) in the molecule
- Throws:
Intractable
- thrown if problem could not be solved within some predefined bounds.
-
find
Cycles find(IAtomContainer molecule, int length) throws Intractable
Find the cycles of the provided molecule.- Parameters:
molecule
- a molecule, can be disconnected.length
- maximum length cycle to find (set to molecule.getAtomCount() for all)- Returns:
- an instance for querying the cycles (rings) in the molecule
- Throws:
Intractable
- thrown if problem could not be solved within some predefined bounds.
-
find
Cycles find(IAtomContainer molecule, int[][] graph, int length) throws Intractable
Find the cycles of the provided molecule when an adjacent relation (graph) is already available. The graph can be obtained throughGraphUtil.toAdjList(IAtomContainer)
, for conveniencefind(IAtomContainer, int)
will automatically create the graph.- Parameters:
molecule
- input structuregraph
- adjacency list representation for fast traversallength
- maximum length cycle to find (set to molecule.getAtomCount() for all)- Returns:
- an instance for querying the cycles (rings) in the molecule
- Throws:
Intractable
- thrown if problem could not be solved within some predefined bounds.
-
-