annotate mayachemtool/mayachemtools/docs/modules/txt/PathGraph.txt @ 0:68300206e90d draft default tip

Uploaded
author deepakjadmin
date Thu, 05 Nov 2015 02:41:30 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
1 NAME
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
2 PathGraph
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
3
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
4 SYNOPSIS
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
5 use Graph::PathGraph;
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
6
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
7 use Graph::PathGraph qw(:all);
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
8
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
9 DESCRIPTION
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
10 PathGraph class provides the following methods:
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
11
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
12 new, CollapseVertexAndCollectCyclicPaths,
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
13 DeleteVerticesWithDegreeLessThan, GetCyclicPaths, GetPaths, IsPathGraph,
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
14 StringifyPathGraph
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
15
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
16 PathGraph class is derived from *Graph* class.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
17
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
18 METHODS
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
19 new
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
20 $NewPathGraph = new Graph::PathGraph($Graph);
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
21
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
22 Using specified *Graph*, new method creates a new PathGraph object
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
23 and returns newly created PathGraph object.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
24
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
25 *Graph* is converted into a PathGraph by copying all its vertices
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
26 and edges without any associated properties data and associating a
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
27 *Path* object to each edge containing edge vertex IDs as intial
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
28 path.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
29
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
30 CollapseVertexAndCollectCyclicPaths
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
31 $PathGraph->CollapseVertexAndCollectCyclicPaths($VertexID);
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
32
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
33 Collapses paths around a *VertexID* by updating paths around the
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
34 vertex [Ref 31] and associating any resulting cyclic paths to graph
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
35 as CyclicPaths property name. And returns *PathGraph*.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
36
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
37 DeleteVerticesWithDegreeLessThan
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
38 $Return = $PathGraph->DeleteVerticesWithDegreeLessThan($Degree);
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
39
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
40 Deletes vertices with degree less than *Degree* from *PathGraph* and
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
41 returns *PathGraph*.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
42
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
43 GetCyclicPaths
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
44 @CyclicPaths = $PathGraph->GetCyclicPaths();
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
45 $NumOfPaths = $PathGraph->GetCyclicPaths();
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
46
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
47 Returns an array of cyclic *Paths* associated with edges in
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
48 *PathGraph*. In scalar context, number of cyclic paths is returned.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
49
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
50 GetPaths
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
51 @Paths = $PathGraph->GetPaths();
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
52 $NumOfPaths = $PathGraph->GetPaths();
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
53
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
54 Returns an array of *Paths* associated with edges in *PathGraph*. In
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
55 scalar context, number of paths is returned.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
56
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
57 IsPathGraph
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
58 $Status = Graph::PathGraph::IsPathGraph($Object);
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
59
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
60 Returns 1 or 0 based on whether *Object* is a PathGraph object.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
61
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
62 StringifyPathGraph
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
63 $String = $PathGraph->StringifyPathGraph();
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
64
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
65 Returns a string containing information about traversed paths in
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
66 *PathGraph* object.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
67
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
68 AUTHOR
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
69 Manish Sud <msud@san.rr.com>
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
70
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
71 SEE ALSO
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
72 Graph.pm, Path.pm
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
73
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
74 COPYRIGHT
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
75 Copyright (C) 2015 Manish Sud. All rights reserved.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
76
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
77 This file is part of MayaChemTools.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
78
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
79 MayaChemTools is free software; you can redistribute it and/or modify it
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
80 under the terms of the GNU Lesser General Public License as published by
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
81 the Free Software Foundation; either version 3 of the License, or (at
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
82 your option) any later version.
68300206e90d Uploaded
deepakjadmin
parents:
diff changeset
83