Package ptolemy.graph.analysis
Class ZeroLengthCycleAnalysis
- java.lang.Object
-
- ptolemy.graph.analysis.Analysis
-
- ptolemy.graph.analysis.ZeroLengthCycleAnalysis
-
public class ZeroLengthCycleAnalysis extends Analysis
Analysis to check if a cyclic directed graph has a zero-length cycle. A zero-length cycle is a cycle in which the sum of all the values associated with the edges of the cycle is zero.- Since:
- Ptolemy II 4.0
- Version:
- $Id$
- Author:
- Shahrooz Shahparnia
- Pt.AcceptedRating:
- Red (ssb)
- Pt.ProposedRating:
- Red (shahrooz)
-
-
Constructor Summary
Constructors Constructor Description ZeroLengthCycleAnalysis(ZeroLengthCycleAnalyzer analyzer)
Construct an instance of this class using a given analyzer.ZeroLengthCycleAnalysis(Graph graph, ToDoubleMapping edgeLengths)
Construct an instance of this class using a default analyzer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
hasZeroLengthCycle()
Return true if a zero length cycle exists in the graph under analysis.java.lang.String
toString()
Return a description of the analysis and the associated analyzer.boolean
validAnalyzerInterface(Analyzer analyzer)
Check if a given analyzer is compatible with this analysis.-
Methods inherited from class ptolemy.graph.analysis.Analysis
analyzer, changeAnalyzer, graph, valid
-
-
-
-
Constructor Detail
-
ZeroLengthCycleAnalysis
public ZeroLengthCycleAnalysis(Graph graph, ToDoubleMapping edgeLengths)
Construct an instance of this class using a default analyzer. The default analyzer runs in O(N^3) in which N is the number of nodes.- Parameters:
graph
- The given graph.edgeLengths
- The lengths associated with the edges of the graph.
-
ZeroLengthCycleAnalysis
public ZeroLengthCycleAnalysis(ZeroLengthCycleAnalyzer analyzer)
Construct an instance of this class using a given analyzer.- Parameters:
analyzer
- The given analyzer.
-
-
Method Detail
-
hasZeroLengthCycle
public boolean hasZeroLengthCycle()
Return true if a zero length cycle exists in the graph under analysis.- Returns:
- True if the graph has a zero length cycle.
-
toString
public java.lang.String toString()
Return a description of the analysis and the associated analyzer.
-
validAnalyzerInterface
public boolean validAnalyzerInterface(Analyzer analyzer)
Check if a given analyzer is compatible with this analysis. In other words if it is possible to use it to compute the computation associated with this analysis.- Overrides:
validAnalyzerInterface
in classAnalysis
- Parameters:
analyzer
- The given analyzer.- Returns:
- True if the given analyzer is valid for this analysis.
-
-