0
|
1 <html>
|
|
2 <head>
|
|
3 <title>MayaChemTools:Documentation:Graph.pm</title>
|
|
4 <meta http-equiv="content-type" content="text/html;charset=utf-8">
|
|
5 <link rel="stylesheet" type="text/css" href="../../css/MayaChemTools.css">
|
|
6 </head>
|
|
7 <body leftmargin="20" rightmargin="20" topmargin="10" bottommargin="10">
|
|
8 <br/>
|
|
9 <center>
|
|
10 <a href="http://www.mayachemtools.org" title="MayaChemTools Home"><img src="../../images/MayaChemToolsLogo.gif" border="0" alt="MayaChemTools"></a>
|
|
11 </center>
|
|
12 <br/>
|
|
13 <div class="DocNav">
|
|
14 <table width="100%" border=0 cellpadding=0 cellspacing=2>
|
|
15 <tr align="left" valign="top"><td width="33%" align="left"><a href="./PathsTraversal.html" title="PathsTraversal.html">Previous</a> <a href="./index.html" title="Table of Contents">TOC</a> <a href="./HTMLUtil.html" title="HTMLUtil.html">Next</a></td><td width="34%" align="middle"><strong>Graph.pm</strong></td><td width="33%" align="right"><a href="././code/Graph.html" title="View source code">Code</a> | <a href="./../pdf/Graph.pdf" title="PDF US Letter Size">PDF</a> | <a href="./../pdfgreen/Graph.pdf" title="PDF US Letter Size with narrow margins: www.changethemargins.com">PDFGreen</a> | <a href="./../pdfa4/Graph.pdf" title="PDF A4 Size">PDFA4</a> | <a href="./../pdfa4green/Graph.pdf" title="PDF A4 Size with narrow margins: www.changethemargins.com">PDFA4Green</a></td></tr>
|
|
16 </table>
|
|
17 </div>
|
|
18 <p>
|
|
19 </p>
|
|
20 <h2>NAME</h2>
|
|
21 <p>Graph</p>
|
|
22 <p>
|
|
23 </p>
|
|
24 <h2>SYNOPSIS</h2>
|
|
25 <p>use Graph;</p>
|
|
26 <p>use Graph qw(:all);</p>
|
|
27 <p>
|
|
28 </p>
|
|
29 <h2>DESCRIPTION</h2>
|
|
30 <p><strong>Graph</strong> class provides the following methods:</p>
|
|
31 <p> <a href="#new">new</a>, <a href="#addcycle">AddCycle</a>, <a href="#addedge">AddEdge</a>, <a href="#addedges">AddEdges</a>, <a href="#addpath">AddPath</a>, <a href="#addvertex">AddVertex</a>, <a href="#addvertices">AddVertices</a>, <a href="#clearcycles">ClearCycles</a>
|
|
32 , <a href="#copy">Copy</a>, <a href="#copyedgesproperties">CopyEdgesProperties</a>, <a href="#copyverticesandedges">CopyVerticesAndEdges</a>, <a href="#copyverticesproperties">CopyVerticesProperties</a>
|
|
33 , <a href="#deletecycle">DeleteCycle</a>, <a href="#deleteedge">DeleteEdge</a>, <a href="#deleteedgeproperties">DeleteEdgeProperties</a>, <a href="#deleteedgeproperty">DeleteEdgeProperty</a>, <a href="#deleteedges">DeleteEdges</a>
|
|
34 , <a href="#deleteedgesproperties">DeleteEdgesProperties</a>, <a href="#deleteedgesproperty">DeleteEdgesProperty</a>, <a href="#deletegraphproperties">DeleteGraphProperties</a>
|
|
35 , <a href="#deletegraphproperty">DeleteGraphProperty</a>, <a href="#deletepath">DeletePath</a>, <a href="#deletevertex">DeleteVertex</a>, <a href="#deletevertexproperties">DeleteVertexProperties</a>
|
|
36 , <a href="#deletevertexproperty">DeleteVertexProperty</a>, <a href="#deletevertices">DeleteVertices</a>, <a href="#deleteverticesproperty">DeleteVerticesProperty</a>, <a href="#detectcycles">DetectCycles</a>
|
|
37 , <a href="#getadjacencymatrix">GetAdjacencyMatrix</a>, <a href="#getadmittancematrix">GetAdmittanceMatrix</a>, <a href="#getallpaths">GetAllPaths</a>, <a href="#getallpathsstartingat">GetAllPathsStartingAt</a>
|
|
38 , <a href="#getallpathsstartingatwithlength">GetAllPathsStartingAtWithLength</a>, <a href="#getallpathsstartingatwithlengthupto">GetAllPathsStartingAtWithLengthUpto</a>
|
|
39 , <a href="#getallpathswithlength">GetAllPathsWithLength</a>, <a href="#getallpathswithlengthupto">GetAllPathsWithLengthUpto</a>, <a href="#getcircumference">GetCircumference</a>
|
|
40 , <a href="#getconnectedcomponentsvertices">GetConnectedComponentsVertices</a>, <a href="#getcycles">GetCycles</a>, <a href="#getcycleswithevensize">GetCyclesWithEvenSize</a>
|
|
41 , <a href="#getcycleswithoddsize">GetCyclesWithOddSize</a>, <a href="#getcycleswithsize">GetCyclesWithSize</a>, <a href="#getcycleswithsizegreaterthan">GetCyclesWithSizeGreaterThan</a>
|
|
42 , <a href="#getcycleswithsizelessthan">GetCyclesWithSizeLessThan</a>, <a href="#getdegree">GetDegree</a>, <a href="#getdegreematrix">GetDegreeMatrix</a>, <a href="#getdistancematrix">GetDistanceMatrix</a>
|
|
43 , <a href="#getedgecycles">GetEdgeCycles</a>, <a href="#getedgecycleswithevensize">GetEdgeCyclesWithEvenSize</a>, <a href="#getedgecycleswithoddsize">GetEdgeCyclesWithOddSize</a>
|
|
44 , <a href="#getedgecycleswithsize">GetEdgeCyclesWithSize</a>, <a href="#getedgecycleswithsizegreaterthan">GetEdgeCyclesWithSizeGreaterThan</a>
|
|
45 , <a href="#getedgecycleswithsizelessthan">GetEdgeCyclesWithSizeLessThan</a>, <a href="#getedgeproperties">GetEdgeProperties</a>, <a href="#getedgeproperty">GetEdgeProperty</a>, <a href="#getedges">GetEdges</a>
|
|
46 , <a href="#getedgesproperty">GetEdgesProperty</a>, <a href="#getfusedandnonfusedcycles">GetFusedAndNonFusedCycles</a>, <a href="#getgirth">GetGirth</a>, <a href="#getgraphproperties">GetGraphProperties</a>
|
|
47 , <a href="#getgraphproperty">GetGraphProperty</a>, <a href="#getincidencematrix">GetIncidenceMatrix</a>, <a href="#getisolatedvertices">GetIsolatedVertices</a>, <a href="#getkirchhoffmatrix">GetKirchhoffMatrix</a>
|
|
48 , <a href="#getlaplacianmatrix">GetLaplacianMatrix</a>, <a href="#getlargestcycle">GetLargestCycle</a>, <a href="#getlargestedgecycle">GetLargestEdgeCycle</a>, <a href="#getlargestvertexcycle">GetLargestVertexCycle</a>
|
|
49 , <a href="#getleafvertices">GetLeafVertices</a>, <a href="#getmaximumdegree">GetMaximumDegree</a>, <a href="#getmininumdegree">GetMininumDegree</a>, <a href="#getneighborhoodvertices">GetNeighborhoodVertices</a>
|
|
50 , <a href="#getneighborhoodverticeswithradiusupto">GetNeighborhoodVerticesWithRadiusUpto</a>, <a href="#getneighborhoodverticeswithsuccessors">GetNeighborhoodVerticesWithSuccessors</a>
|
|
51 , <a href="#getneighborhoodverticeswithsuccessorsandradiusupto">GetNeighborhoodVerticesWithSuccessorsAndRadiusUpto</a>, <a href="#getneighbors">GetNeighbors</a>
|
|
52 , <a href="#getnormalizedlaplacianmatrix">GetNormalizedLaplacianMatrix</a>, <a href="#getnumofcycles">GetNumOfCycles</a>, <a href="#getnumofcycleswithevensize">GetNumOfCyclesWithEvenSize</a>
|
|
53 , <a href="#getnumofcycleswithoddsize">GetNumOfCyclesWithOddSize</a>, <a href="#getnumofcycleswithsize">GetNumOfCyclesWithSize</a>
|
|
54 , <a href="#getnumofcycleswithsizegreaterthan">GetNumOfCyclesWithSizeGreaterThan</a>, <a href="#getnumofcycleswithsizelessthan">GetNumOfCyclesWithSizeLessThan</a>
|
|
55 , <a href="#getnumofedgecycles">GetNumOfEdgeCycles</a>, <a href="#getnumofedgecycleswithevensize">GetNumOfEdgeCyclesWithEvenSize</a>, <a href="#getnumofedgecycleswithoddsize">GetNumOfEdgeCyclesWithOddSize</a>
|
|
56 , <a href="#getnumofedgecycleswithsize">GetNumOfEdgeCyclesWithSize</a>, <a href="#getnumofedgecycleswithsizegreaterthan">GetNumOfEdgeCyclesWithSizeGreaterThan</a>
|
|
57 , <a href="#getnumofedgecycleswithsizelessthan">GetNumOfEdgeCyclesWithSizeLessThan</a>, <a href="#getnumofvertexcycles">GetNumOfVertexCycles</a>
|
|
58 , <a href="#getnumofvertexcycleswithevensize">GetNumOfVertexCyclesWithEvenSize</a>, <a href="#getnumofvertexcycleswithoddsize">GetNumOfVertexCyclesWithOddSize</a>
|
|
59 , <a href="#getnumofvertexcycleswithsize">GetNumOfVertexCyclesWithSize</a>, <a href="#getnumofvertexcycleswithsizegreaterthan">GetNumOfVertexCyclesWithSizeGreaterThan</a>
|
|
60 , <a href="#getnumofvertexcycleswithsizelessthan">GetNumOfVertexCyclesWithSizeLessThan</a>, <a href="#getpaths">GetPaths</a>, <a href="#getpathsbetween">GetPathsBetween</a>
|
|
61 , <a href="#getpathsstartingat">GetPathsStartingAt</a>, <a href="#getpathsstartingatwithlength">GetPathsStartingAtWithLength</a>
|
|
62 , <a href="#getpathsstartingatwithlengthupto">GetPathsStartingAtWithLengthUpto</a>, <a href="#getpathswithlength">GetPathsWithLength</a>, <a href="#getpathswithlengthupto">GetPathsWithLengthUpto</a>
|
|
63 , <a href="#getsiedeladjacencymatrix">GetSiedelAdjacencyMatrix</a>, <a href="#getsizeoflargestcycle">GetSizeOfLargestCycle</a>, <a href="#getsizeoflargestedgecycle">GetSizeOfLargestEdgeCycle</a>
|
|
64 , <a href="#getsizeoflargestvertexcycle">GetSizeOfLargestVertexCycle</a>, <a href="#getsizeofsmallestcycle">GetSizeOfSmallestCycle</a>, <a href="#getsizeofsmallestedgecycle">GetSizeOfSmallestEdgeCycle</a>
|
|
65 , <a href="#getsizeofsmallestvertexcycle">GetSizeOfSmallestVertexCycle</a>, <a href="#getsmallestcycle">GetSmallestCycle</a>, <a href="#getsmallestedgecycle">GetSmallestEdgeCycle</a>
|
|
66 , <a href="#getsmallestvertexcycle">GetSmallestVertexCycle</a>, <a href="#gettopologicallysortedvertices">GetTopologicallySortedVertices</a>, <a href="#getvertex">GetVertex</a>
|
|
67 , <a href="#getvertexcycles">GetVertexCycles</a>, <a href="#getvertexcycleswithevensize">GetVertexCyclesWithEvenSize</a>, <a href="#getvertexcycleswithoddsize">GetVertexCyclesWithOddSize</a>
|
|
68 , <a href="#getvertexcycleswithsize">GetVertexCyclesWithSize</a>, <a href="#getvertexcycleswithsizegreaterthan">GetVertexCyclesWithSizeGreaterThan</a>
|
|
69 , <a href="#getvertexcycleswithsizelessthan">GetVertexCyclesWithSizeLessThan</a>, <a href="#getvertexproperties">GetVertexProperties</a>, <a href="#getvertexproperty">GetVertexProperty</a>
|
|
70 , <a href="#getvertexwithlargestdegree">GetVertexWithLargestDegree</a>, <a href="#getvertexwithsmallestdegree">GetVertexWithSmallestDegree</a>, <a href="#getvertices">GetVertices</a>
|
|
71 , <a href="#getverticesproperty">GetVerticesProperty</a>, <a href="#getverticeswithdegreelessthan">GetVerticesWithDegreeLessThan</a>, <a href="#hascycle">HasCycle</a>, <a href="#hasedge">HasEdge</a>
|
|
72 , <a href="#hasedgeproperty">HasEdgeProperty</a>, <a href="#hasedges">HasEdges</a>, <a href="#hasfusedcycles">HasFusedCycles</a>, <a href="#hasgraphproperty">HasGraphProperty</a>, <a href="#haspath">HasPath</a>, <a href="#hasvertex">HasVertex</a>
|
|
73 , <a href="#hasvertexproperty">HasVertexProperty</a>, <a href="#hasvertices">HasVertices</a>, <a href="#isacyclic">IsAcyclic</a>, <a href="#isacyclicedge">IsAcyclicEdge</a>, <a href="#isacyclicvertex">IsAcyclicVertex</a>
|
|
74 , <a href="#iscyclic">IsCyclic</a>, <a href="#iscyclicedge">IsCyclicEdge</a>, <a href="#iscyclicvertex">IsCyclicVertex</a>, <a href="#isgraph">IsGraph</a>, <a href="#isisolatedvertex">IsIsolatedVertex</a>, <a href="#isleafvertex">IsLeafVertex</a>
|
|
75 , <a href="#isunicyclic">IsUnicyclic</a>, <a href="#isunicyclicedge">IsUnicyclicEdge</a>, <a href="#isunicyclicvertex">IsUnicyclicVertex</a>, <a href="#setactivecyclicpaths">SetActiveCyclicPaths</a>
|
|
76 , <a href="#setedgeproperties">SetEdgeProperties</a>, <a href="#setedgeproperty">SetEdgeProperty</a>, <a href="#setedgesproperty">SetEdgesProperty</a>, <a href="#setgraphproperties">SetGraphProperties</a>
|
|
77 , <a href="#setgraphproperty">SetGraphProperty</a>, <a href="#setvertexproperties">SetVertexProperties</a>, <a href="#setvertexproperty">SetVertexProperty</a>, <a href="#setverticesproperty">SetVerticesProperty</a>
|
|
78 , <a href="#stringifyedgesproperties">StringifyEdgesProperties</a>, <a href="#stringifygraph">StringifyGraph</a>, <a href="#stringifygraphproperties">StringifyGraphProperties</a>
|
|
79 , <a href="#stringifyproperties">StringifyProperties</a>, <a href="#stringifyverticesandedges">StringifyVerticesAndEdges</a>, <a href="#stringifyverticesproperties">StringifyVerticesProperties</a>
|
|
80 , <a href="#updateedgeproperty">UpdateEdgeProperty</a>, <a href="#updatevertexproperty">UpdateVertexProperty</a>
|
|
81 </p><p>
|
|
82 </p>
|
|
83 <h2>METHODS</h2>
|
|
84 <dl>
|
|
85 <dt><strong><a name="new" class="item"><strong>new</strong></a></strong></dt>
|
|
86 <dd>
|
|
87 <div class="OptionsBox">
|
|
88 $NewGraph = new Graph([@VertexIDs]);</div>
|
|
89 <p>Using specified <em>Graph</em> <em>VertexIDs</em>, <strong>new</strong> method creates a new <strong>Graph</strong> object and returns
|
|
90 newly created <strong>Graph</strong> object.</p>
|
|
91 <p>Examples:</p>
|
|
92 <div class="OptionsBox">
|
|
93 $Graph = new Graph();
|
|
94 <br/> $Graph = new Graph(@VertexIDs);</div>
|
|
95 </dd>
|
|
96 <dt><strong><a name="addcycle" class="item"><strong>AddCycle</strong></a></strong></dt>
|
|
97 <dd>
|
|
98 <div class="OptionsBox">
|
|
99 $Graph->AddCycle(@VertexIDs);</div>
|
|
100 <p>Adds edges between successive pair of <em>VertexIDs</em> including an additional edge from the last
|
|
101 to first vertex ID to complete the cycle to <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
102 </dd>
|
|
103 <dt><strong><a name="addedge" class="item"><strong>AddEdge</strong></a></strong></dt>
|
|
104 <dd>
|
|
105 <div class="OptionsBox">
|
|
106 $Graph->AddEdge($VertexID1, $VertexID2);</div>
|
|
107 <p>Adds an edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
108 </dd>
|
|
109 <dt><strong><a name="addedges" class="item"><strong>AddEdges</strong></a></strong></dt>
|
|
110 <dd>
|
|
111 <div class="OptionsBox">
|
|
112 $Graph->AddEdges(@VertexIDs);</div>
|
|
113 <p>Adds edges between successive pair of <em>VertexIDs</em> in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
114 </dd>
|
|
115 <dt><strong><a name="addpath" class="item"><strong>AddPath</strong></a></strong></dt>
|
|
116 <dd>
|
|
117 <div class="OptionsBox">
|
|
118 $Graph->AddPath(@VertexIDs);</div>
|
|
119 <p>Adds edges between successive pair of <em>VertexIDs</em> in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
120 </dd>
|
|
121 <dt><strong><a name="addvertex" class="item"><strong>AddVertex</strong></a></strong></dt>
|
|
122 <dd>
|
|
123 <div class="OptionsBox">
|
|
124 $Graph->AddVertex($VertexID);</div>
|
|
125 <p>Adds <em>VertexID</em> to <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
126 </dd>
|
|
127 <dt><strong><a name="addvertices" class="item"><strong>AddVertices</strong></a></strong></dt>
|
|
128 <dd>
|
|
129 <div class="OptionsBox">
|
|
130 $Graph->AddVertices(@VertexIDs);</div>
|
|
131 <p>Adds vertices using <em>VertexIDs</em> to <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
132 </dd>
|
|
133 <dt><strong><a name="clearcycles" class="item"><strong>ClearCycles</strong></a></strong></dt>
|
|
134 <dd>
|
|
135 <div class="OptionsBox">
|
|
136 $Graph->ClearCycles();</div>
|
|
137 <p>Delete all cycle properties assigned to graph, vertices, and edges by <em>DetectCycles</em> method.</p>
|
|
138 </dd>
|
|
139 <dt><strong><a name="copy" class="item"><strong>Copy</strong></a></strong></dt>
|
|
140 <dd>
|
|
141 <div class="OptionsBox">
|
|
142 $NewGraph = $Graph->Copy();</div>
|
|
143 <p>Copies <em>Graph</em> and its associated data using <strong>Storable::dclone</strong> and returns a new
|
|
144 <strong>Graph</strong> object.</p>
|
|
145 </dd>
|
|
146 <dt><strong><a name="copyedgesproperties" class="item"><strong>CopyEdgesProperties</strong></a></strong></dt>
|
|
147 <dd>
|
|
148 <div class="OptionsBox">
|
|
149 $OtherGraph = $Graph->CopyEdgesProperties($OtherGraph);</div>
|
|
150 <p>Copies all properties associated with edges from <em>Graph</em> to <em>$OtherGraph</em> and
|
|
151 returns <em>OtherGraph</em>.</p>
|
|
152 </dd>
|
|
153 <dt><strong><a name="copyverticesandedges" class="item"><strong>CopyVerticesAndEdges</strong></a></strong></dt>
|
|
154 <dd>
|
|
155 <div class="OptionsBox">
|
|
156 $OtherGraph = $Graph->CopyVerticesAndEdges($OtherGraph);</div>
|
|
157 <p>Copies all vertices and edges from <em>Graph</em> to <em>$OtherGraph</em> and returns <em>OtherGraph</em>.</p>
|
|
158 </dd>
|
|
159 <dt><strong><a name="copyverticesproperties" class="item"><strong>CopyVerticesProperties</strong></a></strong></dt>
|
|
160 <dd>
|
|
161 <div class="OptionsBox">
|
|
162 $OtherGraph = $Graph->CopyVerticesProperties($OtherGraph);</div>
|
|
163 <p>Copies all properties associated with vertices from <em>Graph</em> to <em>$OtherGraph</em> and
|
|
164 returns <em>OtherGraph</em>.</p>
|
|
165 </dd>
|
|
166 <dt><strong><a name="deletecycle" class="item"><strong>DeleteCycle</strong></a></strong></dt>
|
|
167 <dd>
|
|
168 <div class="OptionsBox">
|
|
169 $Graph->DeleteCycle(@VertexIDs);</div>
|
|
170 <p>Deletes edges between successive pair of <em>VertexIDs</em> including an additional edge from the last
|
|
171 to first vertex ID to complete the cycle to <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
172 </dd>
|
|
173 <dt><strong><a name="deleteedge" class="item"><strong>DeleteEdge</strong></a></strong></dt>
|
|
174 <dd>
|
|
175 <div class="OptionsBox">
|
|
176 $Graph->DeleteEdge($VertexID1, $VertexID2);</div>
|
|
177 <p>Deletes an edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
178 </dd>
|
|
179 <dt><strong><a name="deleteedgeproperties" class="item"><strong>DeleteEdgeProperties</strong></a></strong></dt>
|
|
180 <dd>
|
|
181 <div class="OptionsBox">
|
|
182 $Graph->DeleteEdgeProperties($VertexID1, $VertexID2);</div>
|
|
183 <p>Deletes all properties associated with edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>
|
|
184 and returns <em>Graph</em>.</p>
|
|
185 </dd>
|
|
186 <dt><strong><a name="deleteedgeproperty" class="item"><strong>DeleteEdgeProperty</strong></a></strong></dt>
|
|
187 <dd>
|
|
188 <div class="OptionsBox">
|
|
189 $Graph->DeleteEdgeProperty($PropertyName, $VertexID1, $VertexID2);</div>
|
|
190 <p>Deletes <em>PropertyName</em> associated with edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>
|
|
191 and returns <em>Graph</em>.</p>
|
|
192 </dd>
|
|
193 <dt><strong><a name="deleteedges" class="item"><strong>DeleteEdges</strong></a></strong></dt>
|
|
194 <dd>
|
|
195 <div class="OptionsBox">
|
|
196 $Graph->DeleteEdges(@VertexIDs);</div>
|
|
197 <p>Deletes edges between successive pair of <em>VertexIDs</em> and returns <em>Graph</em>.</p>
|
|
198 </dd>
|
|
199 <dt><strong><a name="deleteedgesproperties" class="item"><strong>DeleteEdgesProperties</strong></a></strong></dt>
|
|
200 <dd>
|
|
201 <div class="OptionsBox">
|
|
202 $Graph->DeleteEdgesProperties(@VertexIDs);</div>
|
|
203 <p>Deletes all properties associated with edges between successive pair of <em>VertexIDs</em> and
|
|
204 returns <em>Graph</em>.</p>
|
|
205 </dd>
|
|
206 <dt><strong><a name="deleteedgesproperty" class="item"><strong>DeleteEdgesProperty</strong></a></strong></dt>
|
|
207 <dd>
|
|
208 <div class="OptionsBox">
|
|
209 $Graph->DeleteEdgesProperty($PropertyName, @VertexIDs);</div>
|
|
210 <p>Deletes <em>PropertyName</em> associated with edges between successive pair of <em>VertexIDs</em>
|
|
211 and returns <em>Graph</em>.</p>
|
|
212 </dd>
|
|
213 <dt><strong><a name="deletegraphproperties" class="item"><strong>DeleteGraphProperties</strong></a></strong></dt>
|
|
214 <dd>
|
|
215 <div class="OptionsBox">
|
|
216 $Graph->DeleteGraphProperties();</div>
|
|
217 <p>Deletes all properties associated as graph not including properties associated to vertices
|
|
218 or edges and returns <em>Graph</em>.</p>
|
|
219 </dd>
|
|
220 <dt><strong><a name="deletegraphproperty" class="item"><strong>DeleteGraphProperty</strong></a></strong></dt>
|
|
221 <dd>
|
|
222 <div class="OptionsBox">
|
|
223 $Graph->DeleteGraphProperty($PropertyName);</div>
|
|
224 <p>Deletes a <em>PropertyName</em> associated as graph property and returns <em>Graph</em>.</p>
|
|
225 </dd>
|
|
226 <dt><strong><a name="deletepath" class="item"><strong>DeletePath</strong></a></strong></dt>
|
|
227 <dd>
|
|
228 <div class="OptionsBox">
|
|
229 $Graph->DeletePath(@VertexIDs);</div>
|
|
230 <p>Deletes edges between successive pair of <em>VertexIDs</em> in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
231 </dd>
|
|
232 <dt><strong><a name="deletevertex" class="item"><strong>DeleteVertex</strong></a></strong></dt>
|
|
233 <dd>
|
|
234 <div class="OptionsBox">
|
|
235 $Graph->DeleteVertex($VertexID);</div>
|
|
236 <p>Deletes <em>VertexID</em> to <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
237 </dd>
|
|
238 <dt><strong><a name="deletevertexproperties" class="item"><strong>DeleteVertexProperties</strong></a></strong></dt>
|
|
239 <dd>
|
|
240 <div class="OptionsBox">
|
|
241 $Graph->DeleteVertexProperties($VertexID);</div>
|
|
242 <p>Deletes all properties associated with <em>VertexID</em> and returns <em>Graph</em>.</p>
|
|
243 </dd>
|
|
244 <dt><strong><a name="deletevertexproperty" class="item"><strong>DeleteVertexProperty</strong></a></strong></dt>
|
|
245 <dd>
|
|
246 <div class="OptionsBox">
|
|
247 $Graph->DeleteVertexProperty($PropertyName, $VertexID);</div>
|
|
248 <p>Deletes a <em>PropertyName</em> associated with <em>VertexID</em> and returns <em>Graph</em>.</p>
|
|
249 </dd>
|
|
250 <dt><strong><a name="deletevertices" class="item"><strong>DeleteVertices</strong></a></strong></dt>
|
|
251 <dd>
|
|
252 <div class="OptionsBox">
|
|
253 $Graph->DeleteVertices(@VertexIDs);</div>
|
|
254 <p>Deletes vertices specified in <em>VertexIDs</em> and returns <em>Graph</em>.</p>
|
|
255 </dd>
|
|
256 <dt><strong><a name="deleteverticesproperty" class="item"><strong>DeleteVerticesProperty</strong></a></strong></dt>
|
|
257 <dd>
|
|
258 <div class="OptionsBox">
|
|
259 $Graph->DeleteVerticesProperty($PropertyName, @VertexIDs);</div>
|
|
260 <p>Deletes a <em>PropertyName</em> associated with <em>VertexIDs</em> and returns <em>Graph</em>.</p>
|
|
261 </dd>
|
|
262 <dt><strong><a name="detectcycles" class="item"><strong>DetectCycles</strong></a></strong></dt>
|
|
263 <dd>
|
|
264 <div class="OptionsBox">
|
|
265 $Graph->DetectCycles();</div>
|
|
266 <p>Detect cycles using <strong>CyclesDetection</strong> class and associate found cycles to <em>Graph</em>
|
|
267 object as graph properties: <em>ActiveCyclicPaths, AllCyclicPaths, IndependentCyclicPaths</em>.</p>
|
|
268 <p>Notes:</p>
|
|
269 <div class="OptionsBox">
|
|
270 . CyclesDetection class detects all cycles in the graph and filters
|
|
271 them to find independent cycles.
|
|
272 <br/> . All cycles related methods in the graph operate on
|
|
273 ActiveCyclicPaths. By default, active cyclic paths correspond
|
|
274 to IndependentCyclicPaths. This behavior can be changed
|
|
275 using SetActiveCyclicPaths method.</div>
|
|
276 </dd>
|
|
277 <dt><strong><a name="getadjacencymatrix" class="item"><strong>GetAdjacencyMatrix</strong></a></strong></dt>
|
|
278 <dd>
|
|
279 <div class="OptionsBox">
|
|
280 $GraphMatrix = $Graph->GetAdjacencyMatrix();</div>
|
|
281 <p>Returns adjacency matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
282 corresponding to graph vertices returned by GetVertices method.</p>
|
|
283 <p>For a simple graph G with n vertices, the adjacency matrix for G is a n x n square matrix and
|
|
284 its elements Mij are:</p>
|
|
285 <div class="OptionsBox">
|
|
286 . 0 if i == j
|
|
287 <br/> . 1 if i != j and vertex Vi is adjacent to vertex Vj
|
|
288 <br/> . 0 if i != j and vertex Vi is not adjacent to vertex Vj</div>
|
|
289 </dd>
|
|
290 <dt><strong><a name="getadmittancematrix" class="item"><strong>GetAdmittanceMatrix</strong></a></strong></dt>
|
|
291 <dd>
|
|
292 <div class="OptionsBox">
|
|
293 $GraphMatrix = $Graph->GetAdmittanceMatrix();</div>
|
|
294 <p>Returns admittance matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
295 corresponding to graph vertices returned by GetVertices method.</p>
|
|
296 <p>For a simple graph G with n vertices, the adjacency matrix for G is a n x n square matrix and
|
|
297 its elements Mij are:</p>
|
|
298 <div class="OptionsBox">
|
|
299 . 0 if i == j
|
|
300 <br/> . 1 if i != j and vertex Vi is adjacent to vertex Vj
|
|
301 <br/> . 0 if i != j and vertex Vi is not adjacent to vertex Vj</div>
|
|
302 </dd>
|
|
303 <dt><strong><a name="getallpaths" class="item"><strong>GetAllPaths</strong></a></strong></dt>
|
|
304 <dd>
|
|
305 <div class="OptionsBox">
|
|
306 $PathsRef = $Graph->GetAllPaths([$AllowCycles]);</div>
|
|
307 <p>Returns a reference to an array containing <strong>Path</strong> objects corresponding to all possible
|
|
308 lengths starting from each vertex in graph with sharing of edges in paths traversed.
|
|
309 By default, cycles are included in paths. A path containing a cycle is terminated at a vertex
|
|
310 completing the cycle. Duplicate paths are not removed.</p>
|
|
311 </dd>
|
|
312 <dt><strong><a name="getallpathsstartingat" class="item"><strong>GetAllPathsStartingAt</strong></a></strong></dt>
|
|
313 <dd>
|
|
314 <div class="OptionsBox">
|
|
315 @Paths = $Graph->GetAllPathsStartingAt($StartVertexID,
|
|
316 [$AllowCycles]);</div>
|
|
317 <p>Returns an array of <em>Path</em> objects starting from a <em>StartVertexID</em> of any length
|
|
318 with sharing of edges in paths traversed. By default, cycles are included in paths.
|
|
319 A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
320 </dd>
|
|
321 <dt><strong><a name="getallpathsstartingatwithlength" class="item"><strong>GetAllPathsStartingAtWithLength</strong></a></strong></dt>
|
|
322 <dd>
|
|
323 <div class="OptionsBox">
|
|
324 @Paths = $Graph->GetAllPathsStartingAtWithLength($StartVertexID,
|
|
325 $Length, [$AllowCycles]);</div>
|
|
326 <p>Returns an array of <em>Path</em> objects starting from a <em>StartVertexID</em> of specified <em>Length</em>
|
|
327 with sharing of edges in paths traversed. By default, cycles are included in paths.
|
|
328 A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
329 </dd>
|
|
330 <dt><strong><a name="getallpathsstartingatwithlengthupto" class="item"><strong>GetAllPathsStartingAtWithLengthUpto</strong></a></strong></dt>
|
|
331 <dd>
|
|
332 <div class="OptionsBox">
|
|
333 @Paths = $Graph->GetAllPathsStartingAtWithLengthUpto($StartVertexID,
|
|
334 $Length, [$AllowCycles]);</div>
|
|
335 <p>Returns an array of <em>Path</em> objects starting from a <em>StartVertexID</em> with length upto a
|
|
336 <em>Length</em> with sharing of edges in paths traversed. By default, cycles are included in paths.
|
|
337 A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
338 </dd>
|
|
339 <dt><strong><a name="getallpathswithlength" class="item"><strong>GetAllPathsWithLength</strong></a></strong></dt>
|
|
340 <dd>
|
|
341 <div class="OptionsBox">
|
|
342 $PathsRef = $Graph->GetAllPathsWithLength($Length,
|
|
343 [$AllowCycles]);</div>
|
|
344 <p>Returns a reference to an array containing <strong>Path</strong> objects corresponding to paths with
|
|
345 <em>Length</em> starting from each vertex in graph with sharing of edges in paths traversed.
|
|
346 By default, cycles are included in paths. A path containing a cycle is terminated at a vertex
|
|
347 completing the cycle. Duplicate paths are not removed.</p>
|
|
348 </dd>
|
|
349 <dt><strong><a name="getallpathswithlengthupto" class="item"><strong>GetAllPathsWithLengthUpto</strong></a></strong></dt>
|
|
350 <dd>
|
|
351 <div class="OptionsBox">
|
|
352 $PathsRef = $Graph->GetAllPathsWithLengthUpto($Length,
|
|
353 [$AllowCycles]);</div>
|
|
354 <p>Returns a reference to an array containing <strong>Path</strong> objects corresponding to paths up to
|
|
355 specified <em>Length</em> starting from each vertex in graph with sharing of edges in paths traversed.
|
|
356 By default, cycles are included in paths. A path containing a cycle is terminated at a vertex
|
|
357 completing the cycle. Duplicate paths are not removed.</p>
|
|
358 </dd>
|
|
359 <dt><strong><a name="getcircumference" class="item"><strong>GetCircumference</strong></a></strong></dt>
|
|
360 <dd>
|
|
361 <div class="OptionsBox">
|
|
362 $Circumference = $Graph->GetCircumference();</div>
|
|
363 <p>Returns size of largest cycle in a <em>Graph</em></p>
|
|
364 </dd>
|
|
365 <dt><strong><a name="getconnectedcomponentsvertices" class="item"><strong>GetConnectedComponentsVertices</strong></a></strong></dt>
|
|
366 <dd>
|
|
367 <div class="OptionsBox">
|
|
368 @ConnectedComponents = $Graph->GetConnectedComponentsVertices();</div>
|
|
369 <p>Returns an array <em>ConnectedComponents</em> containing referecens to arrays with vertex
|
|
370 IDs for each component sorted in order of their decreasing size.</p>
|
|
371 </dd>
|
|
372 <dt><strong><a name="getcycles" class="item"><strong>GetCycles</strong></a></strong></dt>
|
|
373 <dd>
|
|
374 <div class="OptionsBox">
|
|
375 @CyclicPaths = $Graphs->GetCycles();</div>
|
|
376 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles
|
|
377 in a <em>Graph</em>.</p>
|
|
378 </dd>
|
|
379 <dt><strong><a name="getcycleswithevensize" class="item"><strong>GetCyclesWithEvenSize</strong></a></strong></dt>
|
|
380 <dd>
|
|
381 <div class="OptionsBox">
|
|
382 @CyclicPaths = $Graph->GetCyclesWithEvenSize();</div>
|
|
383 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
384 even size in a <em>Graph</em>.</p>
|
|
385 </dd>
|
|
386 <dt><strong><a name="getcycleswithoddsize" class="item"><strong>GetCyclesWithOddSize</strong></a></strong></dt>
|
|
387 <dd>
|
|
388 <div class="OptionsBox">
|
|
389 @CyclicPaths = $Graph->GetCyclesWithOddSize();</div>
|
|
390 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
391 odd size in a <em>Graph</em>.</p>
|
|
392 </dd>
|
|
393 <dt><strong><a name="getcycleswithsize" class="item"><strong>GetCyclesWithSize</strong></a></strong></dt>
|
|
394 <dd>
|
|
395 <div class="OptionsBox">
|
|
396 @CyclicPaths = $Graph->GetCyclesWithSize($CycleSize);</div>
|
|
397 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
398 <em>CycleSize</em> in a <em>Graph</em>.</p>
|
|
399 </dd>
|
|
400 <dt><strong><a name="getcycleswithsizegreaterthan" class="item"><strong>GetCyclesWithSizeGreaterThan</strong></a></strong></dt>
|
|
401 <dd>
|
|
402 <div class="OptionsBox">
|
|
403 @CyclicPaths = $Graph->GetCyclesWithSizeGreaterThan($CycleSize);</div>
|
|
404 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
405 size greater than <em>CycleSize</em> in a <em>Graph</em>.</p>
|
|
406 </dd>
|
|
407 <dt><strong><a name="getcycleswithsizelessthan" class="item"><strong>GetCyclesWithSizeLessThan</strong></a></strong></dt>
|
|
408 <dd>
|
|
409 <div class="OptionsBox">
|
|
410 @CyclicPaths = $Graph->GetCyclesWithSizeGreaterThan($CycleSize);</div>
|
|
411 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
412 size less than <em>CycleSize</em> in a <em>Graph</em>.</p>
|
|
413 </dd>
|
|
414 <dt><strong><a name="getdegree" class="item"><strong>GetDegree</strong></a></strong></dt>
|
|
415 <dd>
|
|
416 <div class="OptionsBox">
|
|
417 $Degree = $Graph->GetDegree($VertexID);</div>
|
|
418 <p>Returns <strong>Degree</strong> for <em>VertexID</em> in a <em>Graph</em> corresponding to sum of in and out vertex
|
|
419 degree values.</p>
|
|
420 </dd>
|
|
421 <dt><strong><a name="getdegreematrix" class="item"><strong>GetDegreeMatrix</strong></a></strong></dt>
|
|
422 <dd>
|
|
423 <div class="OptionsBox">
|
|
424 $GraphMatrix = $Graph->GetDegreeMatrix();</div>
|
|
425 <p>Returns degree matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
426 corresponding to graph vertices returned by GetVertices method.</p>
|
|
427 <p>For a simple graph G with n vertices, the degree matrix for G is a n x n square matrix and
|
|
428 its elements Mij are:</p>
|
|
429 <div class="OptionsBox">
|
|
430 . deg(Vi) if i == j and deg(Vi) is the degree of vertex Vi
|
|
431 <br/> . 0 otherwise</div>
|
|
432 </dd>
|
|
433 <dt><strong><a name="getdistancematrix" class="item"><strong>GetDistanceMatrix</strong></a></strong></dt>
|
|
434 <dd>
|
|
435 <div class="OptionsBox">
|
|
436 $GraphMatrix = $Graph->GetDistanceMatrix();</div>
|
|
437 <p>Returns distance matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
438 corresponding to graph vertices returned by GetVertices method.</p>
|
|
439 <p>For a simple graph G with n vertices, the distance matrix for G is a n x n square matrix and
|
|
440 its elements Mij are:</p>
|
|
441 <div class="OptionsBox">
|
|
442 . 0 if i == j
|
|
443 <br/> . d if i != j and d is the shortest distance between vertex Vi and vertex Vj</div>
|
|
444 <p>In the final matrix, value of constant <strong>BigNumber</strong> defined in <strong>Constants.pm</strong> module
|
|
445 corresponds to vertices with no edges.</p>
|
|
446 </dd>
|
|
447 <dt><strong><a name="getedgecycles" class="item"><strong>GetEdgeCycles</strong></a></strong></dt>
|
|
448 <dd>
|
|
449 <div class="OptionsBox">
|
|
450 @CyclicPaths = $Graph->GetEdgeCycles($VertexID1, $VertexID2);</div>
|
|
451 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to all cycles containing
|
|
452 edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
453 </dd>
|
|
454 <dt><strong><a name="getedgecycleswithevensize" class="item"><strong>GetEdgeCyclesWithEvenSize</strong></a></strong></dt>
|
|
455 <dd>
|
|
456 <div class="OptionsBox">
|
|
457 @CyclicPaths = $Graph->GetEdgeCyclesWithEvenSize($VertexID1,
|
|
458 $VertexID2);</div>
|
|
459 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
460 even size containing edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
461 </dd>
|
|
462 <dt><strong><a name="getedgecycleswithoddsize" class="item"><strong>GetEdgeCyclesWithOddSize</strong></a></strong></dt>
|
|
463 <dd>
|
|
464 <div class="OptionsBox">
|
|
465 @CyclicPaths = $Graph->GetEdgeCyclesWithOddSize($VertexID1,
|
|
466 $VertexID2);</div>
|
|
467 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
468 odd size containing edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
469 </dd>
|
|
470 <dt><strong><a name="getedgecycleswithsize" class="item"><strong>GetEdgeCyclesWithSize</strong></a></strong></dt>
|
|
471 <dd>
|
|
472 <div class="OptionsBox">
|
|
473 @CyclicPaths = $Graph->GetEdgeCyclesWithSize($VertexID1, $VertexID2,
|
|
474 $CycleSize);</div>
|
|
475 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
476 size <em>CycleSize</em> containing edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
477 </dd>
|
|
478 <dt><strong><a name="getedgecycleswithsizegreaterthan" class="item"><strong>GetEdgeCyclesWithSizeGreaterThan</strong></a></strong></dt>
|
|
479 <dd>
|
|
480 <div class="OptionsBox">
|
|
481 @CyclicPaths = $Graph->GetEdgeCyclesWithSizeGreaterThan($VertexID1,
|
|
482 $VertexID2, $CycleSize);</div>
|
|
483 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
484 size greater than <em>CycleSize</em> containing edge between <em>VertexID1</em> and <em>VertexID2</em>
|
|
485 in a <em>Graph</em>.</p>
|
|
486 </dd>
|
|
487 <dt><strong><a name="getedgecycleswithsizelessthan" class="item"><strong>GetEdgeCyclesWithSizeLessThan</strong></a></strong></dt>
|
|
488 <dd>
|
|
489 <div class="OptionsBox">
|
|
490 @CyclicPaths = $Graph->GetEdgeCyclesWithSizeLessThan($VertexID1,
|
|
491 $VertexID2, $CycleSize);</div>
|
|
492 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
493 size less than <em>CycleSize</em> containing edge between <em>VertexID1</em> and <em>VertexID2</em>.</p>
|
|
494 </dd>
|
|
495 <dt><strong><a name="getedgeproperties" class="item"><strong>GetEdgeProperties</strong></a></strong></dt>
|
|
496 <dd>
|
|
497 <div class="OptionsBox">
|
|
498 %EdgeProperties = $Graph->GetEdgeProperties($VertexID1, $VertexID2);</div>
|
|
499 <p>Returns a hash <strong>EdgeProperties</strong> containing all <strong>PropertyName</strong> and <strong>PropertyValue</strong>
|
|
500 pairs associated with an edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
501 </dd>
|
|
502 <dt><strong><a name="getedgeproperty" class="item"><strong>GetEdgeProperty</strong></a></strong></dt>
|
|
503 <dd>
|
|
504 <div class="OptionsBox">
|
|
505 $Value = $Graph->GetEdgeProperty($PropertyName, $VertexID1, $VertexID2);</div>
|
|
506 <p>Returns value of <em>PropertyName</em> associated with an edge between <em>VertexID1</em>
|
|
507 and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
508 </dd>
|
|
509 <dt><strong><a name="getedges" class="item"><strong>GetEdges</strong></a></strong></dt>
|
|
510 <dd>
|
|
511 <div class="OptionsBox">
|
|
512 @EdgeVertexIDs = $Graph->GetEdges($VertexID);
|
|
513 <br/> $NumOfEdges = $Graph->GetEdges($VertexID);</div>
|
|
514 <p>Returns an array <em>EdgeVertexIDs</em> with successive pair of IDs corresponding to edges involving
|
|
515 <em>VertexID</em> or number of edges for <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
516 </dd>
|
|
517 <dt><strong><a name="getedgesproperty" class="item"><strong>GetEdgesProperty</strong></a></strong></dt>
|
|
518 <dd>
|
|
519 <div class="OptionsBox">
|
|
520 @PropertyValues = $Graph->GetEdgesProperty($PropertyName, @VertexIDs);</div>
|
|
521 <p>Returns an array <em>PropertyValues</em> containing property values corresponding to
|
|
522 <em>PropertyName</em> associated with edges between successive pair of <em>VertexIDs</em>.</p>
|
|
523 </dd>
|
|
524 <dt><strong><a name="getfusedandnonfusedcycles" class="item"><strong>GetFusedAndNonFusedCycles</strong></a></strong></dt>
|
|
525 <dd>
|
|
526 <div class="OptionsBox">
|
|
527 ($FusedCycleSetsRef, $NonFusedCyclesRef) =
|
|
528 $Graph->GetFusedAndNonFusedCycles();</div>
|
|
529 <p>Returns references to arrays <em>FusedCycleSetsRef</em> and <em>NonFusedCyclesRef</em>
|
|
530 containing references to arrays of cyclic <em>Path</em> objects corresponding to fuses and
|
|
531 non-fused cyclic paths.</p>
|
|
532 </dd>
|
|
533 <dt><strong><a name="getgirth" class="item"><strong>GetGirth</strong></a></strong></dt>
|
|
534 <dd>
|
|
535 <div class="OptionsBox">
|
|
536 $Girth = $Graph->GetGirth();</div>
|
|
537 <p>Returns size of smallest cycle in a <em>Graph</em>.</p>
|
|
538 </dd>
|
|
539 <dt><strong><a name="getgraphproperties" class="item"><strong>GetGraphProperties</strong></a></strong></dt>
|
|
540 <dd>
|
|
541 <div class="OptionsBox">
|
|
542 %GraphProperties = $Graph->GetGraphProperties();</div>
|
|
543 <p>Returns a hash <strong>EdgeProperties</strong> containing all <strong>PropertyName</strong> and <strong>PropertyValue</strong>
|
|
544 pairs associated with graph in a <em>Graph</em>.</p>
|
|
545 </dd>
|
|
546 <dt><strong><a name="getgraphproperty" class="item"><strong>GetGraphProperty</strong></a></strong></dt>
|
|
547 <dd>
|
|
548 <div class="OptionsBox">
|
|
549 $PropertyValue = $Graph->GetGraphProperty($PropertyName);</div>
|
|
550 <p>Returns value of <em>PropertyName</em> associated with graph in a <em>Graph</em>.</p>
|
|
551 </dd>
|
|
552 <dt><strong><a name="getincidencematrix" class="item"><strong>GetIncidenceMatrix</strong></a></strong></dt>
|
|
553 <dd>
|
|
554 <div class="OptionsBox">
|
|
555 $GraphMatrix = $Graph->GetIncidenceMatrix();</div>
|
|
556 <p>Returns incidence matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
557 corresponding to graph vertices returned by GetVertices method.</p>
|
|
558 <p>For a simple graph G with n vertices and e edges, the incidence matrix for G is a n x e matrix
|
|
559 its elements Mij are:</p>
|
|
560 <div class="OptionsBox">
|
|
561 . 1 if vertex Vi and the edge Ej are incident; in other words, Vi and Ej are related
|
|
562 <br/> . 0 otherwise</div>
|
|
563 </dd>
|
|
564 <dt><strong><a name="getisolatedvertices" class="item"><strong>GetIsolatedVertices</strong></a></strong></dt>
|
|
565 <dd>
|
|
566 <div class="OptionsBox">
|
|
567 @VertexIDs = $Graph->GetIsolatedVertices();</div>
|
|
568 <p>Returns an array <em>VertexIDs</em> containing vertices without any edges in <em>Graph</em>.</p>
|
|
569 </dd>
|
|
570 <dt><strong><a name="getkirchhoffmatrix" class="item"><strong>GetKirchhoffMatrix</strong></a></strong></dt>
|
|
571 <dd>
|
|
572 <div class="OptionsBox">
|
|
573 $GraphMatrix = $Graph->GetGetKirchhoffMatrix();</div>
|
|
574 <p>Returns Kirchhoff matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
575 corresponding to graph vertices returned by GetVertices method.</p>
|
|
576 <p><strong>KirchhoffMatrix</strong> is another name for <strong>LaplacianMatrix</strong>.</p>
|
|
577 </dd>
|
|
578 <dt><strong><a name="getlaplacianmatrix" class="item"><strong>GetLaplacianMatrix</strong></a></strong></dt>
|
|
579 <dd>
|
|
580 <div class="OptionsBox">
|
|
581 $GraphMatrix = $Graph->GetLaplacianMatrix();</div>
|
|
582 <p>Returns Laplacian matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
583 corresponding to graph vertices returned by GetVertices method.</p>
|
|
584 <p>For a simple graph G with n vertices, the Laplacian matrix for G is a n x n square matrix and
|
|
585 its elements Mij are:</p>
|
|
586 <div class="OptionsBox">
|
|
587 . deg(Vi) if i == j and deg(Vi) is the degree of vertex Vi
|
|
588 <br/> . -1 if i != j and vertex Vi is adjacent to vertex Vj
|
|
589 <br/> . 0 otherwise</div>
|
|
590 </dd>
|
|
591 <dt><strong><a name="getlargestcycle" class="item"><strong>GetLargestCycle</strong></a></strong></dt>
|
|
592 <dd>
|
|
593 <div class="OptionsBox">
|
|
594 $CyclicPath = $Graph->GetLargestCycle();</div>
|
|
595 <p>Returns a cyclic <em>Path</em> object corresponding to largest cycle in a <em>Graph</em>.</p>
|
|
596 </dd>
|
|
597 <dt><strong><a name="getlargestedgecycle" class="item"><strong>GetLargestEdgeCycle</strong></a></strong></dt>
|
|
598 <dd>
|
|
599 <div class="OptionsBox">
|
|
600 $CyclicPath = $Graph->GetLargestEdgeCycle($VertexID1, $VertexID2);</div>
|
|
601 <p>Returns a cyclic <em>Path</em> object corresponding to largest cycle containing edge between
|
|
602 <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
603 </dd>
|
|
604 <dt><strong><a name="getlargestvertexcycle" class="item"><strong>GetLargestVertexCycle</strong></a></strong></dt>
|
|
605 <dd>
|
|
606 <div class="OptionsBox">
|
|
607 $CyclicPath = $Graph->GetLargestVertexCycle($VertexID);</div>
|
|
608 <p>Returns a cyclic <em>Path</em> object corresponding to largest cycle containing <em>VertexID</em>
|
|
609 in a <em>Graph</em>.</p>
|
|
610 </dd>
|
|
611 <dt><strong><a name="getleafvertices" class="item"><strong>GetLeafVertices</strong></a></strong></dt>
|
|
612 <dd>
|
|
613 <div class="OptionsBox">
|
|
614 @VertexIDs = $Graph->GetLeafVertices();</div>
|
|
615 <p>Returns an array <em>VertexIDs</em> containing vertices with degree of 1 in a <em>Graph</em>.</p>
|
|
616 </dd>
|
|
617 <dt><strong><a name="getmaximumdegree" class="item"><strong>GetMaximumDegree</strong></a></strong></dt>
|
|
618 <dd>
|
|
619 <div class="OptionsBox">
|
|
620 $Degree = $Graph->GetMaximumDegree();</div>
|
|
621 <p>Returns value of maximum vertex degree in a <em>Graph</em>.</p>
|
|
622 </dd>
|
|
623 <dt><strong><a name="getmininumdegree" class="item"><strong>GetMininumDegree</strong></a></strong></dt>
|
|
624 <dd>
|
|
625 <div class="OptionsBox">
|
|
626 $Degree = $Graph->GetMininumDegree();</div>
|
|
627 <p>Returns value of minimum vertex degree in a <em>Graph</em>.</p>
|
|
628 </dd>
|
|
629 <dt><strong><a name="getneighborhoodvertices" class="item"><strong>GetNeighborhoodVertices</strong></a></strong></dt>
|
|
630 <dd>
|
|
631 <div class="OptionsBox">
|
|
632 @VertexNeighborhoods = GetNeighborhoodVertices($StartVertexID);</div>
|
|
633 <p>Returns an array <em>VertexNeighborhoods</em> containing references to arrays corresponding to
|
|
634 neighborhood vertices around a specified <em>StartVertexID</em> at all possible radii levels.</p>
|
|
635 </dd>
|
|
636 <dt><strong><a name="getneighborhoodverticeswithradiusupto" class="item"><strong>GetNeighborhoodVerticesWithRadiusUpto</strong></a></strong></dt>
|
|
637 <dd>
|
|
638 <div class="OptionsBox">
|
|
639 @VertexNeighborhoods = GetNeighborhoodVerticesWithRadiusUpto(
|
|
640 $StartVertexID, $Radius);</div>
|
|
641 <p>Returns an array <em>VertexNeighborhoods</em> containing references to arrays corresponding to
|
|
642 neighborhood vertices around a specified <em>StartVertexID</em> upto specified <em>Radius</em> levels.</p>
|
|
643 </dd>
|
|
644 <dt><strong><a name="getneighborhoodverticeswithsuccessors" class="item"><strong>GetNeighborhoodVerticesWithSuccessors</strong></a></strong></dt>
|
|
645 <dd>
|
|
646 <div class="OptionsBox">
|
|
647 @VertexNeighborhoods = GetNeighborhoodVerticesWithSuccessors(
|
|
648 $StartVertexID);</div>
|
|
649 <p>Returns vertex neighborhoods around a specified <em>StartVertexID</em>, along with their successor
|
|
650 connected vertices, collected at all neighborhood radii as an array <em>VertexNeighborhoods</em>
|
|
651 containing references to arrays with first value corresponding to vertex ID and second
|
|
652 value as reference to an array containing its successor connected vertices.</p>
|
|
653 <p>For a neighborhood vertex at each radius level, the successor connected vertices correspond to the
|
|
654 neighborhood vertices at the next radius level. Consequently, the neighborhood vertices at the last
|
|
655 radius level don't contain any successor vertices which fall outside the range of specified radius.</p>
|
|
656 </dd>
|
|
657 <dt><strong><a name="getneighborhoodverticeswithsuccessorsandradiusupto" class="item"><strong>GetNeighborhoodVerticesWithSuccessorsAndRadiusUpto</strong></a></strong></dt>
|
|
658 <dd>
|
|
659 <div class="OptionsBox">
|
|
660 @VertexNeighborhoods = GetNeighborhoodVerticesWithSuccessors(
|
|
661 $StartVertexID, $Radius);</div>
|
|
662 <p>Returns vertex neighborhoods around a specified <em>StartVertexID</em>, along with their successor
|
|
663 connected vertices, collected with in a specified <em>Radius</em> as an array <em>VertexNeighborhoods</em>
|
|
664 containing references to arrays with first value corresponding to vertex ID and second value
|
|
665 as reference to a list containing its successor connected vertices.</p>
|
|
666 <p>For a neighborhood vertex at each radius level, the successor connected vertices correspond to the
|
|
667 neighborhood vertices at the next radius level. Consequently, the neighborhood vertices at the last
|
|
668 radius level don't contain any successor vertices which fall outside the range of specified radius.</p>
|
|
669 </dd>
|
|
670 <dt><strong><a name="getneighbors" class="item"><strong>GetNeighbors</strong></a></strong></dt>
|
|
671 <dd>
|
|
672 <div class="OptionsBox">
|
|
673 @VertexIDs = $Graph->GetNeighbors($VertexID);
|
|
674 <br/> $NumOfNeighbors = $Graph->GetNeighbors($VertexID);</div>
|
|
675 <p>Returns an array <em>VertexIDs</em> containing vertices connected to <em>VertexID</em> of number of
|
|
676 neighbors of a <em>VertextID</em> in a <em>Graph</em>.</p>
|
|
677 </dd>
|
|
678 <dt><strong><a name="getnormalizedlaplacianmatrix" class="item"><strong>GetNormalizedLaplacianMatrix</strong></a></strong></dt>
|
|
679 <dd>
|
|
680 <div class="OptionsBox">
|
|
681 $GraphMatrix = $Graph->GetNormalizedLaplacianMatrix();</div>
|
|
682 <p>Returns normalized Laplacian matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
683 corresponding to graph vertices returned by GetVertices method.</p>
|
|
684 <p>For a simple graph G with n vertices, the normalized Laplacian matrix L for G is a n x n square
|
|
685 matrix and its elements Lij are:</p>
|
|
686 <div class="OptionsBox">
|
|
687 . 1 if i == j and deg(Vi) != 0
|
|
688 <br/> . -1/SQRT(deg(Vi) * deg(Vj)) if i != j and vertex Vi is adjacent to vertex Vj
|
|
689 <br/> . 0 otherwise</div>
|
|
690 </dd>
|
|
691 <dt><strong><a name="getnumofcycles" class="item"><strong>GetNumOfCycles</strong></a></strong></dt>
|
|
692 <dd>
|
|
693 <div class="OptionsBox">
|
|
694 $NumOfCycles = $Graph->GetNumOfCycles();</div>
|
|
695 <p>Returns number of cycles in a <em>Graph</em>.</p>
|
|
696 </dd>
|
|
697 <dt><strong><a name="getnumofcycleswithevensize" class="item"><strong>GetNumOfCyclesWithEvenSize</strong></a></strong></dt>
|
|
698 <dd>
|
|
699 <div class="OptionsBox">
|
|
700 $NumOfCycles = $Graph->GetNumOfCyclesWithEvenSize();</div>
|
|
701 <p>Returns number of cycles with even size in a <em>Graph</em>.</p>
|
|
702 </dd>
|
|
703 <dt><strong><a name="getnumofcycleswithoddsize" class="item"><strong>GetNumOfCyclesWithOddSize</strong></a></strong></dt>
|
|
704 <dd>
|
|
705 <div class="OptionsBox">
|
|
706 $NumOfCycles = $Graph->GetNumOfCyclesWithOddSize();</div>
|
|
707 <p>Returns number of cycles with odd size in a <em>Graph</em>.</p>
|
|
708 </dd>
|
|
709 <dt><strong><a name="getnumofcycleswithsize" class="item"><strong>GetNumOfCyclesWithSize</strong></a></strong></dt>
|
|
710 <dd>
|
|
711 <div class="OptionsBox">
|
|
712 $NumOfCycles = $Graph->GetNumOfCyclesWithSize($CycleSize);</div>
|
|
713 <p>Returns number of cycles with <em>CyclesSize</em> in a <em>Graph</em>.</p>
|
|
714 </dd>
|
|
715 <dt><strong><a name="getnumofcycleswithsizegreaterthan" class="item"><strong>GetNumOfCyclesWithSizeGreaterThan</strong></a></strong></dt>
|
|
716 <dd>
|
|
717 <div class="OptionsBox">
|
|
718 $NumOfCycles = $Graph->GetNumOfCyclesWithSizeGreaterThan(
|
|
719 $CycleSize);</div>
|
|
720 <p>Returns number of cycles with size greater than <em>CyclesSize</em> in a <em>Graph</em>.</p>
|
|
721 </dd>
|
|
722 <dt><strong><a name="getnumofcycleswithsizelessthan" class="item"><strong>GetNumOfCyclesWithSizeLessThan</strong></a></strong></dt>
|
|
723 <dd>
|
|
724 <div class="OptionsBox">
|
|
725 $NumOfCycles = $Graph->GetNumOfCyclesWithSizeLessThan($CycleSize);</div>
|
|
726 <p>Returns number of cycles with size less than <em>CyclesSize</em> in a <em>Graph</em>.</p>
|
|
727 </dd>
|
|
728 <dt><strong><a name="getnumofedgecycles" class="item"><strong>GetNumOfEdgeCycles</strong></a></strong></dt>
|
|
729 <dd>
|
|
730 <div class="OptionsBox">
|
|
731 $NumOfCycles = $Graph->GetNumOfEdgeCycles($VertexID1, $VertexID2);</div>
|
|
732 <p>Returns number of cycles containing edge between <em>VertexID1</em> and <em>VertexID2</em>
|
|
733 in a <em>Graph</em>.</p>
|
|
734 </dd>
|
|
735 <dt><strong><a name="getnumofedgecycleswithevensize" class="item"><strong>GetNumOfEdgeCyclesWithEvenSize</strong></a></strong></dt>
|
|
736 <dd>
|
|
737 <div class="OptionsBox">
|
|
738 $NumOfCycles = $Graph->GetNumOfEdgeCyclesWithEvenSize($VertexID1,
|
|
739 $VertexID2);</div>
|
|
740 <p>Returns number of cycles containing edge between <em>VertexID1</em> and <em>VertexID2</em> with even
|
|
741 size in a <em>Graph</em>.</p>
|
|
742 </dd>
|
|
743 <dt><strong><a name="getnumofedgecycleswithoddsize" class="item"><strong>GetNumOfEdgeCyclesWithOddSize</strong></a></strong></dt>
|
|
744 <dd>
|
|
745 <div class="OptionsBox">
|
|
746 $NumOfCycles = $Graph->GetNumOfEdgeCyclesWithOddSize($VertexID1,
|
|
747 $VertexID2);</div>
|
|
748 <p>Returns number of cycles containing edge between <em>VertexID1</em> and <em>VertexID2</em> with odd
|
|
749 size in a <em>Graph</em>.</p>
|
|
750 </dd>
|
|
751 <dt><strong><a name="getnumofedgecycleswithsize" class="item"><strong>GetNumOfEdgeCyclesWithSize</strong></a></strong></dt>
|
|
752 <dd>
|
|
753 <div class="OptionsBox">
|
|
754 $NumOfCycles = $Graph->GetNumOfEdgeCyclesWithSize($VertexID1,
|
|
755 $VertexID2, $CycleSize);</div>
|
|
756 <p>Returns number of cycles containing edge between <em>VertexID1</em> and <em>VertexID2</em> with
|
|
757 <em>CycleSize</em> size in a <em>Graph</em>.</p>
|
|
758 </dd>
|
|
759 <dt><strong><a name="getnumofedgecycleswithsizegreaterthan" class="item"><strong>GetNumOfEdgeCyclesWithSizeGreaterThan</strong></a></strong></dt>
|
|
760 <dd>
|
|
761 <div class="OptionsBox">
|
|
762 $NumOfCycles = $Graph->GetNumOfEdgeCyclesWithSizeGreaterThan(
|
|
763 $VertexID1, $VertexID2, $CycleSize);</div>
|
|
764 <p>Returns number of cycles containing edge between <em>VertexID1</em> and <em>VertexID2</em> with
|
|
765 size greater than <em>CycleSize</em> size in a <em>Graph</em>.</p>
|
|
766 </dd>
|
|
767 <dt><strong><a name="getnumofedgecycleswithsizelessthan" class="item"><strong>GetNumOfEdgeCyclesWithSizeLessThan</strong></a></strong></dt>
|
|
768 <dd>
|
|
769 <div class="OptionsBox">
|
|
770 $NumOfCycles = $Graph->GetNumOfEdgeCyclesWithSizeLessThan(
|
|
771 $VertexID1, $VertexID2, $CycleSize);</div>
|
|
772 <p>Returns number of cycles containing edge between <em>VertexID1</em> and <em>VertexID2</em> with
|
|
773 size less than <em>CycleSize</em> size in a <em>Graph</em>.</p>
|
|
774 </dd>
|
|
775 <dt><strong><a name="getnumofvertexcycles" class="item"><strong>GetNumOfVertexCycles</strong></a></strong></dt>
|
|
776 <dd>
|
|
777 <div class="OptionsBox">
|
|
778 $NumOfCycles = $Graph->GetNumOfVertexCycles($VertexID);</div>
|
|
779 <p>Returns number of cycles containing <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
780 </dd>
|
|
781 <dt><strong><a name="getnumofvertexcycleswithevensize" class="item"><strong>GetNumOfVertexCyclesWithEvenSize</strong></a></strong></dt>
|
|
782 <dd>
|
|
783 <div class="OptionsBox">
|
|
784 $NumOfCycles = $Graph->GetNumOfVertexCyclesWithEvenSize($VertexID);</div>
|
|
785 <p>Returns number of cycles containing <em>VertexID</em> with even size in a <em>Graph</em>.</p>
|
|
786 </dd>
|
|
787 <dt><strong><a name="getnumofvertexcycleswithoddsize" class="item"><strong>GetNumOfVertexCyclesWithOddSize</strong></a></strong></dt>
|
|
788 <dd>
|
|
789 <div class="OptionsBox">
|
|
790 $NumOfCycles = $Graph->GetNumOfVertexCyclesWithOddSize($VertexID);</div>
|
|
791 <p>Returns number of cycles containing <em>VertexID</em> with odd size in a <em>Graph</em>.</p>
|
|
792 </dd>
|
|
793 <dt><strong><a name="getnumofvertexcycleswithsize" class="item"><strong>GetNumOfVertexCyclesWithSize</strong></a></strong></dt>
|
|
794 <dd>
|
|
795 <div class="OptionsBox">
|
|
796 $NumOfCycles = $Graph->GetNumOfVertexCyclesWithSize($VertexID);</div>
|
|
797 <p>Returns number of cycles containing <em>VertexID</em> with even size in a <em>Graph</em>.</p>
|
|
798 </dd>
|
|
799 <dt><strong><a name="getnumofvertexcycleswithsizegreaterthan" class="item"><strong>GetNumOfVertexCyclesWithSizeGreaterThan</strong></a></strong></dt>
|
|
800 <dd>
|
|
801 <div class="OptionsBox">
|
|
802 $NumOfCycles = $Graph->GetNumOfVertexCyclesWithSizeGreaterThan(
|
|
803 $VertexID, $CycleSize);</div>
|
|
804 <p>Returns number of cycles containing <em>VertexID</em> with size greater than <em>CycleSize</em>
|
|
805 in a <em>Graph</em>.</p>
|
|
806 </dd>
|
|
807 <dt><strong><a name="getnumofvertexcycleswithsizelessthan" class="item"><strong>GetNumOfVertexCyclesWithSizeLessThan</strong></a></strong></dt>
|
|
808 <dd>
|
|
809 <div class="OptionsBox">
|
|
810 $NumOfCycles = $Graph->GetNumOfVertexCyclesWithSizeLessThan(
|
|
811 $VertexID, $CycleSize);</div>
|
|
812 <p>Returns number of cycles containing <em>VertexID</em> with size less than <em>CycleSize</em>
|
|
813 in a <em>Graph</em>.</p>
|
|
814 </dd>
|
|
815 <dt><strong><a name="getpaths" class="item"><strong>GetPaths</strong></a></strong></dt>
|
|
816 <dd>
|
|
817 <div class="OptionsBox">
|
|
818 $PathsRefs = $Graph->GetPaths([$AllowCycles]);</div>
|
|
819 <p>Returns a reference to an array of <em>Path</em> objects corresponding to paths of all possible
|
|
820 lengths starting from each vertex with no sharing of edges in paths traversed. By default,
|
|
821 cycles are included in paths. A path containing a cycle is terminated at a vertex completing
|
|
822 the cycle.</p>
|
|
823 </dd>
|
|
824 <dt><strong><a name="getpathsbetween" class="item"><strong>GetPathsBetween</strong></a></strong></dt>
|
|
825 <dd>
|
|
826 <div class="OptionsBox">
|
|
827 @Paths = $Graph->GetPathsBetween($StartVertexID, $EndVertexID);</div>
|
|
828 <p>Returns an arrays of <em>Path</em> objects list of paths between <em>StartVertexID</em> and <em>EndVertexID</em>.
|
|
829 For cyclic graphs, the list contains may contain more than one <em>Path</em> object.</p>
|
|
830 </dd>
|
|
831 <dt><strong><a name="getpathsstartingat" class="item"><strong>GetPathsStartingAt</strong></a></strong></dt>
|
|
832 <dd>
|
|
833 <div class="OptionsBox">
|
|
834 @Paths = $Graph->GetPathsStartingAt($StartVertexID, [$AllowCycles]);</div>
|
|
835 <p>Returns an array of <em>Path</em> objects corresponding to all possible lengths starting from a
|
|
836 specified <em>StartVertexID</em> with no sharing of edges in paths traversed. By default, cycles
|
|
837 are included in paths. A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
838 </dd>
|
|
839 <dt><strong><a name="getpathsstartingatwithlength" class="item"><strong>GetPathsStartingAtWithLength</strong></a></strong></dt>
|
|
840 <dd>
|
|
841 <div class="OptionsBox">
|
|
842 @Paths = $Graph->StartingAtWithLength($StartVertexID, $Length,
|
|
843 $AllowCycles);</div>
|
|
844 <p>Returns an array of <em>Path</em> objects corresponding to all paths starting from a specified <em>StartVertexID</em>
|
|
845 with length <em>Length</em> and no sharing of edges in paths traversed. By default, cycles are included in paths.
|
|
846 A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
847 </dd>
|
|
848 <dt><strong><a name="getpathsstartingatwithlengthupto" class="item"><strong>GetPathsStartingAtWithLengthUpto</strong></a></strong></dt>
|
|
849 <dd>
|
|
850 <div class="OptionsBox">
|
|
851 @Paths = $Graph->StartingAtWithLengthUpto($StartVertexID, $Length,
|
|
852 $AllowCycles);</div>
|
|
853 <p>Returns an array of <em>Path</em> objects corresponding to all paths starting from a specified <em>StartVertexID</em>
|
|
854 with length upto <em>Length</em> and no sharing of edges in paths traversed. By default, cycles are included in paths.
|
|
855 A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
856 </dd>
|
|
857 <dt><strong><a name="getpathswithlength" class="item"><strong>GetPathsWithLength</strong></a></strong></dt>
|
|
858 <dd>
|
|
859 <div class="OptionsBox">
|
|
860 @Paths = $Graph->GetPathsWithLength($Length, $AllowCycles);</div>
|
|
861 <p>Returns an array of <em>Path</em> objects corresponding to to paths starting from each vertex in graph
|
|
862 with specified <Length> and no sharing of edges in paths traversed. By default, cycles are included
|
|
863 in paths. A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
864 </dd>
|
|
865 <dt><strong><a name="getpathswithlengthupto" class="item"><strong>GetPathsWithLengthUpto</strong></a></strong></dt>
|
|
866 <dd>
|
|
867 <div class="OptionsBox">
|
|
868 @Paths = $Graph->GetPathsWithLengthUpto($Length, $AllowCycles);</div>
|
|
869 <p>Returns an array of <em>Path</em> objects corresponding to to paths starting from each vertex in graph
|
|
870 with length upto specified <em>Length</em> and no sharing of edges in paths traversed. By default,
|
|
871 cycles are included in paths. A path containing a cycle is terminated at a vertex completing the cycle.</p>
|
|
872 </dd>
|
|
873 <dt><strong><a name="getsiedeladjacencymatrix" class="item"><strong>GetSiedelAdjacencyMatrix</strong></a></strong></dt>
|
|
874 <dd>
|
|
875 <div class="OptionsBox">
|
|
876 $GraphMatrix = $Graph->GetSiedelAdjacencyMatrix();</div>
|
|
877 <p>Returns Siedel admittance matrix for <em>Graph</em> as a <em>GraphMatrix</em> object with row and column indices
|
|
878 corresponding to graph vertices returned by GetVertices method.</p>
|
|
879 <p>For a simple graph G with n vertices, the Siedal adjacency matrix for G is a n x n square matrix and
|
|
880 its elements Mij are:</p>
|
|
881 <div class="OptionsBox">
|
|
882 . 0 if i == j
|
|
883 <br/> . -1 if i != j and vertex Vi is adjacent to vertex Vj
|
|
884 <br/> . 1 if i != j and vertex Vi is not adjacent to vertex Vj</div>
|
|
885 </dd>
|
|
886 <dt><strong><a name="getsizeoflargestcycle" class="item"><strong>GetSizeOfLargestCycle</strong></a></strong></dt>
|
|
887 <dd>
|
|
888 <div class="OptionsBox">
|
|
889 $Size = $Graph->GetSizeOfLargestCycle();</div>
|
|
890 <p>Returns size of the largest cycle in a <em>Graph</em>.</p>
|
|
891 </dd>
|
|
892 <dt><strong><a name="getsizeoflargestedgecycle" class="item"><strong>GetSizeOfLargestEdgeCycle</strong></a></strong></dt>
|
|
893 <dd>
|
|
894 <div class="OptionsBox">
|
|
895 $Size = $Graph->GetSizeOfLargestEdgeCycle($VertexID1, $VertexID2);</div>
|
|
896 <p>Returns size of the largest cycle containing egde between <em>VertextID1</em> and <em>VertexID2</em>
|
|
897 in a <em>Graph</em>.</p>
|
|
898 </dd>
|
|
899 <dt><strong><a name="getsizeoflargestvertexcycle" class="item"><strong>GetSizeOfLargestVertexCycle</strong></a></strong></dt>
|
|
900 <dd>
|
|
901 <div class="OptionsBox">
|
|
902 $Size = $Graph->GetSizeOfLargestVertexCycle($VertexID);</div>
|
|
903 <p>Returns size of the largest cycle containing <em>VertextID</em> in a <em>Graph</em>.</p>
|
|
904 </dd>
|
|
905 <dt><strong><a name="getsizeofsmallestcycle" class="item"><strong>GetSizeOfSmallestCycle</strong></a></strong></dt>
|
|
906 <dd>
|
|
907 <div class="OptionsBox">
|
|
908 $Size = $Graph->GetSizeOfSmallestCycle();</div>
|
|
909 <p>Returns size of the smallest cycle in a <em>Graph</em>.</p>
|
|
910 </dd>
|
|
911 <dt><strong><a name="getsizeofsmallestedgecycle" class="item"><strong>GetSizeOfSmallestEdgeCycle</strong></a></strong></dt>
|
|
912 <dd>
|
|
913 <div class="OptionsBox">
|
|
914 $Size = $Graph->GetSizeOfSmallestEdgeCycle($VertexID1, $VertexID2);</div>
|
|
915 <p>Returns size of the smallest cycle containing egde between <em>VertextID1</em> and <em>VertexID2</em>
|
|
916 in a <em>Graph</em>.</p>
|
|
917 </dd>
|
|
918 <dt><strong><a name="getsizeofsmallestvertexcycle" class="item"><strong>GetSizeOfSmallestVertexCycle</strong></a></strong></dt>
|
|
919 <dd>
|
|
920 <div class="OptionsBox">
|
|
921 $Size = $Graph->GetSizeOfSmallestVertexCycle($VertexID);</div>
|
|
922 <p>Returns size of the smallest cycle containing <em>VertextID</em> in a <em>Graph</em>.</p>
|
|
923 </dd>
|
|
924 <dt><strong><a name="getsmallestcycle" class="item"><strong>GetSmallestCycle</strong></a></strong></dt>
|
|
925 <dd>
|
|
926 <div class="OptionsBox">
|
|
927 $CyclicPath = $Graph->GetSmallestCycle();</div>
|
|
928 <p>Returns a cyclic <em>Path</em> object corresponding to smallest cycle in a <em>Graph</em>.</p>
|
|
929 </dd>
|
|
930 <dt><strong><a name="getsmallestedgecycle" class="item"><strong>GetSmallestEdgeCycle</strong></a></strong></dt>
|
|
931 <dd>
|
|
932 <div class="OptionsBox">
|
|
933 $CyclicPath = $Graph->GetSmallestEdgeCycle($VertexID1, $VertexID2);</div>
|
|
934 <p>Returns a cyclic <em>Path</em> object corresponding to smallest cycle containing edge between
|
|
935 <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
936 </dd>
|
|
937 <dt><strong><a name="getsmallestvertexcycle" class="item"><strong>GetSmallestVertexCycle</strong></a></strong></dt>
|
|
938 <dd>
|
|
939 <div class="OptionsBox">
|
|
940 $CyclicPath = $Graph->GetSmallestVertexCycle($VertexID);</div>
|
|
941 <p>Returns a cyclic <em>Path</em> object corresponding to smallest cycle containing <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
942 </dd>
|
|
943 <dt><strong><a name="gettopologicallysortedvertices" class="item"><strong>GetTopologicallySortedVertices</strong></a></strong></dt>
|
|
944 <dd>
|
|
945 <div class="OptionsBox">
|
|
946 @VertexIDs = $Graph->GetTopologicallySortedVertices(
|
|
947 [$RootVertexID]);</div>
|
|
948 <p>Returns an array of <em>VertexIDs</em> sorted topologically starting from a specified <em>RootVertexID</em> or
|
|
949 from an arbitrary vertex ID.</p>
|
|
950 </dd>
|
|
951 <dt><strong><a name="getvertex" class="item"><strong>GetVertex</strong></a></strong></dt>
|
|
952 <dd>
|
|
953 <div class="OptionsBox">
|
|
954 $VertexValue = $Graph->GetVertex($VertexID);</div>
|
|
955 <p>Returns vartex value for <em>VertexID</em> in a <em>Graph</em>. Vartex IDs and values are equivalent
|
|
956 in the current implementation of <strong>Graph</strong>.</p>
|
|
957 </dd>
|
|
958 <dt><strong><a name="getvertexcycles" class="item"><strong>GetVertexCycles</strong></a></strong></dt>
|
|
959 <dd>
|
|
960 <div class="OptionsBox">
|
|
961 @CyclicPaths = $Graph->GetVertexCycles($VertexID);</div>
|
|
962 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to all cycles containing
|
|
963 <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
964 </dd>
|
|
965 <dt><strong><a name="getvertexcycleswithevensize" class="item"><strong>GetVertexCyclesWithEvenSize</strong></a></strong></dt>
|
|
966 <dd>
|
|
967 <div class="OptionsBox">
|
|
968 @CyclicPaths = $Graph->GetVertexCyclesWithEvenSize($VertexID);</div>
|
|
969 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
970 even size containing <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
971 </dd>
|
|
972 <dt><strong><a name="getvertexcycleswithoddsize" class="item"><strong>GetVertexCyclesWithOddSize</strong></a></strong></dt>
|
|
973 <dd>
|
|
974 <div class="OptionsBox">
|
|
975 @CyclicPaths = $Graph->GetVertexCyclesWithOddSize($VertexID);</div>
|
|
976 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
977 odd size containing <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
978 </dd>
|
|
979 <dt><strong><a name="getvertexcycleswithsize" class="item"><strong>GetVertexCyclesWithSize</strong></a></strong></dt>
|
|
980 <dd>
|
|
981 <div class="OptionsBox">
|
|
982 @CyclicPaths = $Graph->GetVertexCyclesWithSize($VertexID,
|
|
983 $CycleSize);</div>
|
|
984 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
985 size <em>CycleSize</em> containing <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
986 </dd>
|
|
987 <dt><strong><a name="getvertexcycleswithsizegreaterthan" class="item"><strong>GetVertexCyclesWithSizeGreaterThan</strong></a></strong></dt>
|
|
988 <dd>
|
|
989 <div class="OptionsBox">
|
|
990 @CyclicPaths = $Graph->GetVertexCyclesWithSizeGreaterThan($VertexID,
|
|
991 $CycleSize);</div>
|
|
992 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
993 size greater than <em>CycleSize</em> containing <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
994 </dd>
|
|
995 <dt><strong><a name="getvertexcycleswithsizelessthan" class="item"><strong>GetVertexCyclesWithSizeLessThan</strong></a></strong></dt>
|
|
996 <dd>
|
|
997 <div class="OptionsBox">
|
|
998 @CyclicPaths = $Graph->GetVertexCyclesWithSizeLessThan($VertexID,
|
|
999 $CycleSize);</div>
|
|
1000 <p>Returns an array <em>CyclicPaths</em> containing <em>Path</em> objects corresponding to cycles with
|
|
1001 size less than <em>CycleSize</em> containing <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
1002 </dd>
|
|
1003 <dt><strong><a name="getvertexproperties" class="item"><strong>GetVertexProperties</strong></a></strong></dt>
|
|
1004 <dd>
|
|
1005 <div class="OptionsBox">
|
|
1006 %VertexProperties = $Graph->GetVertexProperties($VertexID);</div>
|
|
1007 <p>Returns a hash <strong>VertexProperties</strong> containing all <strong>PropertyName</strong> and <strong>PropertyValue</strong>
|
|
1008 pairs associated with a <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
1009 </dd>
|
|
1010 <dt><strong><a name="getvertexproperty" class="item"><strong>GetVertexProperty</strong></a></strong></dt>
|
|
1011 <dd>
|
|
1012 <div class="OptionsBox">
|
|
1013 $Value = $Graph->GetVertexProperty($PropertyName, $VertexID);</div>
|
|
1014 <p>Returns value of <em>PropertyName</em> associated with a <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
1015 </dd>
|
|
1016 <dt><strong><a name="getvertexwithlargestdegree" class="item"><strong>GetVertexWithLargestDegree</strong></a></strong></dt>
|
|
1017 <dd>
|
|
1018 <div class="OptionsBox">
|
|
1019 $VertexID = $Graph->GetVertexWithLargestDegree();</div>
|
|
1020 <p>Returns <strong>VertexID</strong> with largest degree in a <em>Graph</em>.</p>
|
|
1021 </dd>
|
|
1022 <dt><strong><a name="getvertexwithsmallestdegree" class="item"><strong>GetVertexWithSmallestDegree</strong></a></strong></dt>
|
|
1023 <dd>
|
|
1024 <div class="OptionsBox">
|
|
1025 $VertexID = $Graph->GetVertexWithSmallestDegree();</div>
|
|
1026 <p>Returns <strong>VertexID</strong> with smallest degree in a <em>Graph</em>.</p>
|
|
1027 </dd>
|
|
1028 <dt><strong><a name="getvertices" class="item"><strong>GetVertices</strong></a></strong></dt>
|
|
1029 <dd>
|
|
1030 <div class="OptionsBox">
|
|
1031 @VertexIDs = $Graph->GetVertices();
|
|
1032 <br/> $VertexCount = $Graph->GetVertices();</div>
|
|
1033 <p>Returns an array of <em>VertexIDs</em> corresponding to all vertices in a <em>Graph</em>; in a scalar context,
|
|
1034 number of vertices is returned.</p>
|
|
1035 </dd>
|
|
1036 <dt><strong><a name="getverticesproperty" class="item"><strong>GetVerticesProperty</strong></a></strong></dt>
|
|
1037 <dd>
|
|
1038 <div class="OptionsBox">
|
|
1039 @PropertyValues = $Graph->GetVerticesProperty($PropertyName, @VertexIDs);</div>
|
|
1040 <p>Returns an array <em>PropertyValues</em> containing property values corresponding to
|
|
1041 <em>PropertyName</em> associated with with <em>VertexIDs</em> in a <em>Graph</em>.</p>
|
|
1042 </dd>
|
|
1043 <dt><strong><a name="getverticeswithdegreelessthan" class="item"><strong>GetVerticesWithDegreeLessThan</strong></a></strong></dt>
|
|
1044 <dd>
|
|
1045 <div class="OptionsBox">
|
|
1046 @VertexIDs = $Graph->GetVerticesWithDegreeLessThan($Degree);</div>
|
|
1047 <p>Returns an array of <em>VertexIDs</em> containing vertices with degree less than <em>Degree</em> in
|
|
1048 a <em>Graph</em>.</p>
|
|
1049 </dd>
|
|
1050 <dt><strong><a name="hascycle" class="item"><strong>HasCycle</strong></a></strong></dt>
|
|
1051 <dd>
|
|
1052 <div class="OptionsBox">
|
|
1053 $Status = $Graph->HasCycle(@VertexIDs);</div>
|
|
1054 <p>Returns 1 or 0 based on whether edges between successive pair of <em>VertexIDs</em> including
|
|
1055 an additional edge from the last to first vertex ID exists in a <em>Graph</em>.</p>
|
|
1056 </dd>
|
|
1057 <dt><strong><a name="hasedge" class="item"><strong>HasEdge</strong></a></strong></dt>
|
|
1058 <dd>
|
|
1059 <div class="OptionsBox">
|
|
1060 $Status = $Graph->HasEdge($VertexID1, $VertexID2);</div>
|
|
1061 <p>Returns 1 or 0 based on whether an edge between <em>VertexID1</em> and <em>VertexID2</em> exist in
|
|
1062 a <em>Graph</em>.</p>
|
|
1063 </dd>
|
|
1064 <dt><strong><a name="hasedgeproperty" class="item"><strong>HasEdgeProperty</strong></a></strong></dt>
|
|
1065 <dd>
|
|
1066 <div class="OptionsBox">
|
|
1067 $Status = $Graph->HasEdgeProperty($PropertyName, $VertexID1,
|
|
1068 $VertexID2);</div>
|
|
1069 <p>Returns 1 or 0 based on whether <em>PropertyName</em> has already been associated with an edge
|
|
1070 between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
1071 </dd>
|
|
1072 <dt><strong><a name="hasedges" class="item"><strong>HasEdges</strong></a></strong></dt>
|
|
1073 <dd>
|
|
1074 <div class="OptionsBox">
|
|
1075 @EdgesStatus = $Graph->HasEdges(@VertexIDs);
|
|
1076 <br/> $FoundEdgesCount = $Graph->HasEdges(@VertexIDs);</div>
|
|
1077 <p>Returns an array <em>EdgesStatus</em> containing 1s and 0s corresponding to whether edges between
|
|
1078 successive pairs of <em>VertexIDs</em> exist in a <em>Graph</em>. In a scalar context, number of edges found
|
|
1079 is returned.</p>
|
|
1080 </dd>
|
|
1081 <dt><strong><a name="hasfusedcycles" class="item"><strong>HasFusedCycles</strong></a></strong></dt>
|
|
1082 <dd>
|
|
1083 <div class="OptionsBox">
|
|
1084 $Status = $Graph->HasFusedCycles();</div>
|
|
1085 <p>Returns 1 or 0 based on whether any fused cycles exist in a <em>Graph</em>.</p>
|
|
1086 </dd>
|
|
1087 <dt><strong><a name="hasgraphproperty" class="item"><strong>HasGraphProperty</strong></a></strong></dt>
|
|
1088 <dd>
|
|
1089 <div class="OptionsBox">
|
|
1090 $Status = $Graph->HasGraphProperty($PropertyName);</div>
|
|
1091 <p>Returns 1 or 0 based on whether <em>PropertyName</em> has already been associated as a
|
|
1092 graph property as opposed to vertex or edge property in a <em>Graph</em>.</p>
|
|
1093 </dd>
|
|
1094 <dt><strong><a name="haspath" class="item"><strong>HasPath</strong></a></strong></dt>
|
|
1095 <dd>
|
|
1096 <div class="OptionsBox">
|
|
1097 $Status = $Graph->HasPath(@VertexIDs));</div>
|
|
1098 <p>Returns 1 or 0 based on whether edges between all successive pairs of <em>VertexIDs</em> exist in
|
|
1099 a <em>Graph</em>.</p>
|
|
1100 </dd>
|
|
1101 <dt><strong><a name="hasvertex" class="item"><strong>HasVertex</strong></a></strong></dt>
|
|
1102 <dd>
|
|
1103 <div class="OptionsBox">
|
|
1104 $Status = $Graph->HasVertex($VertexID);</div>
|
|
1105 <p>Returns 1 or 0 based on whether <em>VertexID</em> exists in a <em>Graph</em>.</p>
|
|
1106 </dd>
|
|
1107 <dt><strong><a name="hasvertexproperty" class="item"><strong>HasVertexProperty</strong></a></strong></dt>
|
|
1108 <dd>
|
|
1109 <div class="OptionsBox">
|
|
1110 $Status = $Graph->HasGraphProperty($HasVertexProperty, $VertexID);</div>
|
|
1111 <p>Returns 1 or 0 based on whether <em>PropertyName</em> has already been associated with
|
|
1112 <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
1113 </dd>
|
|
1114 <dt><strong><a name="hasvertices" class="item"><strong>HasVertices</strong></a></strong></dt>
|
|
1115 <dd>
|
|
1116 <div class="OptionsBox">
|
|
1117 @VerticesStatus = $Graph->HasVertices(@VertexIDs);
|
|
1118 <br/> $VerticesFoundCount = $Graph->HasVertices(@VertexIDs);</div>
|
|
1119 <p>Returns an array <em></em> containing 1s and 0s corresponding to whether <em>VertexIDs</em> exist in a
|
|
1120 <em>Graph</em>. In a scalar context, number of vertices found is returned.</p>
|
|
1121 </dd>
|
|
1122 <dt><strong><a name="isacyclic" class="item"><strong>IsAcyclic</strong></a></strong></dt>
|
|
1123 <dd>
|
|
1124 <div class="OptionsBox">
|
|
1125 $Status = $Graph->IsAcyclic();</div>
|
|
1126 <p>Returns 0 or 1 based on whether a cycle exist in a <em>Graph</em>.</p>
|
|
1127 </dd>
|
|
1128 <dt><strong><a name="isacyclicedge" class="item"><strong>IsAcyclicEdge</strong></a></strong></dt>
|
|
1129 <dd>
|
|
1130 <div class="OptionsBox">
|
|
1131 $Status = $Graph->IsAcyclicEdge($VertexID1, $VertexID2);</div>
|
|
1132 <p>Returns 0 or 1 based on whether a cycle containing an edge between <em>VertexID1</em> and
|
|
1133 <em>VertexID2</em> exists in a <em>Graph</em>.</p>
|
|
1134 </dd>
|
|
1135 <dt><strong><a name="isacyclicvertex" class="item"><strong>IsAcyclicVertex</strong></a></strong></dt>
|
|
1136 <dd>
|
|
1137 <div class="OptionsBox">
|
|
1138 $Status = $Graph->IsAcyclicVertex($VertexID1);</div>
|
|
1139 <p>Returns 0 or 1 based on whether a cycle containing a <em>VertexID</em> exists in a <em>Graph</em>.</p>
|
|
1140 </dd>
|
|
1141 <dt><strong><a name="iscyclic" class="item"><strong>IsCyclic</strong></a></strong></dt>
|
|
1142 <dd>
|
|
1143 <div class="OptionsBox">
|
|
1144 $Status = $Graph->IsCyclic();</div>
|
|
1145 <p>Returns 1 or 0 based on whether a cycle exist in a <em>Graph</em>.</p>
|
|
1146 </dd>
|
|
1147 <dt><strong><a name="iscyclicedge" class="item"><strong>IsCyclicEdge</strong></a></strong></dt>
|
|
1148 <dd>
|
|
1149 <div class="OptionsBox">
|
|
1150 $Status = $Graph->IsCyclicEdge($VertexID1, $VertexID2);</div>
|
|
1151 <p>Returns 1 or 0 based on whether a cycle containing an edge between <em>VertexID1</em> and
|
|
1152 <em>VertexID2</em> exists in a <em>Graph</em>.</p>
|
|
1153 </dd>
|
|
1154 <dt><strong><a name="iscyclicvertex" class="item"><strong>IsCyclicVertex</strong></a></strong></dt>
|
|
1155 <dd>
|
|
1156 <div class="OptionsBox">
|
|
1157 $Status = $Graph->IsCyclicVertex($VertexID1);</div>
|
|
1158 <p>Returns 1 or 0 based on whether a cycle containing a <em>VertexID</em> exists in a <em>Graph</em>.</p>
|
|
1159 </dd>
|
|
1160 <dt><strong><a name="isgraph" class="item"><strong>IsGraph</strong></a></strong></dt>
|
|
1161 <dd>
|
|
1162 <div class="OptionsBox">
|
|
1163 $Status = Graph::IsGraph($Object);</div>
|
|
1164 <p>Returns 1 or 0 based on whether <em>Object</em> is a <strong>Graph</strong> object.</p>
|
|
1165 </dd>
|
|
1166 <dt><strong><a name="isisolatedvertex" class="item"><strong>IsIsolatedVertex</strong></a></strong></dt>
|
|
1167 <dd>
|
|
1168 <div class="OptionsBox">
|
|
1169 $Status = $Graph->IsIsolatedVertex($VertexID);</div>
|
|
1170 <p>Returns 1 or 0 based on whether <em>VertexID</em> is an isolated vertex in a <em>Graph</em>. A vertex
|
|
1171 with zero as its degree value is considered an isolated vertex.</p>
|
|
1172 </dd>
|
|
1173 <dt><strong><a name="isleafvertex" class="item"><strong>IsLeafVertex</strong></a></strong></dt>
|
|
1174 <dd>
|
|
1175 <div class="OptionsBox">
|
|
1176 $Status = $Graph->IsLeafVertex($VertexID);</div>
|
|
1177 <p>Returns 1 or 0 based on whether <em>VertexID</em> is an isolated vertex in a <em>Graph</em>. A vertex
|
|
1178 with one as its degree value is considered an isolated vertex.</p>
|
|
1179 </dd>
|
|
1180 <dt><strong><a name="isunicyclic" class="item"><strong>IsUnicyclic</strong></a></strong></dt>
|
|
1181 <dd>
|
|
1182 <div class="OptionsBox">
|
|
1183 $Status = $Graph->IsUnicyclic();</div>
|
|
1184 <p>Returns 1 or 0 based on whether only one cycle is present in a <em>Graph</em>.</p>
|
|
1185 </dd>
|
|
1186 <dt><strong><a name="isunicyclicedge" class="item"><strong>IsUnicyclicEdge</strong></a></strong></dt>
|
|
1187 <dd>
|
|
1188 <div class="OptionsBox">
|
|
1189 $Status = $Graph->IsUnicyclicEdge($VertexID1, $VertexID2);</div>
|
|
1190 <p>Returns 1 or 0 based on whether only one cycle contains the edge between <em>VertexID1</em> and
|
|
1191 <em>VertexID2</em> in a <em>Graph</em>.</p>
|
|
1192 </dd>
|
|
1193 <dt><strong><a name="isunicyclicvertex" class="item"><strong>IsUnicyclicVertex</strong></a></strong></dt>
|
|
1194 <dd>
|
|
1195 <div class="OptionsBox">
|
|
1196 $Status = $Graph->IsUnicyclicVertex($VertexID);</div>
|
|
1197 <p>Returns 1 or 0 based on whether only one cycle contains <em>VertexID</em> in a <em>Graph</em>.</p>
|
|
1198 </dd>
|
|
1199 <dt><strong><a name="setactivecyclicpaths" class="item"><strong>SetActiveCyclicPaths</strong></a></strong></dt>
|
|
1200 <dd>
|
|
1201 <div class="OptionsBox">
|
|
1202 $Graph->SetActiveCyclicPaths($CyclicPathsType);</div>
|
|
1203 <p>Sets the type of cyclic paths to use during all methods related to cycles and returns <em>Graph</em>.
|
|
1204 Possible values for cyclic paths: <em>Independent or All</em>.</p>
|
|
1205 </dd>
|
|
1206 <dt><strong><a name="setedgeproperties" class="item"><strong>SetEdgeProperties</strong></a></strong></dt>
|
|
1207 <dd>
|
|
1208 <div class="OptionsBox">
|
|
1209 $Graph->SetEdgeProperties($VertexID1, $VertexID2, @NamesAndValues);</div>
|
|
1210 <p>Associates property names and values corresponding to successive pairs of values in
|
|
1211 <em>NamesAndValues</em> to an edge between <em>VertexID1</em> and <em>VertexID2</em> in a <em>Graph</em>
|
|
1212 and returns <em>Graph</em>.</p>
|
|
1213 </dd>
|
|
1214 <dt><strong><a name="setedgeproperty" class="item"><strong>SetEdgeProperty</strong></a></strong></dt>
|
|
1215 <dd>
|
|
1216 <div class="OptionsBox">
|
|
1217 $Graph->SetEdgeProperty($Name, $Value, $VertexID1, $VertexID2);</div>
|
|
1218 <p>Associates property <em>Name</em> and <em>Value</em> to an edge between <em>VertexID1</em> and <em>VertexID2</em>
|
|
1219 in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
1220 </dd>
|
|
1221 <dt><strong><a name="setedgesproperty" class="item"><strong>SetEdgesProperty</strong></a></strong></dt>
|
|
1222 <dd>
|
|
1223 <div class="OptionsBox">
|
|
1224 $Graph->SetEdgesProperty($Name, @ValuesAndVertexIDs);</div>
|
|
1225 <p>Associates a same property <em>Name</em> but different <em>Values</em> for different edges specified using
|
|
1226 triplets of <em>PropertyValue, $VertexID1, $VertexID2</em> via <em>ValuesAndVertexIDs</em> in a <em>graph</em>.</p>
|
|
1227 </dd>
|
|
1228 <dt><strong><a name="setgraphproperties" class="item"><strong>SetGraphProperties</strong></a></strong></dt>
|
|
1229 <dd>
|
|
1230 <div class="OptionsBox">
|
|
1231 $Graph->SetGraphProperties(%NamesAndValues);</div>
|
|
1232 <p>Associates property names and values <em>NamesAndValues</em> hash to graph as opposed to vertex
|
|
1233 or edge and returns <em>Graph</em>.</p>
|
|
1234 </dd>
|
|
1235 <dt><strong><a name="setgraphproperty" class="item"><strong>SetGraphProperty</strong></a></strong></dt>
|
|
1236 <dd>
|
|
1237 <div class="OptionsBox">
|
|
1238 $Graph->SetGraphProperty($Name, $Value);</div>
|
|
1239 <p>Associates property <em>Name</em> and <em>Value</em> to graph as opposed to vertex
|
|
1240 or edge and returns <em>Graph</em>.</p>
|
|
1241 </dd>
|
|
1242 <dt><strong><a name="setvertexproperties" class="item"><strong>SetVertexProperties</strong></a></strong></dt>
|
|
1243 <dd>
|
|
1244 <div class="OptionsBox">
|
|
1245 $Graph->SetVertexProperties($VertexID, @NamesAndValues);</div>
|
|
1246 <p>Associates property names and values corresponding to successive pairs of values in
|
|
1247 <em>NamesAndValues</em> to <em>VertexID</em> in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
1248 </dd>
|
|
1249 <dt><strong><a name="setvertexproperty" class="item"><strong>SetVertexProperty</strong></a></strong></dt>
|
|
1250 <dd>
|
|
1251 <div class="OptionsBox">
|
|
1252 $Graph->SetVertexProperty($Name, $Value, $VertexID);</div>
|
|
1253 <p>Associates property <em>Name</em> and <em>Value</em> to <em>VertexID</em> in a <em>Graph</em> and returns <em>Graph</em>.</p>
|
|
1254 </dd>
|
|
1255 <dt><strong><a name="setverticesproperty" class="item"><strong>SetVerticesProperty</strong></a></strong></dt>
|
|
1256 <dd>
|
|
1257 <div class="OptionsBox">
|
|
1258 $Graph->SetVerticesProperty($Name, @ValuesAndVertexIDs));</div>
|
|
1259 <p>Associates a same property <em>Name</em> but different <em>Values</em> for different vertices specified using
|
|
1260 doublets of <em>PropertyValue, $VertexID</em> via <em>ValuesAndVertexIDs</em> in a <em>graph</em>.</p>
|
|
1261 </dd>
|
|
1262 <dt><strong><a name="stringifyedgesproperties" class="item"><strong>StringifyEdgesProperties</strong></a></strong></dt>
|
|
1263 <dd>
|
|
1264 <div class="OptionsBox">
|
|
1265 $String = $Graph->StringifyEdgesProperties();</div>
|
|
1266 <p>Returns a string containing information about properties associated with all edges in a <em>Graph</em> object.</p>
|
|
1267 </dd>
|
|
1268 <dt><strong><a name="stringifygraph" class="item"><strong>StringifyGraph</strong></a></strong></dt>
|
|
1269 <dd>
|
|
1270 <div class="OptionsBox">
|
|
1271 $String = $Graph->StringifyGraph();</div>
|
|
1272 <p>Returns a string containing information about <em>Graph</em> object.</p>
|
|
1273 </dd>
|
|
1274 <dt><strong><a name="stringifygraphproperties" class="item"><strong>StringifyGraphProperties</strong></a></strong></dt>
|
|
1275 <dd>
|
|
1276 <div class="OptionsBox">
|
|
1277 $String = $Graph->StringifyGraphProperties();</div>
|
|
1278 <p>Returns a string containing information about properties associated with graph as opposed to vertex.
|
|
1279 or an edge in a <em>Graph</em> object</p>
|
|
1280 </dd>
|
|
1281 <dt><strong><a name="stringifyproperties" class="item"><strong>StringifyProperties</strong></a></strong></dt>
|
|
1282 <dd>
|
|
1283 <div class="OptionsBox">
|
|
1284 $String = $Graph->StringifyProperties();</div>
|
|
1285 <p>Returns a string containing information about properties associated with graph, vertices, and edges in
|
|
1286 a <em>Graph</em> object.</p>
|
|
1287 </dd>
|
|
1288 <dt><strong><a name="stringifyverticesandedges" class="item"><strong>StringifyVerticesAndEdges</strong></a></strong></dt>
|
|
1289 <dd>
|
|
1290 <div class="OptionsBox">
|
|
1291 $String = $Graph->StringifyVerticesAndEdges();</div>
|
|
1292 <p>Returns a string containing information about vertices and edges in a <em>Graph</em> object.</p>
|
|
1293 </dd>
|
|
1294 <dt><strong><a name="stringifyverticesproperties" class="item"><strong>StringifyVerticesProperties</strong></a></strong></dt>
|
|
1295 <dd>
|
|
1296 <div class="OptionsBox">
|
|
1297 $String = $Graph->StringifyVerticesProperties();</div>
|
|
1298 <p>Returns a string containing information about properties associated with vertices a <em>Graph</em> object.</p>
|
|
1299 </dd>
|
|
1300 <dt><strong><a name="updateedgeproperty" class="item"><strong>UpdateEdgeProperty</strong></a></strong></dt>
|
|
1301 <dd>
|
|
1302 <div class="OptionsBox">
|
|
1303 $Graph->UpdateEdgeProperty($Name, $Value, $VertexID1, $VertexID2);</div>
|
|
1304 <p>Updates property <em>Value</em> for <em>Name</em> associated with an edge between <em>VertexID1</em> and
|
|
1305 <em>VertexID1</em> and returns <em>Graph</em>.</p>
|
|
1306 </dd>
|
|
1307 <dt><strong><a name="updatevertexproperty" class="item"><strong>UpdateVertexProperty</strong></a></strong></dt>
|
|
1308 <dd>
|
|
1309 <div class="OptionsBox">
|
|
1310 $Graph->UpdateVertexProperty($Name, $Value, $VertexID);</div>
|
|
1311 <p>Updates property <em>Value</em> for <em>Name</em> associated with <em>VertexID</em> and returns <em>Graph</em>.</p>
|
|
1312 </dd>
|
|
1313 </dl>
|
|
1314 <p>
|
|
1315 </p>
|
|
1316 <h2>AUTHOR</h2>
|
|
1317 <p><a href="mailto:msud@san.rr.com">Manish Sud</a></p>
|
|
1318 <p>
|
|
1319 </p>
|
|
1320 <h2>SEE ALSO</h2>
|
|
1321 <p><a href="./CyclesDetection.html">CyclesDetection.pm</a>, <a href="./Path.html">Path.pm</a>, <a href="./PathGraph.html">PathGraph.pm</a>, <a href="./PathsTraversal.html">PathsTraversal.pm</a>
|
|
1322 </p>
|
|
1323 <p>
|
|
1324 </p>
|
|
1325 <h2>COPYRIGHT</h2>
|
|
1326 <p>Copyright (C) 2015 Manish Sud. All rights reserved.</p>
|
|
1327 <p>This file is part of MayaChemTools.</p>
|
|
1328 <p>MayaChemTools is free software; you can redistribute it and/or modify it under
|
|
1329 the terms of the GNU Lesser General Public License as published by the Free
|
|
1330 Software Foundation; either version 3 of the License, or (at your option)
|
|
1331 any later version.</p>
|
|
1332 <p> </p><p> </p><div class="DocNav">
|
|
1333 <table width="100%" border=0 cellpadding=0 cellspacing=2>
|
|
1334 <tr align="left" valign="top"><td width="33%" align="left"><a href="./PathsTraversal.html" title="PathsTraversal.html">Previous</a> <a href="./index.html" title="Table of Contents">TOC</a> <a href="./HTMLUtil.html" title="HTMLUtil.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>Graph.pm</strong></td></tr>
|
|
1335 </table>
|
|
1336 </div>
|
|
1337 <br />
|
|
1338 <center>
|
|
1339 <img src="../../images/h2o2.png">
|
|
1340 </center>
|
|
1341 </body>
|
|
1342 </html>
|