Package org.openscience.cdk.graph
Class EssentialCycles
- java.lang.Object
-
- org.openscience.cdk.graph.EssentialCycles
-
public final class EssentialCycles extends Object
Determine the uniquely defined essential cycles of a graph. A cycle is essential if it a member of all minimum cycle bases. If a graph has a single minimum cycle basis (MCB) then all of its cycles are essential. Unlikely theRelevantCycles
the number of essential cycles is always polynomial however may not be able generate the cycle space of a graph.- Author:
- John May
- See Also:
RelevantCycles
,MinimumCycleBasis
,SSSRFinder.findEssentialRings()
,GraphUtil
- Source code:
- main
- Belongs to CDK module:
- core
- Keywords:
- essential rings, essential cycles, graph, cycles, rings
-
-
Constructor Summary
Constructors Constructor Description EssentialCycles(int[][] graph)
Determine the essential cycles given a graph.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int[][]
paths()
The paths for each essential cycle.int
size()
Number of essential cycles.
-
-
-
Constructor Detail
-
EssentialCycles
public EssentialCycles(int[][] graph)
Determine the essential cycles given a graph. Adjacency list representation. For maximum performance the graph should be preprocessed and run on separate biconnected components or fused cycles (see.RingSearch
.- Parameters:
graph
- a molecule graph- See Also:
GraphUtil.toAdjList(org.openscience.cdk.interfaces.IAtomContainer)
,RingSearch
-
-